From 45d4caf595ad8b0293b166e70d84efe1ab143d3f Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Fri, 8 Jul 2016 11:46:51 -0700 Subject: [PATCH 01/11] Rewrote/expanded serial topic --- docs/reference/serial/write-line.md | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/docs/reference/serial/write-line.md b/docs/reference/serial/write-line.md index b0aca910..d6c10912 100644 --- a/docs/reference/serial/write-line.md +++ b/docs/reference/serial/write-line.md @@ -1,14 +1,32 @@ -# Write Line +# Serial Write Line -Writes a string and a new line character (`\r\n`) to [serial](/device/serial). +Write a string to the [serial](/device/serial) port and start a new line of text +by writing `\r\n`. ```sig serial.writeLine(""); ``` +### Parameters + +* `line` is the [string](/reference/types/string) to write to the serial port + +### Example + +This program writes the word `BOFFO` to the serial port repeatedly. + +```blocks +basic.forever(() => { + serial.writeLine("BOFFO"); + basic.pause(5000); +}); +``` + ### Example: streaming data -The following example constantly checks the [compass heading](/reference/input/compass-heading) and sends the direction to serial. +This program checks the +[compass heading](/reference/input/compass-heading) and sends the +direction to the serial port repeatedly. ```blocks basic.forever(() => { @@ -26,8 +44,7 @@ basic.forever(() => { } }) ``` - ### See also -[serial](/device/serial), [write value](/reference/serial/write-value) - +[serial](/device/serial), +[serial write value](/reference/serial/write-value) From af91622dda778e7635f31da0bba4d2ad1496ff9d Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Fri, 8 Jul 2016 12:45:31 -0700 Subject: [PATCH 02/11] Wrote new Serial topic --- docs/reference/serial/write-number.md | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 docs/reference/serial/write-number.md diff --git a/docs/reference/serial/write-number.md b/docs/reference/serial/write-number.md new file mode 100644 index 00000000..61ac3eee --- /dev/null +++ b/docs/reference/serial/write-number.md @@ -0,0 +1,28 @@ +# Serial Write Number + +Write a number to the [serial](/device/serial) port. + +```sig +serial.writeNumber(0); +``` + +### Parameters + +* `number` is the [number](/reference/types/number) to write to the serial port + +### Example + +This program repeatedly writes a 10-digit number to the serial port. + +```blocks +basic.forever(() => { + serial.writeNumber(1234567890); + basic.pause(5000); +}); +``` + +### See also + +[serial](/device/serial), +[serial write value](/reference/serial/write-value), +[serial write line](/reference/serial/write-line) From 8751d2aaa1dd4bccaa194cf71641ab2fb9303293 Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Fri, 8 Jul 2016 15:29:14 -0700 Subject: [PATCH 03/11] Rewrote one Serial topic; shifted some material --- docs/reference/serial/write-line.md | 3 ++- docs/reference/serial/write-number.md | 19 ++++++++++++++++--- docs/reference/serial/write-value.md | 25 ++++++++++++------------- 3 files changed, 30 insertions(+), 17 deletions(-) diff --git a/docs/reference/serial/write-line.md b/docs/reference/serial/write-line.md index d6c10912..804e1be7 100644 --- a/docs/reference/serial/write-line.md +++ b/docs/reference/serial/write-line.md @@ -11,7 +11,7 @@ serial.writeLine(""); * `line` is the [string](/reference/types/string) to write to the serial port -### Example +### Example: simple serial This program writes the word `BOFFO` to the serial port repeatedly. @@ -47,4 +47,5 @@ basic.forever(() => { ### See also [serial](/device/serial), +[serial write number](/reference/serial/write-number), [serial write value](/reference/serial/write-value) diff --git a/docs/reference/serial/write-number.md b/docs/reference/serial/write-number.md index 61ac3eee..1affa2f9 100644 --- a/docs/reference/serial/write-number.md +++ b/docs/reference/serial/write-number.md @@ -10,7 +10,7 @@ serial.writeNumber(0); * `number` is the [number](/reference/types/number) to write to the serial port -### Example +### Example: one through ten This program repeatedly writes a 10-digit number to the serial port. @@ -21,8 +21,21 @@ basic.forever(() => { }); ``` +### Example: plot bar graph does serial + +If you use the ``led.plotBarGraph`` function, it writes the number +being plotted to the serial port too. + +```blocks +basic.forever(() => { + led.plotBarGraph(input.lightLevel(), 255) + basic.pause(10000); +}) +``` + ### See also [serial](/device/serial), -[serial write value](/reference/serial/write-value), -[serial write line](/reference/serial/write-line) +[serial write line](/reference/serial/write-line), +[serial write value](/reference/serial/write-value) + diff --git a/docs/reference/serial/write-value.md b/docs/reference/serial/write-value.md index a764ae54..e9a3aaa3 100644 --- a/docs/reference/serial/write-value.md +++ b/docs/reference/serial/write-value.md @@ -1,6 +1,6 @@ # Write Value -Writes name/value pair and a new line character (`\r\n`) to [serial](/device/serial). +Write a name/value pair and a newline character (`\r\n`) to the [serial](/device/serial) port. ```sig serial.writeValue("x", 0); @@ -8,7 +8,8 @@ serial.writeValue("x", 0); ### Example: streaming data -The sample below sends the temperature and light level every 10 seconds. +Every 10 seconds, the example below sends the temperature and light level +to the serial port. ```blocks basic.forever(() => { @@ -18,19 +19,17 @@ basic.forever(() => { }) ``` -### Plot bar graph does serial! +#### ~hint -If you use the `led.plotBarGraph` function, it automatically writes the value to the serial as well. - -```blocks -basic.forever(() => { - led.plotBarGraph(input.lightLevel(), 255) - basic.pause(10000); -}) -``` +The [send value](/reference/radio/send-value) function broadcasts +string/number pairs. You can use a second micro:bit to receive them, +and then send them directly to the serial port with ``write value``. +#### ~ ### See also -[serial](/device/serial), [write line](/reference/serial/write-line) - +[serial](/device/serial), +[serial write line](/reference/serial/write-line), +[serial write number](/reference/serial/write-number), +[send value](/reference/radio/send-value) From 4cc7215d3551ebaa17aa0269c7a5e7ef71e5ddfa Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Fri, 8 Jul 2016 16:34:56 -0700 Subject: [PATCH 04/11] Updated Linux (and Windows) instructions --- docs/device/serial.md | 27 ++++++++++++++++++--------- docs/reference/game/touching.md | 11 ++++++++--- docs/reference/led/stop-animation.md | 16 +++++++++++++++- 3 files changed, 41 insertions(+), 13 deletions(-) diff --git a/docs/device/serial.md b/docs/device/serial.md index 4d5cd48f..f6fecc7a 100644 --- a/docs/device/serial.md +++ b/docs/device/serial.md @@ -33,9 +33,16 @@ If you are using the Google Chrome browser, you can use our extension to get ser ### Windows -You must install a device driver (for the computer to recognize the serial interface of the micro:bit); then, you must also install a terminal emulator (which is going to connect to the micro:bit and read its output). Here's how to do it: +You must install a device driver (for the computer to recognize the +serial interface of the micro:bit); then, you must also install a +terminal emulator (which is going to connect to the micro:bit and read +its output). -* Follow instructions at https://developer.mbed.org/handbook/Windows-serial-configuration in order to install the device driver +* Follow the instructions at + https://developer.mbed.org/handbook/Windows-serial-configuration to + install the device driver. + +* Instructions for installing a terminal emulator are below. #### Windows > Tera Term @@ -66,14 +73,16 @@ If you prefer another terminal emulator (such as [PuTTY](http://www.putty.org/)) ### Linux -(Untested). +* Install the program `screen` if it is not already installed. +* Plug in the micro:bit. +* Open a terminal. +* Find which device node the micro:bit was assigned to with the command `ls /dev/ttyACM*`. +* If it was `/dev/ttyACM0`, type the command `screen /dev/ttyACM0 115200`. If it was some other device node, + use that one in the command instead. **Note:** You may need root access to run `screen` + successfully. You can probably use the command `sudo` like this: `sudo screen /dev/ttyACM0 115200`. +* To exit `screen`, type `Ctrl-A` `Ctrl-D`. -* Plug in the micro:bit -* Open a terminal -* `dmesg | tail` will show you which `/dev/` node the micro:bit was assigned (e.g. `/dev/ttyUSB0`) -* Then, do: `screen /dev/ttyUSB0 115200` (install the `screen` program if you don't have it). To exit, run `Ctrl-A` `Ctrl-D`. - -Alternative programs include minicom, etc. +Alternative programs include `minicom` and so on. ### Mac OS diff --git a/docs/reference/game/touching.md b/docs/reference/game/touching.md index ea526b94..afe6962a 100644 --- a/docs/reference/game/touching.md +++ b/docs/reference/game/touching.md @@ -2,7 +2,12 @@ Reports true if sprite is touching specified sprite +```blocks +let matter = game.createSprite(2, 2); +let antimatter = game.createSprite(2, 2); +if (matter.isTouching(antimatter)) { + basic.pause(500); + basic.clearScreen(); + basic.showString("BOOM!"); +} ``` -export function isTouching(_this: micro_bitSprites.LedSprite, other: micro_bitSprites.LedSprite) : boolean -``` - diff --git a/docs/reference/led/stop-animation.md b/docs/reference/led/stop-animation.md index e07599ae..af7d9d4b 100644 --- a/docs/reference/led/stop-animation.md +++ b/docs/reference/led/stop-animation.md @@ -1,8 +1,22 @@ # Stop Animation -Cancels the current animation and clears other pending animations . +Stop the animation that is playing and any animations that are waiting to +play. ```sig led.stopAnimation() ``` +### Example + +This program... + +```blocks +basic.showString("STOP ME! STOP ME! PLEASE, WON'T SOMEBODY STOP ME?"); +input.onButtonPressed(Button.B, () => { + led.stopAnimation(); +}); +'``` +### See Also + + From c81e56613e8364bcf3aec4e01494c8001e3290dc Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Mon, 11 Jul 2016 14:29:49 +0200 Subject: [PATCH 05/11] Mark microbit DAL config as just defaults --- libs/microbit/pxt.json | 1 + 1 file changed, 1 insertion(+) diff --git a/libs/microbit/pxt.json b/libs/microbit/pxt.json index 9e06c1e9..d45a0a08 100644 --- a/libs/microbit/pxt.json +++ b/libs/microbit/pxt.json @@ -36,6 +36,7 @@ "public": true, "dependencies": {}, "yotta": { + "configIsJustDefaults": true, "config": { "microbit-dal": { "bluetooth": { From 5c0d37d7188d4100ea8a9c6c5481ef2ef985c30e Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Mon, 11 Jul 2016 17:10:00 +0200 Subject: [PATCH 06/11] Bump pxt-core to 0.2.194 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b0da9a68..5d35f724 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,6 @@ "typescript": "^1.8.7" }, "dependencies": { - "pxt-core": "0.2.193" + "pxt-core": "0.2.194" } } From 0d1b91afc39e48a2bb2fa6ff6af9c9b306ffb6f5 Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Mon, 11 Jul 2016 17:10:00 +0200 Subject: [PATCH 07/11] 0.2.186 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5d35f724..ad22fb76 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "pxt-microbit", - "version": "0.2.185", + "version": "0.2.186", "description": "BBC micro:bit target for PXT", "keywords": [ "JavaScript", From a890d2a357a27a93f2cddb6b768d9431f013bde7 Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Mon, 11 Jul 2016 10:58:16 -0700 Subject: [PATCH 08/11] Wrote new Serial topic --- docs/reference/serial/write-string.md | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 docs/reference/serial/write-string.md diff --git a/docs/reference/serial/write-string.md b/docs/reference/serial/write-string.md new file mode 100644 index 00000000..4c673ff4 --- /dev/null +++ b/docs/reference/serial/write-string.md @@ -0,0 +1,31 @@ +# Serial Write String + +Write a string to the [serial](/device/serial) port, +without starting a new line afterward. + +```sig +serial.writeString(""); +``` + +### Parameters + +* `text` is the [string](/reference/types/string) to write to the serial port + +### Example: simple serial + +This program writes the word `JUMBO` to the serial port repeatedly, +without any new lines. + +```blocks +basic.forever(() => { + serial.writeString("JUMBO"); + basic.pause(1000); +}); +``` + +### See also + +[serial](/device/serial), +[serial write line](/reference/serial/write-line), +[serial write number](/reference/serial/write-number), +[serial write value](/reference/serial/write-value) From 01f80b67bca93d70c735f1efe998898b32f49fff Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Mon, 11 Jul 2016 11:13:13 -0700 Subject: [PATCH 09/11] Fix parameters --- docs/reference/serial/write-line.md | 3 ++- docs/reference/serial/write-number.md | 2 +- docs/reference/serial/write-value.md | 8 ++++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docs/reference/serial/write-line.md b/docs/reference/serial/write-line.md index 804e1be7..c9b3171d 100644 --- a/docs/reference/serial/write-line.md +++ b/docs/reference/serial/write-line.md @@ -9,7 +9,7 @@ serial.writeLine(""); ### Parameters -* `line` is the [string](/reference/types/string) to write to the serial port +* `text` is the [string](/reference/types/string) to write to the serial port ### Example: simple serial @@ -48,4 +48,5 @@ basic.forever(() => { [serial](/device/serial), [serial write number](/reference/serial/write-number), +[serial write string](/reference/serial/write-string), [serial write value](/reference/serial/write-value) diff --git a/docs/reference/serial/write-number.md b/docs/reference/serial/write-number.md index 1affa2f9..7e29cfbc 100644 --- a/docs/reference/serial/write-number.md +++ b/docs/reference/serial/write-number.md @@ -8,7 +8,7 @@ serial.writeNumber(0); ### Parameters -* `number` is the [number](/reference/types/number) to write to the serial port +* `value` is the [number](/reference/types/number) to write to the serial port ### Example: one through ten diff --git a/docs/reference/serial/write-value.md b/docs/reference/serial/write-value.md index e9a3aaa3..bdc60607 100644 --- a/docs/reference/serial/write-value.md +++ b/docs/reference/serial/write-value.md @@ -6,6 +6,14 @@ Write a name/value pair and a newline character (`\r\n`) to the [serial](/device serial.writeValue("x", 0); ``` +### Parameters + +* `name` is the [string](/reference/types/string) to write to the serial port +* `value` is the [number](/reference/types/number) to write to the serial port + + + + ### Example: streaming data Every 10 seconds, the example below sends the temperature and light level From 583b08df28fdf52049ac704d965fbcfd054d1078 Mon Sep 17 00:00:00 2001 From: Ron Hale-Evans Date: Mon, 11 Jul 2016 12:54:28 -0700 Subject: [PATCH 10/11] Wrote new Serial topic --- docs/reference/serial/redirect-to.md | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 docs/reference/serial/redirect-to.md diff --git a/docs/reference/serial/redirect-to.md b/docs/reference/serial/redirect-to.md new file mode 100644 index 00000000..0cfb6671 --- /dev/null +++ b/docs/reference/serial/redirect-to.md @@ -0,0 +1,31 @@ +# Serial Redirect To + +Dynamically configure the serial instance to use pins other than +``USBTX`` and ``USBRX``. + +```sig +serial.redirect(SerialPin.P0, SerialPin.P0, BaudRate.BaudRate115200); +``` + +### Parameters + +* ``tx``: the [serial pin](/device/pins) on which to transmit data +* ``rx``: the [serial pin](/device/pins) on which to receive data +* ``rate``: the baud rate at which to transmit and receive data (either `9600` or ``115200``) + +### Example + +When button ``A`` is pressed, the following example reconfigures the +serial instance. The new configuration uses pin ``P1`` to transmit and +``P2`` to receive, at a baud rate of `9600`. + +```blocks +input.onButtonPressed(Button.A, () => { + serial.redirect(SerialPin.P1, SerialPin.P2, BaudRate.BaudRate9600); +}); +``` + +### See also + +[serial](/device/serial) + From 33c60b467b31320a06c55780b12709efc6d9c99d Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Tue, 12 Jul 2016 18:34:21 +0200 Subject: [PATCH 11/11] Add ignore file for ptrcheck --- ptrcheck-ignore | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 ptrcheck-ignore diff --git a/ptrcheck-ignore b/ptrcheck-ignore new file mode 100644 index 00000000..3fd6c12d --- /dev/null +++ b/ptrcheck-ignore @@ -0,0 +1,13 @@ +microbit +microbit-appx +microbit-beta +microbit-git-* +microbit-latest +microbit-logo-svg +microbit-portraitlogo-svg +microbit-splashscreen-svg +microbit-squarelogo-svg +microbit-test +microbit-theme-json +microbit-uploader-exe +microbit-uploader-zip