From 64471a53f98424f231ce986c736bd83df90e8d9b Mon Sep 17 00:00:00 2001 From: Amerlander Date: Fri, 8 May 2020 18:35:38 +0200 Subject: [PATCH] fetch pxt-microbit v2.2.30 (#102) * undo buttonEvent * fetch microbit v2.2.30 Co-authored-by: Amerlander --- .github/lock.yml | 8 +- .gitignore | 3 +- docs/examples/rando.md | 2 +- docs/projects/love-meter.md | 1 - docs/projects/snap-the-dot.md | 26 +- docs/reference/led/plot-bar-graph.md | 9 + docs/static/configurations/chrome-version.png | Bin 0 -> 14661 bytes docs/static/configurations/edge-version.png | Bin 0 -> 4864 bytes .../static/configurations/firefox-version.png | Bin 0 -> 48313 bytes docs/static/configurations/ie-version.png | Bin 0 -> 17710 bytes docs/static/configurations/osx-version.png | Bin 0 -> 131415 bytes docs/static/configurations/safari-version.png | Bin 0 -> 44853 bytes .../static/configurations/windows-version.png | Bin 0 -> 84192 bytes libs/core/_locales/core-jsdoc-strings.json | 11 +- libs/core/_locales/core-strings.json | 8 +- libs/core/control.cpp | 26 + libs/core/enums.d.ts | 4 +- libs/core/input.cpp | 24 +- libs/core/input.ts | 21 + libs/core/music.ts | 57 +++ libs/core/shims.d.ts | 36 +- libs/radio-broadcast/pxt.json | 11 +- libs/radio-broadcast/radio-broadcast.ts | 39 -- libs/radio/README.md | 4 - libs/radio/_locales/radio-jsdoc-strings.json | 2 +- libs/radio/pxt.json | 19 +- libs/radio/radio.cpp | 126 ----- libs/radio/radio.ts | 444 ------------------ libs/radio/shims.d.ts | 6 +- .../{deprecated.ts => targetoverrides.ts} | 76 ++- libs/radio/test.ts | 349 -------------- package-lock.json | 408 +++++++++------- package.json | 4 +- pxtarget.json | 23 +- sim/dalboard.ts | 10 +- sim/state/edgeconnectorsim.ts | 5 + sim/state/misc.ts | 21 +- sim/state/radio.ts | 147 ------ sim/tsconfig.json | 8 +- sim/visuals/microbit.ts | 6 +- targetconfig.json | 40 +- theme/site/elements/button.overrides | 2 +- theme/site/globals/site.variables | 0 43 files changed, 544 insertions(+), 1442 deletions(-) create mode 100644 docs/static/configurations/chrome-version.png create mode 100644 docs/static/configurations/edge-version.png create mode 100644 docs/static/configurations/firefox-version.png create mode 100644 docs/static/configurations/ie-version.png create mode 100644 docs/static/configurations/osx-version.png create mode 100644 docs/static/configurations/safari-version.png create mode 100644 docs/static/configurations/windows-version.png delete mode 100644 libs/radio-broadcast/radio-broadcast.ts delete mode 100644 libs/radio/README.md delete mode 100644 libs/radio/radio.cpp delete mode 100644 libs/radio/radio.ts rename libs/radio/{deprecated.ts => targetoverrides.ts} (79%) delete mode 100644 libs/radio/test.ts delete mode 100644 sim/state/radio.ts mode change 100644 => 100755 theme/site/globals/site.variables diff --git a/.github/lock.yml b/.github/lock.yml index 974f87a3..a1d7e6e1 100644 --- a/.github/lock.yml +++ b/.github/lock.yml @@ -30,13 +30,7 @@ lockLabel: false # Comment to post before locking. Set to `false` to disable -lockComment: > - - This thread has been automatically locked since there has not been - - any recent activity after it was closed. Please open a new issue for - - related bugs. +lockComment: false diff --git a/.gitignore b/.gitignore index e0a67323..89b121a8 100644 --- a/.gitignore +++ b/.gitignore @@ -33,4 +33,5 @@ crowdinstats.csv *.iml .vscode/.BROWSE.VC.DB-shm .vscode/.BROWSE.VC.DB-wal -package-lock.json \ No newline at end of file +package-lock.json +.DS_Store \ No newline at end of file diff --git a/docs/examples/rando.md b/docs/examples/rando.md index 009807ee..00670ad5 100644 --- a/docs/examples/rando.md +++ b/docs/examples/rando.md @@ -4,6 +4,6 @@ Generate a random coordinate and display it on the LED screen. ```blocks basic.forever(() => { - led.toggle(Math.randomRange(0, 5), Math.randomRange(0, 5)) + led.toggle(Math.randomRange(0, 4), Math.randomRange(0, 4)) }) ``` \ No newline at end of file diff --git a/docs/projects/love-meter.md b/docs/projects/love-meter.md index 84e25a75..37fbc01b 100644 --- a/docs/projects/love-meter.md +++ b/docs/projects/love-meter.md @@ -3,7 +3,6 @@ ## Introduction @unplugged Make a love meter, how sweet! The @boardname@ is feeling the love, then sometimes not so much! -Tell everyone who you are. Show you name on the LEDs. ![Love meter banner message](/calliope/tutorials/05_love_meter_animation.gif) diff --git a/docs/projects/snap-the-dot.md b/docs/projects/snap-the-dot.md index 715c7260..5d3a0f55 100644 --- a/docs/projects/snap-the-dot.md +++ b/docs/projects/snap-the-dot.md @@ -8,13 +8,19 @@ Snap the dot is a game of skill where the player has to press **A** exactly when This tutorial shows how to use the game engine. -## Create a sprite @fullscreen +## Make a sprite variable @fullscreen -Drag a ``||game:create sprite||`` block onto the workspace. A sprite is a single pixel that can move on the screen. It has an ``x`` and ``y`` position along with a direction of motion. +Create a new variable called `sprite`. Drag a ``||variables:set sprite to||`` into the ``||basic:on start||`` on the workspace. ```blocks -let sprite: game.LedSprite = null -sprite = game.createSprite(2, 2) +let sprite = 0 +``` +## Create a sprite @fullscreen + +Pull out a ``||game:create sprite||`` block and put it in ``||variables:set sprite to||`` replacing the `0`. A sprite is a single pixel that can move on the screen. It has an ``x`` and ``y`` position along with a direction of motion. + +```blocks +let sprite = game.createSprite(2, 2) ``` ## Move the dot @fullscreen @@ -22,8 +28,7 @@ sprite = game.createSprite(2, 2) The sprite starts in the center facing right. Put a ``||game:move||`` block into the ``||basic:forever||`` to make it move. Notice how it moves to the right but does not bounce back. ```blocks -let sprite: game.LedSprite = null -sprite = game.createSprite(2, 2) +let sprite = game.createSprite(2, 2) basic.forever(function () { sprite.move(1) }) @@ -34,8 +39,7 @@ basic.forever(function () { Grab a ``||game:if on edge, bounce||`` block to make the sprite bounce on the side of the screen. Also, add a ``||basic:pause||`` block to slow down the sprite. ```blocks -let sprite: game.LedSprite = null -sprite = game.createSprite(2, 2) +let sprite = game.createSprite(2, 2) basic.forever(function () { sprite.move(1) sprite.ifOnEdgeBounce() @@ -54,13 +58,12 @@ When **A** is pressed, we test if the sprite is in the center or not. Use a ``||input:on button pressed||`` block to handle the **A** button. Put in a ``||logic:if||`` block and test if ``||game:x||`` is equal to `2`. ```blocks -let sprite: game.LedSprite = null +let sprite = game.createSprite(2, 2) input.onButtonPressed(Button.A, function () { if (sprite.get(LedSpriteProperty.X) == 2) { } else { } }) -sprite = game.createSprite(2, 2) basic.forever(function () { sprite.move(1) basic.pause(100) @@ -73,7 +76,7 @@ basic.forever(function () { Finally, pull out an ``||game:add score||`` and a ``||game:game over||`` block to handle both success (sprite in the center) and failure (sprite not in the center). ```blocks -let sprite: game.LedSprite = null +let sprite = game.createSprite(2, 2) input.onButtonPressed(Button.A, function () { if (sprite.get(LedSpriteProperty.X) == 2) { game.addScore(1) @@ -81,7 +84,6 @@ input.onButtonPressed(Button.A, function () { game.gameOver() } }) -sprite = game.createSprite(2, 2) basic.forever(function () { sprite.move(1) basic.pause(100) diff --git a/docs/reference/led/plot-bar-graph.md b/docs/reference/led/plot-bar-graph.md index e64fbee5..cb5bd645 100644 --- a/docs/reference/led/plot-bar-graph.md +++ b/docs/reference/led/plot-bar-graph.md @@ -17,6 +17,15 @@ A bar graph is a kind of chart that shows numbers as lines with different length * **high**: a [number](/types/number) that is the highest possible number (maximum) that the **value** parameter can be. The lines in the bar graph will reach their highest point when **value** reaches this number. If **high** is `0`, then the largest value recently plotted is used as the maximum. +### ~hint + +#### Serial Output + +The ``||led:plot bar graph||`` block also writes the number from **value** to the [serial](/reference/serial) port as a way to help you record +values. + +### ~ + ## Example: chart acceleration Show a bar graph of the [acceleration](/reference/input/acceleration) diff --git a/docs/static/configurations/chrome-version.png b/docs/static/configurations/chrome-version.png new file mode 100644 index 0000000000000000000000000000000000000000..b7a4db67806e5d258184b0d6bbbfc1b419198d11 GIT binary patch literal 14661 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 literal 0 HcmV?d00001 diff --git a/docs/static/configurations/firefox-version.png b/docs/static/configurations/firefox-version.png new file mode 100644 index 0000000000000000000000000000000000000000..d9b5684c948d88c3b3796e5093b69672bc52b63e GIT binary patch literal 48313 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 Z_mz567}NKD7YYY!a$l6C>Lg6U{s&-7jTQg^ literal 0 HcmV?d00001 diff --git a/docs/static/configurations/ie-version.png b/docs/static/configurations/ie-version.png new file mode 100644 index 0000000000000000000000000000000000000000..3fbc6e7c36d7b95062fc50f971915e9d15785170 GIT binary patch literal 17710 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 literal 0 HcmV?d00001 diff --git a/docs/static/configurations/osx-version.png b/docs/static/configurations/osx-version.png new file mode 100644 index 0000000000000000000000000000000000000000..9457d7e48e3d10cd1aa1fc9af3892d7555b041f5 GIT binary patch literal 131415 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%0DFlxPPn4~;@ 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 literal 0 HcmV?d00001 diff --git a/docs/static/configurations/safari-version.png b/docs/static/configurations/safari-version.png new file mode 100644 index 0000000000000000000000000000000000000000..70d1d8715154ca0a14ff13ee7b8a602eb91cadd1 GIT binary patch literal 44853 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 z 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 literal 0 HcmV?d00001 diff --git a/libs/core/_locales/core-jsdoc-strings.json b/libs/core/_locales/core-jsdoc-strings.json index d86dc4e6..d43084a7 100644 --- a/libs/core/_locales/core-jsdoc-strings.json +++ b/libs/core/_locales/core-jsdoc-strings.json @@ -89,8 +89,8 @@ "Gesture.FreeFall": "Raised when the board is falling!", "Gesture.LogoDown": "Raised when the logo is downward and the screen is vertical", "Gesture.LogoUp": "Raised when the logo is upward and the screen is vertical", - "Gesture.ScreenDown": "Raised when the screen is pointing up and the board is horizontal", - "Gesture.ScreenUp": "Raised when the screen is pointing down and the board is horizontal", + "Gesture.ScreenDown": "Raised when the screen is pointing down and the board is horizontal", + "Gesture.ScreenUp": "Raised when the screen is pointing up and the board is horizontal", "Gesture.Shake": "Raised when shaken", "Gesture.SixG": "Raised when a 6G shock is detected", "Gesture.ThreeG": "Raised when a 3G shock is detected", @@ -273,6 +273,8 @@ "control.eventValue": "Gets the value of the last event executed on the bus", "control.eventValueId": "Returns the value of a C++ runtime constant", "control.inBackground": "Schedules code that run in the background.", + "control.micros": "Gets current time in microseconds. Overflows every ~18 minutes.", + "control.millis": "Gets the number of milliseconds elapsed since power on.", "control.onEvent": "Registers an event handler.", "control.panic": "Display specified error code and stop the program.", "control.raiseEvent": "Raises an event in the event bus.", @@ -281,6 +283,7 @@ "control.raiseEvent|param|value": "Component specific code indicating the cause of the event.", "control.reset": "Resets the BBC micro:bit.", "control.runtimeWarning": "Display warning in the simulator.", + "control.waitForEvent": "Blocks the calling thread until the specified event is raised.", "control.waitMicros": "Blocks the current fiber for the given microseconds", "control.waitMicros|param|micros": "number of micro-seconds to wait. eg: 4", "convertToText": "Convert any value to text", @@ -467,9 +470,13 @@ "music.builtInMelody": "Gets the melody array of a built-in melody.", "music.changeTempoBy": "Change the tempo by the specified amount", "music.changeTempoBy|param|bpm": "The change in beats per minute to the tempo, eg: 20", + "music.melodyEditor": "Create a melody with the melody editor.", "music.noteFrequency": "Get the frequency of a note.", "music.noteFrequency|param|name": "the note name, eg: Note.C", "music.onEvent": "Registers code to run on various melody events", + "music.playMelody": "Play a melody from the melody editor.", + "music.playMelody|param|melody": "- string of up to eight notes [C D E F G A B C5] or rests [-] separated by spaces, which will be played one at a time, ex: \"E D G F B A C5 B \"", + "music.playMelody|param|tempo": "- number in beats per minute (bpm), dictating how long each note will play for", "music.playTone": "Plays a tone through pin ``P0`` for the given duration.", "music.playTone|param|frequency": "pitch of the tone to play in Hertz (Hz), eg: Note.C", "music.playTone|param|ms": "tone duration in milliseconds (ms)", diff --git a/libs/core/_locales/core-strings.json b/libs/core/_locales/core-strings.json index 4ecc562e..801407b1 100644 --- a/libs/core/_locales/core-strings.json +++ b/libs/core/_locales/core-strings.json @@ -79,9 +79,9 @@ "Gesture.LogoDown|block": "logo down", "Gesture.LogoUp": "Raised when the logo is upward and the screen is vertical", "Gesture.LogoUp|block": "logo up", - "Gesture.ScreenDown": "Raised when the screen is pointing up and the board is horizontal", + "Gesture.ScreenDown": "Raised when the screen is pointing down and the board is horizontal", "Gesture.ScreenDown|block": "screen down", - "Gesture.ScreenUp": "Raised when the screen is pointing down and the board is horizontal", + "Gesture.ScreenUp": "Raised when the screen is pointing up and the board is horizontal", "Gesture.ScreenUp|block": "screen up", "Gesture.Shake": "Raised when shaken", "Gesture.Shake|block": "shake", @@ -262,9 +262,11 @@ "control.eventValueId|block": "%id", "control.eventValue|block": "event value", "control.inBackground|block": "run in background", + "control.millis|block": "millis (ms)", "control.onEvent|block": "on event|from %src=control_event_source_id|with value %value=control_event_value_id", "control.raiseEvent|block": "raise event|from source %src=control_event_source_id|with value %value=control_event_value_id", "control.reset|block": "reset", + "control.waitForEvent|block": "wait for event|from %src|with value %value", "control.waitMicros|block": "wait (µs)%micros", "control|block": "control", "convertToText|block": "convert $value=math_number to text", @@ -338,8 +340,10 @@ "music.beginMelody|block": "start melody %melody=device_builtin_melody| repeating %options", "music.builtInMelody|block": "%melody", "music.changeTempoBy|block": "change tempo by (bpm)|%value", + "music.melodyEditor|block": "$melody", "music.noteFrequency|block": "%name", "music.onEvent|block": "music on %value", + "music.playMelody|block": "play melody $melody at tempo $tempo|(bpm)", "music.playTone|block": "play|tone %note=device_note|for %duration=device_beat", "music.rest|block": "rest(ms)|%duration=device_beat", "music.ringTone|block": "ring tone (Hz)|%note=device_note", diff --git a/libs/core/control.cpp b/libs/core/control.cpp index 0aff221f..c40c8bc6 100644 --- a/libs/core/control.cpp +++ b/libs/core/control.cpp @@ -223,6 +223,23 @@ namespace control { release_fiber(); } + /** + * Gets the number of milliseconds elapsed since power on. + */ + //% help=control/millis weight=50 + //% blockId=control_running_time block="millis (ms)" + int millis() { + return system_timer_current_time(); + } + + /** + * Gets current time in microseconds. Overflows every ~18 minutes. + */ + //% + int micros() { + return system_timer_current_time_us() & 0x3fffffff; + } + /** * Schedules code that run in the background. */ @@ -232,6 +249,15 @@ namespace control { runInParallel(a); } + /** + * Blocks the calling thread until the specified event is raised. + */ + //% help=control/wait-for-event async + //% blockId=control_wait_for_event block="wait for event|from %src|with value %value" + void waitForEvent(int src, int value) { + pxt::waitForEvent(src, value); + } + /** * Resets the BBC micro:bit. */ diff --git a/libs/core/enums.d.ts b/libs/core/enums.d.ts index 29693dd7..34620484 100644 --- a/libs/core/enums.d.ts +++ b/libs/core/enums.d.ts @@ -111,13 +111,13 @@ declare namespace basic { //% jres=gestures.tiltbackwards LogoDown = 2, // MICROBIT_ACCELEROMETER_EVT_TILT_DOWN /** - * Raised when the screen is pointing down and the board is horizontal + * Raised when the screen is pointing up and the board is horizontal */ //% block="screen up" //% jres=gestures.frontsideup ScreenUp = 5, // MICROBIT_ACCELEROMETER_EVT_FACE_UP /** - * Raised when the screen is pointing up and the board is horizontal + * Raised when the screen is pointing down and the board is horizontal */ //% block="screen down" //% jres=gestures.backsideup diff --git a/libs/core/input.cpp b/libs/core/input.cpp index 03dc9592..d268df2a 100644 --- a/libs/core/input.cpp +++ b/libs/core/input.cpp @@ -75,13 +75,13 @@ enum class Gesture { //% jres=gestures.tiltbackwards LogoDown = MICROBIT_ACCELEROMETER_EVT_TILT_DOWN, /** - * Raised when the screen is pointing down and the board is horizontal + * Raised when the screen is pointing up and the board is horizontal */ //% block="screen up" //% jres=gestures.frontsideup ScreenUp = MICROBIT_ACCELEROMETER_EVT_FACE_UP, /** - * Raised when the screen is pointing up and the board is horizontal + * Raised when the screen is pointing down and the board is horizontal */ //% block="screen down" //% jres=gestures.backsideup @@ -363,26 +363,6 @@ namespace input { return 0; } - /** - * Gets the number of milliseconds elapsed since power on. - */ - //% help=input/running-time weight=50 blockGap=8 - //% blockId=device_get_running_time block="running time (ms)" - //% advanced=true - int runningTime() { - return system_timer_current_time(); - } - - /** - * Gets the number of microseconds elapsed since power on. - */ - //% help=input/running-time-micros weight=49 - //% blockId=device_get_running_time_micros block="running time (micros)" - //% advanced=true - int runningTimeMicros() { - return system_timer_current_time_us(); - } - /** * Obsolete, compass calibration is automatic. */ diff --git a/libs/core/input.ts b/libs/core/input.ts index 59377fa3..c6d0a487 100644 --- a/libs/core/input.ts +++ b/libs/core/input.ts @@ -55,4 +55,25 @@ namespace input { export function calibrate() { input.calibrateCompass(); } + + + /** + * Gets the number of milliseconds elapsed since power on. + */ + //% help=input/running-time weight=50 blockGap=8 + //% blockId=device_get_running_time block="running time (ms)" + //% advanced=true + export function runningTime() { + return control.millis(); + } + + /** + * Gets the number of microseconds elapsed since power on. + */ + //% help=input/running-time-micros weight=49 + //% blockId=device_get_running_time_micros block="running time (micros)" + //% advanced=true + export function runningTimeMicros() { + return control.micros(); + } } diff --git a/libs/core/music.ts b/libs/core/music.ts index 3c619a8a..70c30a8f 100644 --- a/libs/core/music.ts +++ b/libs/core/music.ts @@ -174,6 +174,8 @@ enum MusicEvent { */ //% color=#DF4600 weight=98 icon="\uf025" namespace music { + const INTERNAL_MELODY_ENDED = 5; + let beatsPerMinute: number = 120; //% whenUsed const freqs = hex` @@ -358,14 +360,69 @@ namespace music { currentBackgroundMelody = null; control.raiseEvent(MICROBIT_MELODY_ID, MusicEvent.MelodyEnded); control.raiseEvent(MICROBIT_MELODY_ID, MusicEvent.BackgroundMelodyResumed); + control.raiseEvent(MICROBIT_MELODY_ID, INTERNAL_MELODY_ENDED); } } control.raiseEvent(MICROBIT_MELODY_ID, currentMelody.background ? MusicEvent.BackgroundMelodyEnded : MusicEvent.MelodyEnded); + if (!currentMelody.background) + control.raiseEvent(MICROBIT_MELODY_ID, INTERNAL_MELODY_ENDED); currentMelody = null; }) } } + + /** + * Play a melody from the melody editor. + * @param melody - string of up to eight notes [C D E F G A B C5] or rests [-] separated by spaces, which will be played one at a time, ex: "E D G F B A C5 B " + * @param tempo - number in beats per minute (bpm), dictating how long each note will play for + */ + //% block="play melody $melody at tempo $tempo|(bpm)" blockId=playMelody + //% weight=85 blockGap=8 help=music/play-melody + //% melody.shadow="melody_editor" + //% tempo.min=40 tempo.max=500 + //% tempo.defl=120 + //% parts=headphone + export function playMelody(melody: string, tempo: number) { + melody = melody || ""; + setTempo(tempo); + let notes: string[] = melody.split(" ").filter(n => !!n); + let newOctave = false; + + // build melody string, replace '-' with 'R' and add tempo + // creates format like "C5-174 B4 A G F E D C " + for (let i = 0; i < notes.length; i++) { + if (notes[i] === "-") { + notes[i] = "R"; + } else if (notes[i] === "C5") { + newOctave = true; + } else if (newOctave) { // change the octave if necesary + notes[i] += "4"; + newOctave = false; + } + } + + music.beginMelody(notes, MelodyOptions.Once) + control.waitForEvent(MICROBIT_MELODY_ID, INTERNAL_MELODY_ENDED); + } + + /** + * Create a melody with the melody editor. + * @param melody + */ + //% block="$melody" blockId=melody_editor + //% blockHidden = true + //% weight=85 blockGap=8 + //% duplicateShadowOnDrag + //% melody.fieldEditor="melody" + //% melody.fieldOptions.decompileLiterals=true + //% melody.fieldOptions.decompileIndirectFixedInstances="true" + //% melody.fieldOptions.onParentBlock="true" + //% shim=TD_ID + export function melodyEditor(melody: string): string { + return melody; + } + /** * Stops the melodies * @param options which melody to stop diff --git a/libs/core/shims.d.ts b/libs/core/shims.d.ts index eb554327..9d21058b 100644 --- a/libs/core/shims.d.ts +++ b/libs/core/shims.d.ts @@ -346,22 +346,6 @@ declare namespace input { //% advanced=true shim=input::magneticForce function magneticForce(dimension: Dimension): int32; - /** - * Gets the number of milliseconds elapsed since power on. - */ - //% help=input/running-time weight=50 blockGap=8 - //% blockId=device_get_running_time block="running time (ms)" - //% advanced=true shim=input::runningTime - function runningTime(): int32; - - /** - * Gets the number of microseconds elapsed since power on. - */ - //% help=input/running-time-micros weight=49 - //% blockId=device_get_running_time_micros block="running time (micros)" - //% advanced=true shim=input::runningTimeMicros - function runningTimeMicros(): int32; - /** * Obsolete, compass calibration is automatic. */ @@ -388,6 +372,19 @@ declare namespace input { //% advanced=true declare namespace control { + /** + * Gets the number of milliseconds elapsed since power on. + */ + //% help=control/millis weight=50 + //% blockId=control_running_time block="millis (ms)" shim=control::millis + function millis(): int32; + + /** + * Gets current time in microseconds. Overflows every ~18 minutes. + */ + //% shim=control::micros + function micros(): int32; + /** * Schedules code that run in the background. */ @@ -395,6 +392,13 @@ declare namespace control { //% blockId="control_in_background" block="run in background" blockGap=8 shim=control::inBackground function inBackground(a: () => void): void; + /** + * Blocks the calling thread until the specified event is raised. + */ + //% help=control/wait-for-event async + //% blockId=control_wait_for_event block="wait for event|from %src|with value %value" shim=control::waitForEvent + function waitForEvent(src: int32, value: int32): void; + /** * Resets the BBC micro:bit. */ diff --git a/libs/radio-broadcast/pxt.json b/libs/radio-broadcast/pxt.json index b24a64b3..82f9ad60 100644 --- a/libs/radio-broadcast/pxt.json +++ b/libs/radio-broadcast/pxt.json @@ -1,12 +1,3 @@ { - "name": "radio-broadcast", - "description": "Adds new blocks for message communication in the radio category", - "files": [ - "pxt.json", - "radio-broadcast.ts" - ], - "dependencies": { - "core": "file:../core", - "radio": "file:../radio" - } + "additionalFilePath": "../../node_modules/pxt-common-packages/libs/radio-broadcast" } diff --git a/libs/radio-broadcast/radio-broadcast.ts b/libs/radio-broadcast/radio-broadcast.ts deleted file mode 100644 index c8b71835..00000000 --- a/libs/radio-broadcast/radio-broadcast.ts +++ /dev/null @@ -1,39 +0,0 @@ -namespace radio { - /** - * Gets the message code - */ - //% blockHidden=1 shim=ENUM_GET - //% blockId=radioMessageCode block="$msg" enumInitialMembers="message1" - //% enumName=RadioMessage enumMemberName=msg enumPromptHint="e.g. Start, Stop, Jump..." - //% enumIsHash=1 - export function __message(msg: number): number { - return msg; - } - - /** - * Broadcasts a message over radio - * @param msg - */ - //% blockId=radioBroadcastMessage block="radio send $msg" - //% msg.shadow=radioMessageCode draggableParameters - //% weight=200 - //% blockGap=8 - //% help=radio/send-message - export function sendMessage(msg: number): void { - // 0 is MICROBIT_EVT_ANY, shifting by 1 - radio.raiseEvent(DAL.MES_BROADCAST_GENERAL_ID, msg + 1); - } - - /** - * Registers code to run for a particular message - * @param msg - * @param handler - */ - //% blockId=radioOnMessageReceived block="on radio $msg received" - //% msg.shadow=radioMessageCode draggableParameters - //% weight=199 - //% help=radio/on-received-message - export function onReceivedMessage(msg: number, handler: () => void) { - control.onEvent(DAL.MES_BROADCAST_GENERAL_ID, msg + 1, handler); - } -} \ No newline at end of file diff --git a/libs/radio/README.md b/libs/radio/README.md deleted file mode 100644 index 1ffdf2b7..00000000 --- a/libs/radio/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# radio - -The radio library. - diff --git a/libs/radio/_locales/radio-jsdoc-strings.json b/libs/radio/_locales/radio-jsdoc-strings.json index b4f635f1..a8018f54 100644 --- a/libs/radio/_locales/radio-jsdoc-strings.json +++ b/libs/radio/_locales/radio-jsdoc-strings.json @@ -9,7 +9,7 @@ "radio._packetProperty": "Gets a packet property.", "radio._packetProperty|param|type": "the packet property type, eg: PacketProperty.time", "radio.onDataPacketReceived": "Deprecated. Use onDataReceived() instead\nRegisters code to run when the radio receives a packet. Also takes the\nreceived packet from the radio queue.", - "radio.onDataReceived": "Registers code to run when a packet is received over radio.", + "radio.onDataReceived": "Used internally by the library.", "radio.onReceivedBuffer": "Registers code to run when the radio receives a buffer.", "radio.onReceivedBufferDeprecated": "Registers code to run when the radio receives a buffer. Deprecated, use\nonReceivedBuffer instead.", "radio.onReceivedNumber": "Registers code to run when the radio receives a number.", diff --git a/libs/radio/pxt.json b/libs/radio/pxt.json index 9a1374cc..3eb5331a 100644 --- a/libs/radio/pxt.json +++ b/libs/radio/pxt.json @@ -1,19 +1,5 @@ { - "name": "radio", - "description": "The radio services", - "files": [ - "README.md", - "shims.d.ts", - "enums.d.ts", - "radio.cpp", - "radio.ts", - "deprecated.ts" - ], - "icon": "./static/packages/radio/icon.png", - "public": true, - "dependencies": { - "core": "file:../core" - }, + "additionalFilePath": "../../node_modules/pxt-common-packages/libs/radio", "yotta": { "config": { "microbit-dal": { @@ -22,6 +8,5 @@ } } } - }, - "installedVersion": "rlfgis" + } } \ No newline at end of file diff --git a/libs/radio/radio.cpp b/libs/radio/radio.cpp deleted file mode 100644 index b4b324de..00000000 --- a/libs/radio/radio.cpp +++ /dev/null @@ -1,126 +0,0 @@ -#include "pxt.h" - -using namespace pxt; - -//% color=#E3008C weight=96 icon="\uf012" -namespace radio { - - bool radioEnabled = false; - - int radioEnable() { - int r = uBit.radio.enable(); - if (r != MICROBIT_OK) { - uBit.panic(43); - return r; - } - if (!radioEnabled) { - uBit.radio.setGroup(pxt::programHash()); - uBit.radio.setTransmitPower(6); // start with high power by default - radioEnabled = true; - } - return r; - } - - /** - * Sends an event over radio to neigboring devices - */ - //% blockId=radioRaiseEvent block="radio raise event|from source %src=control_event_source_id|with value %value=control_event_value_id" - //% blockExternalInputs=1 - //% advanced=true - //% weight=1 - //% help=radio/raise-event - void raiseEvent(int src, int value) { - if (radioEnable() != MICROBIT_OK) return; - - uBit.radio.event.eventReceived(MicroBitEvent(src, value, CREATE_ONLY)); - } - - /** - * Internal use only. Takes the next packet from the radio queue and returns its contents + RSSI in a Buffer - */ - //% - Buffer readRawPacket() { - if (radioEnable() != MICROBIT_OK) return mkBuffer(NULL, 0); - - PacketBuffer p = uBit.radio.datagram.recv(); - if (p == PacketBuffer::EmptyPacket) - return mkBuffer(NULL, 0); - - int rssi = p.getRSSI(); - uint8_t buf[MICROBIT_RADIO_MAX_PACKET_SIZE + sizeof(int)]; // packet length + rssi - memset(buf, 0, sizeof(buf)); - memcpy(buf, p.getBytes(), p.length()); // data - memcpy(buf + MICROBIT_RADIO_MAX_PACKET_SIZE, &rssi, sizeof(int)); // RSSi - assumes Int32LE layout - return mkBuffer(buf, sizeof(buf)); - } - - /** - * Internal use only. Sends a raw packet through the radio (assumes RSSI appened to packet) - */ - //% async - void sendRawPacket(Buffer msg) { - if (radioEnable() != MICROBIT_OK || NULL == msg) return; - - // don't send RSSI data; and make sure no buffer underflow - int len = msg->length - sizeof(int); - if (len > 0) - uBit.radio.datagram.send(msg->data, len); - } - - /** - * Registers code to run when a packet is received over radio. - */ - //% help=radio/on-data-received - //% weight=50 - //% blockId=radio_datagram_received_event block="radio on data received" blockGap=8 - //% deprecated=true - void onDataReceived(Action body) { - if (radioEnable() != MICROBIT_OK) return; - - registerWithDal(MICROBIT_ID_RADIO, MICROBIT_RADIO_EVT_DATAGRAM, body); - uBit.radio.datagram.recv(); // wake up read code - } - - /** - * Sets the group id for radio communications. A micro:bit can only listen to one group ID at any time. - * @param id the group id between ``0`` and ``255``, eg: 1 - */ - //% help=radio/set-group - //% weight=100 - //% blockId=radio_set_group block="radio set group %ID" - //% id.min=0 id.max=255 - void setGroup(int id) { - if (radioEnable() != MICROBIT_OK) return; - - uBit.radio.setGroup(id); - } - - /** - * Change the output power level of the transmitter to the given value. - * @param power a value in the range 0..7, where 0 is the lowest power and 7 is the highest. eg: 7 - */ - //% help=radio/set-transmit-power - //% weight=9 blockGap=8 - //% blockId=radio_set_transmit_power block="radio set transmit power %power" - //% power.min=0 power.max=7 - //% advanced=true - void setTransmitPower(int power) { - if (radioEnable() != MICROBIT_OK) return; - - uBit.radio.setTransmitPower(power); - } - - /** - * Change the transmission and reception band of the radio to the given channel - * @param band a frequency band in the range 0 - 83. Each step is 1MHz wide, based at 2400MHz. - **/ - //% help=radio/set-frequency-band - //% weight=8 blockGap=8 - //% blockId=radio_set_frequency_band block="radio set frequency band %band" - //% band.min=0 band.max=83 - //% advanced=true - void setFrequencyBand(int band) { - if (radioEnable() != MICROBIT_OK) return; - uBit.radio.setFrequencyBand(band); - } -} diff --git a/libs/radio/radio.ts b/libs/radio/radio.ts deleted file mode 100644 index 2f564e8c..00000000 --- a/libs/radio/radio.ts +++ /dev/null @@ -1,444 +0,0 @@ - -enum RadioPacketProperty { - //% blockIdentity=radio._packetProperty - //% block="signal strength" - SignalStrength = 2, - //% blockIdentity=radio._packetProperty - //% block="time" - Time = 0, - //% block="serial number" - //% blockIdentity=radio._packetProperty - SerialNumber = 1 -} - -/** - * Communicate data using radio packets - */ -//% color=#E3008C weight=96 icon="\uf012" -namespace radio { - - const MAX_FIELD_DOUBLE_NAME_LENGTH = 8; - const MAX_PAYLOAD_LENGTH = 20; - const PACKET_PREFIX_LENGTH = 9; - const VALUE_PACKET_NAME_LEN_OFFSET = 13; - const DOUBLE_VALUE_PACKET_NAME_LEN_OFFSET = 17; - - // Packet Spec: - // | 0 | 1 ... 4 | 5 ... 8 | 9 ... 28 - // ---------------------------------------------------------------- - // | packet type | system time | serial number | payload - // - // Serial number defaults to 0 unless enabled by user - - // payload: number (9 ... 12) - const PACKET_TYPE_NUMBER = 0; - // payload: number (9 ... 12), name length (13), name (14 ... 26) - const PACKET_TYPE_VALUE = 1; - // payload: string length (9), string (10 ... 28) - const PACKET_TYPE_STRING = 2; - // payload: buffer length (9), buffer (10 ... 28) - const PACKET_TYPE_BUFFER = 3; - // payload: number (9 ... 16) - const PACKET_TYPE_DOUBLE = 4; - // payload: number (9 ... 16), name length (17), name (18 ... 26) - const PACKET_TYPE_DOUBLE_VALUE = 5; - - let transmittingSerial: boolean; - let initialized = false; - - export let lastPacket: RadioPacket; - let onReceivedNumberHandler: (receivedNumber: number) => void; - let onReceivedValueHandler: (name: string, value: number) => void; - let onReceivedStringHandler: (receivedString: string) => void; - let onReceivedBufferHandler: (receivedBuffer: Buffer) => void; - - function init() { - if (initialized) return; - initialized = true; - onDataReceived(handleDataReceived); - } - - function handleDataReceived() { - let buffer: Buffer = readRawPacket(); - while (buffer && buffer.length) { - lastPacket = RadioPacket.getPacket(buffer); - switch (lastPacket.packetType) { - case PACKET_TYPE_NUMBER: - case PACKET_TYPE_DOUBLE: - if (onReceivedNumberHandler) - onReceivedNumberHandler(lastPacket.numberPayload); - break; - case PACKET_TYPE_VALUE: - case PACKET_TYPE_DOUBLE_VALUE: - if (onReceivedValueHandler) - onReceivedValueHandler(lastPacket.stringPayload, lastPacket.numberPayload); - break; - case PACKET_TYPE_BUFFER: - if (onReceivedBufferHandler) - onReceivedBufferHandler(lastPacket.bufferPayload); - break; - case PACKET_TYPE_STRING: - if (onReceivedStringHandler) - onReceivedStringHandler(lastPacket.stringPayload); - break; - } - - // read next packet if any - buffer = readRawPacket(); - } - } - - /** - * Registers code to run when the radio receives a number. - */ - //% help=radio/on-received-number - //% blockId=radio_on_number_drag block="on radio received" blockGap=16 - //% useLoc="radio.onDataPacketReceived" draggableParameters=reporter - export function onReceivedNumber(cb: (receivedNumber: number) => void) { - init(); - onReceivedNumberHandler = cb; - } - - /** - * Registers code to run when the radio receives a key value pair. - */ - //% help=radio/on-received-value - //% blockId=radio_on_value_drag block="on radio received" blockGap=16 - //% useLoc="radio.onDataPacketReceived" draggableParameters=reporter - export function onReceivedValue(cb: (name: string, value: number) => void) { - init(); - onReceivedValueHandler = cb; - } - - /** - * Registers code to run when the radio receives a string. - */ - //% help=radio/on-received-string - //% blockId=radio_on_string_drag block="on radio received" blockGap=16 - //% useLoc="radio.onDataPacketReceived" draggableParameters=reporter - export function onReceivedString(cb: (receivedString: string) => void) { - init(); - onReceivedStringHandler = cb; - } - - /** - * Registers code to run when the radio receives a buffer. - */ - //% help=radio/on-received-buffer blockHidden=1 - //% blockId=radio_on_buffer_drag block="on radio received" blockGap=16 - //% useLoc="radio.onDataPacketReceived" draggableParameters=reporter - export function onReceivedBuffer(cb: (receivedBuffer: Buffer) => void) { - init(); - onReceivedBufferHandler = cb; - } - - /** - * Returns properties of the last radio packet received. - * @param type the type of property to retrieve from the last packet - */ - //% help=radio/received-packet - //% weight=11 blockGap=8 - //% blockId=radio_received_packet block="received packet %type=radio_packet_property" blockGap=16 - export function receivedPacket(type: number) { - if (lastPacket) { - switch (type) { - case RadioPacketProperty.Time: return lastPacket.time; - case RadioPacketProperty.SerialNumber: return lastPacket.serial; - case RadioPacketProperty.SignalStrength: return lastPacket.signal; - } - } - return 0; - } - - /** - * Gets a packet property. - * @param type the packet property type, eg: PacketProperty.time - */ - //% blockId=radio_packet_property block="%note" - //% shim=TD_ID blockHidden=1 - export function _packetProperty(type: RadioPacketProperty): number { - return type; - } - - export class RadioPacket { - public static getPacket(data: Buffer) { - // last 4 bytes is RSSi - return new RadioPacket(data); - } - - public static mkPacket(packetType: number) { - const res = new RadioPacket(); - res.data[0] = packetType; - return res; - } - - private constructor(public readonly data?: Buffer) { - if (!data) this.data = control.createBuffer(DAL.MICROBIT_RADIO_MAX_PACKET_SIZE + 4); - } - - get signal() { - return this.data.getNumber(NumberFormat.Int32LE, this.data.length - 4); - } - - get packetType() { - return this.data[0]; - } - - get time() { - return this.data.getNumber(NumberFormat.Int32LE, 1); - } - - set time(val: number) { - this.data.setNumber(NumberFormat.Int32LE, 1, val); - } - - get serial() { - return this.data.getNumber(NumberFormat.Int32LE, 5); - } - - set serial(val: number) { - this.data.setNumber(NumberFormat.Int32LE, 5, val); - } - - get stringPayload() { - const offset = getStringOffset(this.packetType) as number; - return offset ? this.data.slice(offset + 1, this.data[offset]).toString() : undefined; - } - - set stringPayload(val: string) { - const offset = getStringOffset(this.packetType) as number; - if (offset) { - const buf = control.createBufferFromUTF8(truncateString(val, getMaxStringLength(this.packetType))); - this.data[offset] = buf.length; - this.data.write(offset + 1, buf); - } - } - - get numberPayload() { - switch (this.packetType) { - case PACKET_TYPE_NUMBER: - case PACKET_TYPE_VALUE: - return this.data.getNumber(NumberFormat.Int32LE, PACKET_PREFIX_LENGTH); - case PACKET_TYPE_DOUBLE: - case PACKET_TYPE_DOUBLE_VALUE: - return this.data.getNumber(NumberFormat.Float64LE, PACKET_PREFIX_LENGTH); - } - return undefined; - } - - set numberPayload(val: number) { - switch (this.packetType) { - case PACKET_TYPE_NUMBER: - case PACKET_TYPE_VALUE: - this.data.setNumber(NumberFormat.Int32LE, PACKET_PREFIX_LENGTH, val); - break; - case PACKET_TYPE_DOUBLE: - case PACKET_TYPE_DOUBLE_VALUE: - this.data.setNumber(NumberFormat.Float64LE, PACKET_PREFIX_LENGTH, val); - break; - } - } - - get bufferPayload() { - const len = this.data[PACKET_PREFIX_LENGTH]; - return this.data.slice(PACKET_PREFIX_LENGTH + 1, len); - } - - set bufferPayload(b: Buffer) { - const len = Math.min(b.length, MAX_PAYLOAD_LENGTH - 1); - this.data[PACKET_PREFIX_LENGTH] = len; - this.data.write(PACKET_PREFIX_LENGTH + 1, b.slice(0, len)); - } - - hasString() { - return this.packetType === PACKET_TYPE_STRING || - this.packetType === PACKET_TYPE_VALUE || - this.packetType === PACKET_TYPE_DOUBLE_VALUE; - } - - hasNumber() { - return this.packetType === PACKET_TYPE_NUMBER || - this.packetType === PACKET_TYPE_DOUBLE || - this.packetType === PACKET_TYPE_VALUE || - this.packetType === PACKET_TYPE_DOUBLE_VALUE; - } - } - - - /** - * Broadcasts a number over radio to any connected micro:bit in the group. - */ - //% help=radio/send-number - //% weight=60 - //% blockId=radio_datagram_send block="radio send number %value" blockGap=8 - export function sendNumber(value: number) { - let packet: RadioPacket; - - if (value === (value | 0)) { - packet = RadioPacket.mkPacket(PACKET_TYPE_NUMBER); - } - else { - packet = RadioPacket.mkPacket(PACKET_TYPE_DOUBLE); - } - - packet.numberPayload = value; - sendPacket(packet); - } - - /** - * Broadcasts a name / value pair along with the device serial number - * and running time to any connected micro:bit in the group. The name can - * include no more than 8 characters. - * @param name the field name (max 8 characters), eg: "name" - * @param value the numeric value - */ - //% help=radio/send-value - //% weight=59 - //% blockId=radio_datagram_send_value block="radio send|value %name|= %value" blockGap=8 - export function sendValue(name: string, value: number) { - let packet: RadioPacket; - - if (value === (value | 0)) { - packet = RadioPacket.mkPacket(PACKET_TYPE_VALUE); - } - else { - packet = RadioPacket.mkPacket(PACKET_TYPE_DOUBLE_VALUE); - } - - packet.numberPayload = value; - packet.stringPayload = name; - sendPacket(packet); - } - - /** - * Broadcasts a string along with the device serial number - * and running time to any connected micro:bit in the group. - */ - //% help=radio/send-string - //% weight=58 - //% blockId=radio_datagram_send_string block="radio send string %msg" - //% msg.shadowOptions.toString=true - export function sendString(value: string) { - const packet = RadioPacket.mkPacket(PACKET_TYPE_STRING); - packet.stringPayload = value; - sendPacket(packet); - } - - /** - * Broadcasts a buffer (up to 19 bytes long) along with the device serial number - * and running time to any connected micro:bit in the group. - */ - //% help=radio/send-buffer - //% weight=57 - //% advanced=true - export function sendBuffer(msg: Buffer) { - const packet = RadioPacket.mkPacket(PACKET_TYPE_BUFFER); - packet.bufferPayload = msg; - sendPacket(packet); - } - - /** - * Writes the last received packet to serial as JSON. This should be called - * within an ``onDataPacketReceived`` callback. - */ - //% help=radio/write-received-packet-to-serial - //% weight=3 - //% blockId=radio_write_packet_serial block="radio write received packet to serial" - //% advanced=true - export function writeReceivedPacketToSerial() { - if (lastPacket) writeToSerial(lastPacket) - } - - /** - * Set the radio to transmit the serial number in each message. - * @param transmit value indicating if the serial number is transmitted, eg: true - */ - //% help=radio/set-transmit-serial-number - //% weight=8 blockGap=8 - //% blockId=radio_set_transmit_serial_number block="radio set transmit serial number %transmit" - //% advanced=true - export function setTransmitSerialNumber(transmit: boolean) { - transmittingSerial = transmit; - } - - /** - * Gets the received signal strength indicator (RSSI) from the last packet taken - * from the radio queue (via ``receiveNumber``, ``receiveString``, etc). Not supported in simulator. - */ - //% help=radio/received-signal-strength - //% weight=40 - //% blockId=radio_datagram_rssi block="radio received signal strength" - //% deprecated=true blockHidden=true - export function receivedSignalStrength(): number { - return lastPacket ? lastPacket.signal : 0; - } - - export function writeToSerial(packet: RadioPacket) { - serial.writeString("{"); - serial.writeString("\"t\":"); - serial.writeString("" + packet.time); - serial.writeString(",\"s\":"); - serial.writeString("" + packet.serial); - - if (packet.hasString()) { - serial.writeString(",\"n\":\""); - serial.writeString(packet.stringPayload); - serial.writeString("\""); - } - if (packet.packetType == PACKET_TYPE_BUFFER) { - serial.writeString(",\"b\":\""); - // TODO: proper base64 encoding - serial.writeString(packet.bufferPayload.toString()); - serial.writeString("\""); - } - if (packet.hasNumber()) { - serial.writeString(",\"v\":"); - serial.writeString("" + packet.numberPayload); - } - - serial.writeString("}\r\n"); - } - - function sendPacket(packet: RadioPacket) { - packet.time = input.runningTime(); - packet.serial = transmittingSerial ? control.deviceSerialNumber() : 0; - radio.sendRawPacket(packet.data); - } - - function truncateString(str: string, bytes: number) { - str = str.substr(0, bytes); - let buff = control.createBufferFromUTF8(str); - - while (buff.length > bytes) { - str = str.substr(0, str.length - 1); - buff = control.createBufferFromUTF8(str); - } - - return str; - } - - function getStringOffset(packetType: number) { - switch (packetType) { - case PACKET_TYPE_STRING: - return PACKET_PREFIX_LENGTH; - case PACKET_TYPE_VALUE: - return VALUE_PACKET_NAME_LEN_OFFSET; - case PACKET_TYPE_DOUBLE_VALUE: - return DOUBLE_VALUE_PACKET_NAME_LEN_OFFSET; - default: - return undefined; - } - } - - function getMaxStringLength(packetType: number) { - switch (packetType) { - case PACKET_TYPE_STRING: - return MAX_PAYLOAD_LENGTH - 2; - case PACKET_TYPE_VALUE: - case PACKET_TYPE_DOUBLE_VALUE: - return MAX_FIELD_DOUBLE_NAME_LENGTH; - default: - return undefined; - } - } -} \ No newline at end of file diff --git a/libs/radio/shims.d.ts b/libs/radio/shims.d.ts index e7983bad..e7f3d06f 100644 --- a/libs/radio/shims.d.ts +++ b/libs/radio/shims.d.ts @@ -28,12 +28,12 @@ declare namespace radio { function sendRawPacket(msg: Buffer): void; /** - * Registers code to run when a packet is received over radio. + * Used internally by the library. */ //% help=radio/on-data-received - //% weight=50 + //% weight=0 //% blockId=radio_datagram_received_event block="radio on data received" blockGap=8 - //% deprecated=true shim=radio::onDataReceived + //% deprecated=true blockHidden=1 shim=radio::onDataReceived function onDataReceived(body: () => void): void; /** diff --git a/libs/radio/deprecated.ts b/libs/radio/targetoverrides.ts similarity index 79% rename from libs/radio/deprecated.ts rename to libs/radio/targetoverrides.ts index 3677a650..1dab5c14 100644 --- a/libs/radio/deprecated.ts +++ b/libs/radio/targetoverrides.ts @@ -97,19 +97,6 @@ namespace radio { onReceivedBuffer(cb); } - /** - * Reads the next packet from the radio queue and and writes it to serial - * as JSON. - */ - //% help=radio/write-value-to-serial - //% weight=3 - //% blockId=radio_write_value_serial block="radio write value to serial" - //% deprecated=true - export function writeValueToSerial() { - const p = RadioPacket.getPacket(radio.readRawPacket()); - writeToSerial(p); - } - /** * Returns the number payload from the last packet taken from the radio queue * (via ``receiveNumber``, ``receiveString``, etc) or 0 if that packet did not @@ -185,4 +172,67 @@ namespace radio { lastPacket = RadioPacket.getPacket(readRawPacket()); return receivedString(); } + + /** + * Gets the received signal strength indicator (RSSI) from the last packet taken + * from the radio queue (via ``receiveNumber``, ``receiveString``, etc). Not supported in simulator. + */ + //% help=radio/received-signal-strength + //% weight=40 + //% blockId=radio_datagram_rssi block="radio received signal strength" + //% deprecated=true blockHidden=true + export function receivedSignalStrength(): number { + return lastPacket ? lastPacket.signal : 0; + } + + /** + * Reads the next packet from the radio queue and and writes it to serial + * as JSON. + */ + //% help=radio/write-value-to-serial + //% weight=3 + //% blockId=radio_write_value_serial block="radio write value to serial" + //% deprecated=true + export function writeValueToSerial() { + const p = RadioPacket.getPacket(radio.readRawPacket()); + writeToSerial(p); + } + + /** + * Writes the last received packet to serial as JSON. This should be called + * within an ``onDataPacketReceived`` callback. + */ + //% help=radio/write-received-packet-to-serial + //% weight=3 + //% blockId=radio_write_packet_serial block="radio write received packet to serial" + //% advanced=true deprecated=true + export function writeReceivedPacketToSerial() { + if (lastPacket) writeToSerial(lastPacket) + } + + function writeToSerial(packet: RadioPacket) { + serial.writeString("{"); + serial.writeString("\"t\":"); + serial.writeString("" + packet.time); + serial.writeString(",\"s\":"); + serial.writeString("" + packet.serial); + + if (packet.hasString()) { + serial.writeString(",\"n\":\""); + serial.writeString(packet.stringPayload); + serial.writeString("\""); + } + if (packet.packetType == PACKET_TYPE_BUFFER) { + serial.writeString(",\"b\":\""); + // TODO: proper base64 encoding + serial.writeString(packet.bufferPayload.toString()); + serial.writeString("\""); + } + if (packet.hasNumber()) { + serial.writeString(",\"v\":"); + serial.writeString("" + packet.numberPayload); + } + + serial.writeString("}\r\n"); + } } \ No newline at end of file diff --git a/libs/radio/test.ts b/libs/radio/test.ts deleted file mode 100644 index 78182f64..00000000 --- a/libs/radio/test.ts +++ /dev/null @@ -1,349 +0,0 @@ -/** - * Tests for the radio. Press A on mbit 1 and B on mbit 2 to run the tests. - * Sends random ints, doubles, strings, and buffers and checks them on - * the other side - */ - -class FastRandom { - private lfsr: number; - public seed: number; - - constructor(seed?: number) { - if (seed === undefined) seed = Math.randomRange(0x0001, 0xFFFF); - this.seed = seed; - this.lfsr = seed; - } - - next(): number { - return this.lfsr = (this.lfsr >> 1) ^ ((-(this.lfsr & 1)) & 0xb400); - } - - randomRange(min: number, max: number): number { - return min + (max > min ? this.next() % (max - min + 1) : 0); - } - - reset() { - this.lfsr = this.seed; - } -} - -enum TestStage { - Integer, - String, - Double, - IntValue, - DblValue, - Buffer -} - -const TEST_COUNT = 30; - -radio.setGroup(78) -const rand = new FastRandom(1234); - -let stage = TestStage.Integer; - -function initSender() { - let lastReceived: number; - let lastString: string; - let testIndex = 0; - let lastBuf: Buffer; - - let lastAck = -1; - - rand.reset(); - basic.clearScreen(); - - // Send loop - control.inBackground(function () { - while (true) { - for (let i = 0; i < TEST_COUNT; i++) { - toggle(testIndex); - - if (stage === TestStage.Integer) { - lastReceived = getNextInt(); - } - else if (stage === TestStage.Double) { - lastReceived = getNextDouble(); - } - else if (stage === TestStage.IntValue) { - lastString = getNextName(); - console.log(truncateString(lastString, 8)) - lastReceived = getNextInt(); - } - else if (stage === TestStage.DblValue) { - lastString = getNextName(); - lastReceived = getNextDouble(); - } - else if (stage === TestStage.String) { - lastString = getNextString(); - console.log(truncateString(lastString, 19)) - } - else if (stage === TestStage.Buffer) { - lastBuf = getNextBuffer(); - } - - while (lastAck !== testIndex) { - if (stage === TestStage.Integer || stage === TestStage.Double) { - radio.sendNumber(lastReceived) - } - else if (stage === TestStage.IntValue || stage === TestStage.DblValue) { - radio.sendValue(lastString, lastReceived) - } - else if (stage === TestStage.String) { - radio.sendString(lastString); - } - else if (stage === TestStage.Buffer) { - radio.sendBuffer(lastBuf); - } - basic.pause(10); - } - testIndex++; - } - - stage++; - if (stage > TestStage.Buffer) { - basic.showIcon(IconNames.Yes); - return; - } - } - }) - - radio.onReceivedNumber(function (receivedNumber: number) { - if (receivedNumber > lastAck) { - lastAck = receivedNumber; - } - }); -} - -let lastReceived: number; -let lastString: string; -let testIndex = -1; -let running = true; -let lastBuf: Buffer; - -let lastPacket = new radio.Packet(); -let currentPacket = new radio.Packet(); - -function truncateString(str: string, bytes: number) { - str = str.substr(0, bytes); - let buff = control.createBufferFromUTF8(str); - - while (buff.length > bytes) { - str = str.substr(0, str.length - 1); - buff = control.createBufferFromUTF8(str); - } - - return str; -} - -function initReceiver() { - - rand.reset(); - - basic.clearScreen(); - - radio.onDataReceived(function () { - radio.receiveNumber(); - - currentPacket.receivedNumber = radio.receivedNumber(); - currentPacket.receivedString = radio.receivedString(); - currentPacket.receivedBuffer = radio.receivedBuffer(); - - if (currentPacket.receivedNumber === lastPacket.receivedNumber && - currentPacket.receivedString === lastPacket.receivedString && - checkBufferEqual(currentPacket.receivedBuffer, lastPacket.receivedBuffer)) { - return; - } - - lastPacket.receivedNumber = currentPacket.receivedNumber - lastPacket.receivedString = currentPacket.receivedString - lastPacket.receivedBuffer = currentPacket.receivedBuffer - - switch (stage) { - case TestStage.Integer: - verifyInt(radio.receivedNumber()); - break; - case TestStage.Double: - verifyDouble(radio.receivedNumber()); - break; - case TestStage.IntValue: - verifyIntValue(radio.receivedString(), radio.receivedNumber()); - break; - case TestStage.DblValue: - verifyDblValue(radio.receivedString(), radio.receivedNumber()); - break; - case TestStage.String: - verifyString(radio.receivedString()); - break; - case TestStage.Buffer: - verifyBuffer(radio.receivedBuffer()); - break; - } - }) - - control.inBackground(function () { - while (running) { - radio.sendNumber(testIndex); - basic.pause(10) - } - }) -} - -function nextTest() { - testIndex++; - toggle(testIndex); - console.log(`test ${testIndex}`) - if (((testIndex + 1) % TEST_COUNT) === 0) { - stage++; - - if (stage > TestStage.Buffer) { - basic.showIcon(IconNames.Yes) - running = false; - } - } -} - -function verifyInt(int: number) { - if (int === lastReceived) return; - lastReceived = int; - if (lastReceived != getNextInt()) fail(); - nextTest() -} - -function verifyDouble(dbl: number) { - if (dbl === lastReceived) return; - lastReceived = dbl; - if (lastReceived != getNextDouble()) fail(); - nextTest() -} - -function verifyIntValue(name: string, val: number) { - if (val === lastReceived) return; - lastReceived = val; - - if (name != truncateString(getNextName(), 8) || lastReceived != getNextInt()) fail(); - nextTest() -} - -function verifyDblValue(name: string, val: number) { - if (val === lastReceived) return; - lastReceived = val; - - if (name != truncateString(getNextName(), 8) || lastReceived != getNextDouble()) fail(); - nextTest() -} - -function verifyString(str: string) { - if (!str || str === lastString) return; - - lastString = str; - let next = truncateString(getNextString(), 19); - - if (lastString !== next) { - console.log(`got ${control.createBufferFromUTF8(lastString).toHex()} expected ${control.createBufferFromUTF8(next).toHex()}`) - } - nextTest() -} - -function verifyBuffer(buf: Buffer) { - if (checkBufferEqual(lastBuf, buf)) return; - - lastBuf = buf; - - if (!checkBufferEqual(lastBuf, getNextBuffer())) { - fail(); - } - nextTest() -} - -function fail() { - control.panic(testIndex); -} - - -let _lastInt: number; -let _lastDbl: number; -let _lastStr: string; -let _lastBuf: Buffer; -let _lastNam: string; - -function getNextInt(): number { - let res = rand.next(); - if (!res || res === _lastInt) return getNextInt(); - _lastInt = res; - return res; -} - -function getNextDouble(): number { - let res = rand.next() / rand.next(); - if (res === _lastDbl) return getNextDouble(); - _lastDbl = res; - return res; -} - -function getNextString(): string { - let len = rand.randomRange(1, 19); - let res = ""; - for (let i = 0; i < len; i++) { - res += String.fromCharCode(rand.next() & 0xbfff); - } - - if (res === _lastStr) return getNextString(); - - _lastStr = res; - return res; -} - -function getNextName(): string { - let len = rand.randomRange(1, 8); - let res = ""; - for (let i = 0; i < len; i++) { - res += String.fromCharCode(rand.next() & 0xbfff); - } - - if (res === _lastNam) return getNextName(); - - _lastNam = res; - return res; -} - -function getNextBuffer(): Buffer { - let len = rand.randomRange(0, 8); - let res = control.createBuffer(len); - - for (let i = 0; i < len; i++) { - res[i] = rand.next() & 0xff; - } - - if (checkBufferEqual(_lastBuf, res)) return getNextBuffer(); - - _lastBuf = res; - return res; -} - -function checkBufferEqual(a: Buffer, b: Buffer) { - if (a === b) return true; - if ((!a && b) || (a && !b)) return false; - if (a.length != b.length) return false; - for (let i = 0; i < a.length; i++) { - if (a[i] !== b[i]) return false; - } - return true; -} - -input.onButtonPressed(Button.A, function () { - basic.showString("S"); - initSender(); -}) - -input.onButtonPressed(Button.B, function () { - basic.showString("R"); - initReceiver(); -}) - -function toggle(index: number) { - const x = index % 5; - const y = Math.idiv(index, 5) % 5; - led.toggle(x, y); -} diff --git a/package-lock.json b/package-lock.json index b7fca913..35a29d04 100644 --- a/package-lock.json +++ b/package-lock.json @@ -215,6 +215,13 @@ "bn.js": "^4.0.0", "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "assert": { @@ -368,9 +375,9 @@ "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==" }, "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-IUTD/REb78Z2eodka1QZyyEk66pciRcP6Sroka0aI3tG/iwIdYLrBD62RsubR7vqdt3WyX8p4jxeatzmRSphtA==" }, "body-parser": { "version": "1.19.0", @@ -554,20 +561,40 @@ "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.1.0.tgz", + "integrity": "sha512-VYxo7cDCeYUoBZ0ZCy4UyEUCP3smyBd4DRQM5nrFS1jJjPJjX7rP3oLRpPoWfkhQfyJ0I9ZbHbKafrFD/SGlrg==", "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } } }, "browserify-zlib": { @@ -579,12 +606,12 @@ } }, "browserslist": { - "version": "4.11.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.11.1.tgz", - "integrity": "sha512-DCTr3kDrKEYNw6Jb9HFxVLQNaue8z+0ZfRBRjmCunKDEXEBajKDj2Y+Uelg+Pi29OnvaSGwjOsnRyNEkXzHg5g==", + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.12.0.tgz", + "integrity": "sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg==", "requires": { - "caniuse-lite": "^1.0.30001038", - "electron-to-chromium": "^1.3.390", + "caniuse-lite": "^1.0.30001043", + "electron-to-chromium": "^1.3.413", "node-releases": "^1.1.53", "pkg-up": "^2.0.0" } @@ -692,9 +719,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001043", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001043.tgz", - "integrity": "sha512-MrBDRPJPDBYwACtSQvxg9+fkna5jPXhJlKmuxenl/ml9uf8LHKlDmLpElu+zTW/bEz7lC1m0wTDD7jiIB+hgFg==" + "version": "1.0.30001051", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001051.tgz", + "integrity": "sha512-sw8UUnTlRevawTMZKN7vpfwSjCBVoiMPlYd8oT2VwNylyPCBdMAUmLGUApnYYTtIm5JXsQegUAY7GPHqgfDzjw==" }, "caseless": { "version": "0.12.0", @@ -732,9 +759,9 @@ } }, "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", + "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", "requires": { "anymatch": "~3.1.1", "braces": "~3.0.2", @@ -743,7 +770,7 @@ "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", - "readdirp": "~3.3.0" + "readdirp": "~3.4.0" } }, "chownr": { @@ -936,6 +963,13 @@ "requires": { "bn.js": "^4.1.0", "elliptic": "^6.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "create-hash": { @@ -1005,9 +1039,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -1075,9 +1109,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -1129,9 +1163,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -1164,9 +1198,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -1361,6 +1395,13 @@ "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "dom-serialize": { @@ -1460,9 +1501,9 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.413", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.413.tgz", - "integrity": "sha512-Jm1Rrd3siqYHO3jftZwDljL2LYQafj3Kki5r+udqE58d0i91SkjItVJ5RwlJn9yko8i7MOcoidVKjQlgSdd1hg==" + "version": "1.3.428", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.428.tgz", + "integrity": "sha512-u3+5jEfgLKq/hGO96YfAoOAM1tgFnRDTCD5mLuev44tttcXix+INtVegAkmGzUcfDsnzkPt51XXurXZLLwXt0w==" }, "elliptic": { "version": "6.5.2", @@ -1476,6 +1517,13 @@ "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0", "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "encodeurl": { @@ -1831,9 +1879,9 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", + "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", "optional": true }, "function-bind": { @@ -1993,12 +2041,30 @@ "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" }, "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + } } }, "hash.js": { @@ -2761,12 +2827,19 @@ "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==" + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.5.tgz", + "integrity": "sha512-3hQhEUF027BuxZjQA3s7rIv/7VCQPa27hN9u9g87sEkWaKwQPuXOkVKtOeiyUrnWqTDiOs8Ed2rwg733mB0R5w==" }, "mime-db": { "version": "1.42.0", @@ -2825,9 +2898,9 @@ } }, "mkdirp-classic": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz", - "integrity": "sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g==" + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" }, "mocha": { "version": "5.1.0", @@ -2926,17 +2999,17 @@ "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, "node-abi": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.15.0.tgz", - "integrity": "sha512-FeLpTS0F39U7hHZU1srAK4Vx+5AHNVOTP+hxBNQknR/54laTHSFIJkDWDqiquY1LeLUgTfPN7sLPhMubx0PLAg==", + "version": "2.16.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.16.0.tgz", + "integrity": "sha512-+sa0XNlWDA6T+bDLmkCUYn6W5k5W6BPRL6mqzSCs6H/xUgtl4D5x2fORKDzopKiU6wsyn/+wXlRXwXeSp+mtoA==", "requires": { "semver": "^5.4.1" } }, "node-releases": { - "version": "1.1.53", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.53.tgz", - "integrity": "sha512-wp8zyQVwef2hpZ/dJH7SfSrIPD6YoJz6BDQDpGEkcA0s3LpAQoxBIYmfIq6QAhC1DhwsyCgTaTTcONwX8qzCuQ==" + "version": "1.1.55", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.55.tgz", + "integrity": "sha512-H3R3YR/8TjT5WPin/wOoHOUPHgvj8leuU/Keta/rwelEQN9pA/S2Dx8/se4pZ2LBxSd0nAGzsNzhqwa77v7F1w==" }, "noop-logger": { "version": "0.1.1", @@ -3254,9 +3327,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3283,9 +3356,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3314,9 +3387,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3344,9 +3417,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3369,9 +3442,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3394,9 +3467,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3419,9 +3492,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3447,9 +3520,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3482,9 +3555,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3518,9 +3591,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3551,9 +3624,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3586,9 +3659,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3619,9 +3692,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3654,9 +3727,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3681,9 +3754,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3714,9 +3787,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3747,9 +3820,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3779,9 +3852,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3811,9 +3884,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3843,9 +3916,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3876,9 +3949,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3907,9 +3980,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3939,9 +4012,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -3972,9 +4045,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -4000,9 +4073,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -4043,9 +4116,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -4075,9 +4148,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -4092,9 +4165,9 @@ } }, "postcss-value-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz", - "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" }, "prebuild-install": { "version": "5.3.3", @@ -4185,6 +4258,13 @@ "parse-asn1": "^5.0.0", "randombytes": "^2.0.1", "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "pump": { @@ -4250,18 +4330,18 @@ } }, "pxt-common-packages": { - "version": "6.21.9", - "resolved": "https://registry.npmjs.org/pxt-common-packages/-/pxt-common-packages-6.21.9.tgz", - "integrity": "sha512-vbUtA4GDE+N4YCaWdC9mBVr0B1xHMj5Ad4NtxFRxbpkeuceZDd0OvGfZvFYHn624t9jUcfuwl4dmhZrXUAPclg==", + "version": "6.21.10", + "resolved": "https://registry.npmjs.org/pxt-common-packages/-/pxt-common-packages-6.21.10.tgz", + "integrity": "sha512-GsNfjTe0YWQX4nn5lMiXST79yeb8OGCZbeJAP6I0dFfahoCM1H2tQqY/hMEPAznY1QZEgHkYvpw8SEWJvbK6Vw==", "requires": { "@jacdac/jacdac-ts": "^0.0.9", - "pxt-core": "^5.34.1" + "pxt-core": "^5.36.2" } }, "pxt-core": { - "version": "5.36.1", - "resolved": "https://registry.npmjs.org/pxt-core/-/pxt-core-5.36.1.tgz", - "integrity": "sha512-tls8in91gUL1IVG+iLnAsJqEwWsva645snPNvuzM/fzxmna6kA1ZwlHFDAPcpFukZ32cIORyRxRq8ZsplaKVTw==", + "version": "5.36.9", + "resolved": "https://registry.npmjs.org/pxt-core/-/pxt-core-5.36.9.tgz", + "integrity": "sha512-2rrKF+dSrYRwc0GjhPKNR4onzrN4njaWoXQrb9fBvOxsDvpRdrcNnzOi3X7aMv4ocoBYG6wEkCZnk+Ti+AOEFw==", "requires": { "applicationinsights-js": "^1.0.20", "bluebird": "3.5.1", @@ -4399,11 +4479,11 @@ } }, "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "requires": { - "picomatch": "^2.0.7" + "picomatch": "^2.2.1" } }, "request": { @@ -4504,9 +4584,9 @@ "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" }, "resolve": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.16.1.tgz", - "integrity": "sha512-rmAglCSqWWMrrBv/XM6sW0NuRFiKViw/W4d9EbC4pt+49H8JwHy+mcGmALTEg504AUDcLTvb1T2q3E9AnmY+ig==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "requires": { "path-parse": "^1.0.6" } @@ -4588,9 +4668,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", @@ -5001,9 +5081,9 @@ }, "dependencies": { "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { "chalk": "^2.4.2", "source-map": "^0.6.1", diff --git a/package.json b/package.json index 519b09f6..98b4be38 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,7 @@ "typescript": "^3.7.5" }, "dependencies": { - "pxt-common-packages": "6.21.9", - "pxt-core": "5.36.1" + "pxt-common-packages": "6.21.10", + "pxt-core": "5.36.9" } } diff --git a/pxtarget.json b/pxtarget.json index ca6c140e..05be91a8 100644 --- a/pxtarget.json +++ b/pxtarget.json @@ -302,14 +302,11 @@ "experiments": [ "allowPackageExtensions", "instructions", - "debugger", "debugExtensionCode", "bluetoothUartConsole", "bluetoothPartialFlashing", "simScreenshot", - "simGif", - "qrCode", - "githubBlocksDiff" + "simGif" ], "bluetoothUartFilters": [ { @@ -325,14 +322,6 @@ "name": "Reference", "path": "/reference" }, - { - "name": "Blocks", - "path": "/blocks" - }, - { - "name": "JavaScript", - "path": "/javascript" - }, { "name": "Hardware", "path": "/device" @@ -347,6 +336,12 @@ "coloredToolbox": true, "monacoToolbox": true, "hasAudio": true, + "socialOptions": { + "orgTwitterHandle": "MSMakeCode", + "hashtags": "MakeCode", + "discourse": "https://forum.makecode.com/", + "discourseCategory": "micro:bit" + }, "blocklyOptions": { "grid": { "spacing": 45, @@ -373,6 +368,7 @@ }, "highContrast": true, "greenScreen": true, + "accessibleBlocks": true, "print": true, "selectLanguage": true, "availableLocales": [ @@ -391,7 +387,7 @@ "ja", "ko", "nl", - "no", + "nb", "pl", "pt-BR", "pt-PT", @@ -416,6 +412,7 @@ }, "showProjectSettings": true, "scriptManager": true, + "debugger": true, "simGifTransparent": "rgba(0,0,0,0)", "simGifMaxFrames": 44, "simScreenshotMaxUriLength": 300000, diff --git a/sim/dalboard.ts b/sim/dalboard.ts index de2b9da4..6f18e9cd 100644 --- a/sim/dalboard.ts +++ b/sim/dalboard.ts @@ -1,7 +1,8 @@ /// namespace pxsim { - export class DalBoard extends CoreBoard { + export class DalBoard extends CoreBoard + implements RadioBoard { // state & update logic for component services ledMatrixState: LedMatrixState; edgeConnectorState: EdgeConnectorState; @@ -67,7 +68,10 @@ namespace pxsim { "P3": DAL.MICROBIT_ID_IO_P16 } }); - this.builtinParts["radio"] = this.radioState = new RadioState(runtime); + this.builtinParts["radio"] = this.radioState = new RadioState(runtime, { + ID_RADIO: DAL.MICROBIT_ID_RADIO, + RADIO_EVT_DATAGRAM: DAL.MICROBIT_RADIO_EVT_DATAGRAM + }); this.builtinParts["accelerometer"] = this.accelerometerState = new AccelerometerState(runtime); this.builtinParts["serial"] = this.serialState = new SerialState(); this.builtinParts["thermometer"] = this.thermometerState = new ThermometerState(); @@ -173,7 +177,7 @@ namespace pxsim { pxsim.initCurrentRuntime = initRuntimeWithDalBoard; } - export function board() { + export function board(): DalBoard { return runtime.board as DalBoard; } } diff --git a/sim/state/edgeconnectorsim.ts b/sim/state/edgeconnectorsim.ts index d4e04a45..b136fbd7 100644 --- a/sim/state/edgeconnectorsim.ts +++ b/sim/state/edgeconnectorsim.ts @@ -32,6 +32,11 @@ namespace pxsim { setPull(pull: number) { this.pull = pull; + switch(pull) { + case PinPullMode.PullDown: this.value = 0; break; + case PinPullMode.PullUp: this.value = 1023; break; + default: this.value = Math_.randomRange(0, 1023); break; + } } analogReadPin(): number { diff --git a/sim/state/misc.ts b/sim/state/misc.ts index c1e4a099..d672b190 100644 --- a/sim/state/misc.ts +++ b/sim/state/misc.ts @@ -47,6 +47,19 @@ namespace pxsim.control { export function waitMicros(micros: number) { // TODO } + export function waitForEvent(id: number, evid: number) { + const cb = getResume(); + board().bus.wait(id, evid, cb); + } + + export function millis(): number { + return runtime.runningTime(); + } + + export function micros(): number { + return runtime.runningTimeUs(); + } + export function deviceName(): string { let b = board(); @@ -94,14 +107,6 @@ namespace pxsim.pxtcore { } namespace pxsim.input { - export function runningTime(): number { - return runtime.runningTime(); - } - - export function runningTimeMicros(): number { - return runtime.runningTimeUs(); - } - export function calibrateCompass() { // device calibrates... } diff --git a/sim/state/radio.ts b/sim/state/radio.ts deleted file mode 100644 index 72edb713..00000000 --- a/sim/state/radio.ts +++ /dev/null @@ -1,147 +0,0 @@ -namespace pxsim { - export interface PacketBuffer { - payload: SimulatorRadioPacketPayload; - rssi: number; - serial: number; - time: number; - } - - // Extends interface in pxt-core - export interface SimulatorRadioPacketPayload { - bufferData?: Uint8Array; - } - - export class RadioDatagram { - datagram: PacketBuffer[] = []; - lastReceived: PacketBuffer = RadioDatagram.defaultPacket(); - - constructor(private runtime: Runtime) { - } - - queue(packet: PacketBuffer) { - if (this.datagram.length < 4) { - this.datagram.push(packet); - } - (runtime.board).bus.queue(DAL.MICROBIT_ID_RADIO, DAL.MICROBIT_RADIO_EVT_DATAGRAM); - } - - send(payload: SimulatorRadioPacketPayload) { - const b = board(); - Runtime.postMessage({ - type: "radiopacket", - broadcast: true, - rssi: -42, // -42 is the strongest signal - serial: b.radioState.transmitSerialNumber ? pxsim.control.deviceSerialNumber() : 0, - time: new Date().getTime(), - payload - }) - } - - recv(): PacketBuffer { - let r = this.datagram.shift(); - if (!r) r = RadioDatagram.defaultPacket(); - return this.lastReceived = r; - } - - private static defaultPacket(): PacketBuffer { - return { - rssi: -1, - serial: 0, - time: 0, - payload: { type: -1, groupId: 0, bufferData: new Uint8Array(0) } - }; - } - } - - export class RadioState { - power = 0; - transmitSerialNumber = false; - datagram: RadioDatagram; - groupId: number; - band: number; - - constructor(runtime: Runtime) { - this.datagram = new RadioDatagram(runtime); - this.power = 6; // default value - this.groupId = 0; - this.band = 7; // https://github.com/lancaster-university/microbit-dal/blob/master/inc/core/MicroBitConfig.h#L320 - } - - public setGroup(id: number) { - this.groupId = id & 0xff; // byte only - } - - setTransmitPower(power: number) { - power = power | 0; - this.power = Math.max(0, Math.min(7, power)); - } - - setTransmitSerialNumber(sn: boolean) { - this.transmitSerialNumber = !!sn; - } - - setFrequencyBand(band: number) { - band = band | 0; - if (band < 0 || band > 83) return; - this.band = band; - } - - raiseEvent(id: number, eventid: number) { - Runtime.postMessage({ - type: "eventbus", - broadcast: true, - id, - eventid, - power: this.power, - group: this.groupId - }) - } - - receivePacket(packet: SimulatorRadioPacketMessage) { - if (this.groupId == packet.payload.groupId) - this.datagram.queue(packet) - } - } -} - -namespace pxsim.radio { - export function raiseEvent(id: number, eventid: number): void { - board().radioState.raiseEvent(id, eventid); - } - - export function setGroup(id: number): void { - board().radioState.setGroup(id); - } - - export function setTransmitPower(power: number): void { - board().radioState.setTransmitPower(power); - } - - export function setFrequencyBand(band: number) { - board().radioState.setFrequencyBand(band); - } - - export function sendRawPacket(buf: RefBuffer) { - let cb = getResume(); - board().radioState.datagram.send({ - type: 0, - groupId: board().radioState.groupId, - bufferData: buf.data - }); - setTimeout(cb, 1); - } - - export function readRawPacket() { - const packet = board().radioState.datagram.recv(); - return new RefBuffer(packet.payload.bufferData) - } - - export function receivedSignalStrength(): number { - return board().radioState.datagram.lastReceived.rssi; - } - - export function onDataReceived(handler: RefAction): void { - pxtcore.registerWithDal(DAL.MICROBIT_ID_RADIO, DAL.MICROBIT_RADIO_EVT_DATAGRAM, handler); - readRawPacket(); - } -} \ No newline at end of file diff --git a/sim/tsconfig.json b/sim/tsconfig.json index d043b21a..2fa70fa6 100644 --- a/sim/tsconfig.json +++ b/sim/tsconfig.json @@ -11,5 +11,11 @@ "lib": ["dom", "dom.iterable", "scripthost", "es6"], "types": ["bluebird"], "typeRoots": ["../node_modules/@types"] - } + }, + "include": [ + "*.ts", + "state/*.ts", + "visuals/*.ts", + "../node_modules/pxt-common-packages/libs/radio/sim/*.ts" + ] } diff --git a/sim/visuals/microbit.ts b/sim/visuals/microbit.ts index c1c4bd14..f7e1fa7b 100644 --- a/sim/visuals/microbit.ts +++ b/sim/visuals/microbit.ts @@ -1106,10 +1106,10 @@ namespace pxsim.visuals { } else if (pin.mode & PinFlags.Touch) { v = pin.touched ? "0%" : "100%"; - if (text) text.textContent = ""; + if (text) text.textContent = "TOUCHED"; } else { v = "100%"; - if (text) text.textContent = ""; + if (text) text.textContent = "unused"; } if (v) svg.setGradientValue(this.pinGradients[index], v); } @@ -1558,4 +1558,4 @@ namespace pxsim.visuals { }) } } -} \ No newline at end of file +} diff --git a/targetconfig.json b/targetconfig.json index b5c30d3e..4b55f7ed 100644 --- a/targetconfig.json +++ b/targetconfig.json @@ -185,7 +185,18 @@ "EBOTICS/pxt-eboticsMIBO", "KitronikLtd/pxt-kitronik-halohd", "dugbraden/pxt-climate-action-kit", - "alsrobot-microbit-makecode-packages/MiniCruise" + "alsrobot-microbit-makecode-packages/MiniCruise", + "4tronix/ServoBit", + "DFRobot/pxt-maqueen", + "DFRobot/pxt-DFRobot-microIoT", + "mu-opensource/pxt-muvision", + "KitronikLtd/pxt-kitronik-clip-detector", + "DFRobot/pxt-DFRobot-NaturalScience", + "strawbees/pxt-robotic-inventions", + "daferdur/pxt-myHX711", + "CytronTechnologies/pxt-edubit", + "MakeAndLearn/pxt-microshield", + "elecfreaks/pxt-TPBot" ], "preferredRepos": [ "Microsoft/pxt-neopixel", @@ -199,33 +210,6 @@ "MKleinSB/pxt-foldio" ] }, - "languages": [ - "en", - "ar", - "cs", - "da", - "de", - "el", - "es-ES", - "fi", - "fr", - "hu", - "it", - "ja", - "ko", - "nl", - "no", - "pt-BR", - "pt-PT", - "ru", - "si-LK", - "sk", - "sv-SE", - "tr", - "uk", - "zh-CN", - "zh-TW" - ], "galleries": { "First Steps": "calliope/firststeps", "Tutorials": "calliope/tutorials", diff --git a/theme/site/elements/button.overrides b/theme/site/elements/button.overrides index cba59efe..c172e5f5 100644 --- a/theme/site/elements/button.overrides +++ b/theme/site/elements/button.overrides @@ -1,3 +1,3 @@ /******************************* Site Overrides -*******************************/ +*******************************/ \ No newline at end of file diff --git a/theme/site/globals/site.variables b/theme/site/globals/site.variables old mode 100644 new mode 100755