2016-04-07 22:34:52 +02:00
# micro:bit target for PXT
2016-03-10 23:21:48 +01:00
2017-10-16 07:15:43 +02:00
This target allows you to program a [BBC micro:bit ](https://microbit.org/ ) using
2016-05-27 06:38:11 +02:00
PXT ([Microsoft Programming Experience Toolkit](https://github.com/Microsoft/pxt)).
2016-03-10 23:21:48 +01:00
2017-10-16 07:15:43 +02:00
* [Try it live ](https://makecode.microbit.org )
2016-05-11 06:43:12 +02:00
2016-04-07 22:33:55 +02:00
[![Build Status ](https://travis-ci.org/Microsoft/pxt-microbit.svg?branch=master )](https://travis-ci.org/Microsoft/pxt-microbit)
2016-03-11 06:11:16 +01:00
2016-12-07 06:51:51 +01:00
## Issue tracking
2018-02-15 18:33:35 +01:00
Please add an issue if you discover an (unreported) bug.
2016-12-07 06:51:51 +01:00
2016-05-19 19:34:24 +02:00
## Local server
2017-10-16 07:15:43 +02:00
The local server lets you to run the editor and serve the documentation from your own computer.
2016-07-27 22:15:30 +02:00
2018-02-28 01:02:58 +01:00
### Setup
This section explains how to setup your development environment for pxt-microbit, whether that be to run a copy locally or to make source changes.
2018-05-29 05:12:59 +02:00
Note that pxt-microbit can not be run without its main dependancy, [pxt ](https://github.com/Microsoft/pxt ). Below explains how to setup both.
2016-03-10 23:26:59 +01:00
2017-10-16 07:15:43 +02:00
The following commands perform a one-time setup after synching the repo on your machine.
2018-05-29 05:12:59 +02:00
* Note for any editing of the `.cpp` files, Yotta must be installed. To do so, follow the instructions on [their site ](http://docs.yottabuild.org/ ).
2018-02-28 01:02:58 +01:00
* Install node.js 8.9.4 or higher.
* Install requirements for [pxt ](https://github.com/Microsoft/pxt ). Note the v0 branch must be used for pxt-microbit (add ``sudo`` for Mac/Linux shells).
2016-05-18 18:18:14 +02:00
```
2018-02-28 01:02:58 +01:00
npm install -g jake
npm install -g typings
2016-05-18 18:18:14 +02:00
```
2018-02-24 02:20:31 +01:00
2018-02-28 01:02:58 +01:00
* [Clone the pxt repository ](https://help.github.com/articles/cloning-a-repository/ ) and set it to the v0 branch.
2016-05-27 06:38:11 +02:00
```
2018-02-28 01:02:58 +01:00
git clone https://github.com/microsoft/pxt
cd pxt
git checkout v0
2016-05-27 06:38:11 +02:00
```
2018-02-28 01:02:58 +01:00
* Install the pxt dependencies.
2016-05-19 19:34:24 +02:00
```
2018-02-28 01:02:58 +01:00
npm install
typings install
jake
cd ../
2016-05-19 19:34:24 +02:00
```
2016-05-18 18:18:14 +02:00
2018-02-28 01:02:58 +01:00
* [Clone this repo ](https://help.github.com/articles/cloning-a-repository/ ) to your computer.
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
git clone https://github.com/microsoft/pxt-microbit
cd pxt-microbit
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
* install the PXT command line (add ``sudo`` for Mac/Linux shells).
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
npm install -g pxt
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
* install the dependencies
2018-02-24 02:20:31 +01:00
```
npm install
2018-02-28 01:02:58 +01:00
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
* Link pxt-microbit back to base pxt repo.
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
npm link ../pxt
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
Note the above command assumes the folder structure of
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
makecode
|
-----------------
| |
pxt pxt-microbit
```
### Running
Run this command from inside pxt-microbit to open a local web server (add ``sudo`` for Mac/Linux shells)
```
pxt serve --cloud
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
If the local server opens in the wrong browser, make sure to copy the URL containing the local token.
Otherwise, the editor will not be able to load the projects.
2016-07-28 12:47:45 +02:00
2018-02-28 01:02:58 +01:00
If you need modify the `.cpp` files (and have installed yotta), enable yotta compilation by removing the ```--cloud``` flag (add ``sudo`` for Mac/Linux shells):
2018-02-24 02:20:31 +01:00
```
pxt serve
```
2018-02-28 01:02:58 +01:00
### Updates
To update your PXT version and make sure you're running the latest tools, run (add ``sudo`` for Mac/Linux shells):
2018-02-24 02:20:31 +01:00
```
2018-02-28 01:02:58 +01:00
pxt update
2018-02-24 02:20:31 +01:00
```
2016-07-28 12:47:45 +02:00
2018-02-28 01:02:58 +01:00
More instructions are at https://github.com/Microsoft/pxt#running-a-target-from-localhost
2017-07-18 20:05:28 +02:00
## Repos
2017-10-16 07:15:43 +02:00
The pxt-microbit target depends on several other repos. The main ones are:
2017-07-18 20:05:28 +02:00
- https://github.com/Microsoft/pxt, the PXT framework
- https://github.com/lancaster-university/microbit, basic wrapper around the DAL
- https://github.com/lancaster-university/microbit-dal
2018-02-24 04:52:11 +01:00
## History
2017-08-02 20:24:33 +02:00
2018-02-24 04:52:11 +01:00
See the [MakeCode blog ](https://makecode.com/blog ).
2017-07-18 20:05:28 +02:00
2016-06-21 22:17:42 +02:00
## Code of Conduct
This project has adopted the [Microsoft Open Source Code of Conduct ](https://opensource.microsoft.com/codeofconduct/ ). For more information see the [Code of Conduct FAQ ](https://opensource.microsoft.com/codeofconduct/faq/ ) or contact [opencode@microsoft.com ](mailto:opencode@microsoft.com ) with any additional questions or comments.