2016-04-07 22:34:52 +02:00
# micro:bit target for PXT
2016-03-10 23:21:48 +01:00
2017-03-08 14:01:11 +01:00
This target allow 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
2016-10-20 01:49:05 +02:00
* [Try it live ](https://pxt.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
All issue tracking for this repo happens at https://github.com/Microsoft/pxt, see you there!
2016-05-19 19:34:24 +02:00
## Local server
2016-07-27 22:15:30 +02:00
The local server allows to run the editor and the documentation from your computer.
2016-05-19 19:34:24 +02:00
### Setup
2016-03-10 23:26:59 +01:00
2016-05-18 18:18:14 +02:00
The following commands are a 1-time setup after synching the repo on your machine.
2016-11-07 22:26:19 +01:00
* See requirements for [pxt ](https://github.com/Microsoft/pxt )
2016-07-27 22:48:57 +02:00
* [clone this repo ](https://help.github.com/articles/cloning-a-repository/ ) to your computer and go in the project folder
```
git clone https://github.com/microsoft/pxt-microbit
cd pxt-microbit
```
2016-07-27 22:28:57 +02:00
* install the PXT command line (add ``sudo`` for Mac/Linux shells).
2016-05-18 18:18:14 +02:00
```
npm install -g pxt
```
* install the dependencies
```
npm install
```
2016-05-19 19:34:24 +02:00
### Running
2016-06-06 19:14:56 +02:00
Run this command to open a local web server (add ``sudo`` for Mac/Linux shells)
2016-05-18 18:18:14 +02:00
```
pxt serve
```
2016-05-27 06:38:11 +02: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-06-06 19:14:56 +02:00
If you need modify the `.cpp` files, turn on yotta compilation with the ``-yt`` flag (add ``sudo`` for Mac/Linux shells):
2016-05-27 06:38:11 +02:00
```
pxt serve -yt
```
2016-07-27 22:28:57 +02:00
## Updates
To update your PXT version and make sure you're running the latest tools, run (add ``sudo`` for Mac/Linux shells)
2016-05-19 19:34:24 +02:00
```
2016-06-06 19:14:56 +02:00
pxt update
2016-05-19 19:34:24 +02:00
```
2016-05-18 18:18:14 +02:00
More instructions at https://github.com/Microsoft/pxt#running-a-target-from-localhost
2016-04-08 05:48:00 +02:00
2016-07-28 12:47:45 +02:00
## Testing
The build automatically runs the following:
* make sure the built-in packages compile
* `pxt run` in `libs/lang-test*` - this will run the test in command line runner;
there is a number of asserts in both of these
* `pxt testdir` in `tests` - this makes sure all the files compile and generates .hex files
* run the TD->TS converter on a number of test scripts from `microbit.co.uk` and make sure the results compile
To test something on the device:
* do a `pxt deploy` in `libs/lang-test*` - they should show `1` or `2` on the screen (and not unhappy face)
* run `pxt testdir` in `tests` and deploy some of the hex files from `tests/built`
The `lang-test0` source comes from the `pxt-core` package. It's also tested with `pxt run` there.
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.