Skip to content

Commit ac0511a

Browse files
Systematically use relative_url filter for links (#408)
This allows us to deploy with a base URL which is helpful for preview deployments. It's not ideal but it's a pragmatic way to sort out our review deployment setup. This requires Jekyll to be upgraded to the latest 3.x for relative_url support. Note if you don't install the latest it just silently fails to work.
1 parent e31d61f commit ac0511a

25 files changed

+153
-154
lines changed

accessories/making-accessories.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@ A [list of available accessories](https://microbit.org/buy/accessories/) is main
1414

1515
## Using the Edge Connector
1616

17-
The micro:bit [card edge connector](/hardware/edgeconnector), commonly referred to as the 'edge connector' or the 'pins', is compatible with a standard 1.27mm, 2x40 edge connector socket.
17+
The micro:bit [card edge connector]({{ "/hardware/edgeconnector" | relative_url }}), commonly referred to as the 'edge connector' or the 'pins', is compatible with a standard 1.27mm, 2x40 edge connector socket.
1818

1919
Where possible your accessory design should implement this socket, making it simple for your users to plug in and remove the micro:bit board.
2020

21-
There are [limitations to the current that can be drawn from the micro:bit](/hardware/powersupply), accessories must be designed carefully to ensure they do not damage the micro:bit, or that the micro:bit cannot damage them.
21+
There are [limitations to the current that can be drawn from the micro:bit]({{ "/hardware/powersupply" | relative_url }}), accessories must be designed carefully to ensure they do not damage the micro:bit, or that the micro:bit cannot damage them.
2222

23-
- [micro:bit edge connector and pinout](/hardware/edgeconnector)
24-
- [powering accessories from the micro:bit](/hardware/powersupply)
23+
- [micro:bit edge connector and pinout]({{ "/hardware/edgeconnector" | relative_url }})
24+
- [powering accessories from the micro:bit]({{ "/hardware/powersupply" | relative_url }})
2525

2626
### V2 revision
2727

@@ -31,7 +31,7 @@ The edge connector on the <span class="V2">V2</span> board revision is backwards
3131

3232
There are two rounded rectangular pads on the back of the micro:bit. These allow you to connect a battery holder via a mechanism other than the JST connector.
3333

34-
![Picture of the two rounded rectangular pads](/docs/accessories/assets/making-accessories-d7c25.png)
34+
![Picture of the two rounded rectangular pads]({{ "/docs/accessories/assets/making-accessories-d7c25.png" | relative_url }})
3535

3636
The upper pad is 0V or GND and the lower pad is 3V.
3737

blog/latest-revision-announcement.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ lang: en
1313
Today we’re [announcing a new version of the BBC micro:bit](https://microbit.org/new-microbit/), adding a speaker, a microphone and the CPU power to run AI and Machine Learning workloads. With these additional capabilities, we are opening up the world of AI and ML to the same collaborative design and innovation that led to the original micro:bit’s success.
1414

1515
This article is a more technical companion to the [news over at microbit.org](https://microbit.org/new-microbit/).
16-
17-
![micro:bit V2 image](/docs/blog/assets/latest-revision/microbit-v2-tech-site.png){: width="600"}
16+
![micro:bit V2 image]({{ "/docs/blog/assets/latest-revision/microbit-v2-tech-site.png" | relative_url }}){: width="600"}
1817

1918
Although the latest micro:bit isn’t available to buy yet, we’re talking about it now because the micro:bit isn’t about one organisation, or the official editors, or even one device.
2019

@@ -34,7 +33,7 @@ At the Micro:bit Educational Foundation we are working with Lancaster University
3433

3534
## We’re building this together, not alone
3635

37-
![A wall of micro:bit accessories](/docs/blog/assets/latest-revision/accessory-wall-bett.jpg){: width="600"}
36+
![A wall of micro:bit accessories]({{ "/docs/blog/assets/latest-revision/accessory-wall-bett.jpg" | relative_url }}){: width="600"}
3837
*The wall of accessories displayed at BETT*
3938

4039
We recognise and support the huge contribution the wider micro:bit ecosystem makes to our community, and so we are making available all [key technical information about the new micro:bit](https://support.microbit.org/support/solutions/articles/19000119052-details-of-micro-bit-v2), and open source tools to make it easy to support in advance of the device being available to users.
@@ -49,11 +48,11 @@ We’ve compiled all this information on an updated version of tech.microbit.org
4948

5049
## Creating code for the latest micro:bit
5150

52-
The latest micro:bit supports all features of the original version so there are many cases where a user won’t need to distinguish between the devices; every tutorial or programme that already exists today is supported on the latest hardware. However, as the machine code that runs on the two devices is different, the latest micro:bit supports a new kind of hex. We’re calling it ‘[universal hex](/software/hex-format/)’: this contains the machine code for both versions of the micro:bit. Thanks to the fantastic support of NXP who have worked on [DAPLink](https://github.com/ARMmbed/DAPLink), the Arm project that enables the micro:bit USB interface, the latest micro:bit is able to choose which code it should use from the universal hex. The files are designed so the original micro:bits do not need any update to use them.
53-
![Creation of a Universal Hex](/docs/blog/assets/latest-revision/uhex2.png)
51+
The latest micro:bit supports all features of the original version so there are many cases where a user won’t need to distinguish between the devices; every tutorial or programme that already exists today is supported on the latest hardware. However, as the machine code that runs on the two devices is different, the latest micro:bit supports a new kind of hex. We’re calling it ‘[universal hex]({{ "/software/hex-format/" | relative_url }})’: this contains the machine code for both versions of the micro:bit. Thanks to the fantastic support of NXP who have worked on [DAPLink](https://github.com/ARMmbed/DAPLink), the Arm project that enables the micro:bit USB interface, the latest micro:bit is able to choose which code it should use from the universal hex. The files are designed so the original micro:bits do not need any update to use them.
52+
![Creation of a Universal Hex]({{ "/docs/blog/assets/latest-revision/uhex2.png" | relative_url }})
5453

5554
To make the experience of developing programs for these universal hexes as seamless as possible we’ve deepened our collaboration with Arm, Lancaster University and [Microsoft Research](https://www.microsoft.com/en-us/research/project/the-bbc-microbit-and-microsoft/), who were [co-creators of the original micro:bit,](https://www.lancaster.ac.uk/news/articles/2016/lancaster-university-helps-bbc-get-kids-coding/). Because of the open source nature of [Lancaster’s CODAL](https://github.com/lancaster-university/codal), the evolution of the original microbit-dal, we had a ready platform to make the latest micro:bit work. We have also included a full compatibility layer for [microbit-dal](https://github.com/lancaster-university/microbit-dal), so that existing projects and environments can be easily recompiled to work on the latest board. On top of the careful compatibility work there’s plenty of exciting new features designed for the latest hardware, like an advanced SoundExpressions synthesiser and audio pipeline architecture.
56-
![micro:bit Software Architecture with CODAL](/docs/blog/assets/latest-revision/software-overview-v2.svg){: width="600"}
55+
![micro:bit Software Architecture with CODAL]({{ "/docs/blog/assets/latest-revision/software-overview-v2.svg" | relative_url }}){: width="600"}
5756

5857
MakeCode, MicroPython and Scratch are using CODAL to support the new device, and we recommend that anyone building software to run on the micro:bit do the same to ensure consistent experience across micro:bit editors. This will also ensure that as new features get added they can be incorporated easily and made available to users (it’s easy to forget that micro:bit radio wasn’t in the original micro:bit release!)
5958

@@ -63,7 +62,7 @@ When it launched in 2015, one of the key goals of the original micro:bit was to
6362

6463
Part of ensuring this was putting the same hardware that real developers were using at the time into the hands of students. This is what has enabled some of the more incredible uses of the micro:bit: [Handwriting recognition using an optical mouse sensor](https://www.cs.ox.ac.uk/teaching/studentprojects/630.html); [use in a BLE mesh](https://docs.zephyrproject.org/latest/samples/bluetooth/mesh_demo/README.html), a [presentation remote](https://os.mbed.com/teams/microbit/code/microbit_presenter/), or a [custom piece of assistive technology.](https://hackaday.io/project/26143-handshake)
6564

66-
![Creation of a Universal Hex](/docs/blog/assets/latest-revision/nrf52833.jpg){: width="600"}
65+
![Creation of a Universal Hex]({{ "/docs/blog/assets/latest-revision/nrf52833.jpg" | relative_url }}){: width="600"}
6766

6867
With the latest micro:bit, we’re doing this again: the [nRF52833](https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52833) is a modern, exciting part recently released by Nordic, and being used across the industry for new designs. It’s capable of running machine learning workloads, and so opens up a new realm of possibilities, both for applications of the device, but especially for helping to expose and demonstrate what machine learning really is: not magic, but sufficiently advanced application of technology.
6968

@@ -73,21 +72,21 @@ The original micro:bit elegantly demonstrated the technology in a phone (the scr
7372

7473
Music and sound on the micro:bit were pioneered in MicroPython as part of the original community effort around the BBC micro:bit – not least thanks to Nicholas Tollervey and Mark Shannon for introducing things like the [speech synthesizer](https://www.nordicsemi.com/Products/Low-power-short-range-wireless/nRF52833)! Now with the addition of a speaker to the latest micro:bit it is really coming into its own. If you connect headphones or an amplified speaker, you get even better quality sound. Just as the 5x5 display on the micro:bit is perfect for getting started, but a colour LCD is still a welcome way to extend your projects, the sound driver written by Lancaster University is capable of reproducing high quality sound on the edge connector. We don’t expect to see the end of crocodile clips connecting headphone jack sockets just yet!
7574

76-
![micro:bit guitar](/docs/blog/assets/latest-revision/microbit-guitar.jpg){: width="600"}
75+
![micro:bit guitar]({{ "/docs/blog/assets/latest-revision/microbit-guitar.jpg" | relative_url }}){: width="600"}
7776

7877
But beyond music, sound is the way many of us communicate. Our voice and our accent is part of our identity and personality. When adding ‘sound’ as a feature of the micro:bit we wanted to make sure we gave it a personality too. The careful thought put into the visual and structural elements of the micro:bit, led by Technology Will Save Us in 2015 showed how paying careful attention to design of a device had a huge impact its approachability, and the ease with which people could make an emotional connection to hardware. The sounds for the micro:bit learn from this, and are there to make the micro:bit’s voice friendly and approachable. We’ve been working on a synthesiser to make these amazing sounds, with lots of input from a sound designer to tune it and make it useful.
7978

8079
The microphone, like the microphones on a smart speaker or digital assistant, allows the device to respond to sound and sense the noise around the micro:bit. Paired with the greater capability of the new micro:bit this is opening up fantastic potential around AI and machine learning with sound. Exemplifying the thought given to educational environments, the microphone’s dedicated ‘operating’ indicator doesn’t interfere with the visual design of the board when off, but makes it clear when the microphone is on and sensing sound. This allows teachers to engage with students about privacy issues and the impact of listening devices.
8180

8281
## Exploring AI and ML
8382

84-
![Tensorflow Logo](/docs/blog/assets/latest-revision/tensorflow-logo.png){: width="300"}
83+
![Tensorflow Logo]({{ "/docs/blog/assets/latest-revision/tensorflow-logo.png" | relative_url }}){: width="300"}
8584

8685
Within days of getting a device, Gordon Williams, lead developer of [Espruino](https://www.espruino.com/) had the micro:bit supported in their online platform. This allowed JavaScript programs to run on the device, including Espruino’s gesture recognition libraries that were originally designed for bangle.js and use Tensorflow Lite. Unlike the "gestures" you might be used to on the micro:bit, like "shake", this demo allows you to train a machine learning model to recognise any gestures you can collect data for - it takes recordings of the gestures being performed, and builds a model that can recognise them. This means you can have much more complex, subtle gestures, and even customise them for yourself or something you’ve attached the micro:bit to.
8786

8887
[Edge Impulse](https://www.edgeimpulse.com/), working similarly fast, took a video recording of each member of the micro:bit team saying “micro:bit” three times (what better way to conclude the weekly team meeting?) and used the Edge Impulse cloud service to create a model that could recognise the word “micro:bit” being said. [You can read more about this demo here](https://www.edgeimpulse.com/blog/voice-activated-microbit), but it clearly shows the possibility of training micro:bits to recognise unique sounds!
8988

90-
![Edge Impulse visualisation](/docs/blog/assets/latest-revision/edge-impulse.png)
89+
![Edge Impulse visualisation]({{ "/docs/blog/assets/latest-revision/edge-impulse.png" | relative_url }})
9190

9291
## What’s next?
9392

bluetooth/index.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ The micro:bit supports Bluetooth via a single, custom-developed, BBC micro:bit p
3333

3434
A pre-compiled hex file is available to download for <span class="v2">V2</span> that enables all Bluetooth services.
3535

36-
[Bluetooth all services CODAL](/docs/bluetooth/assets/BLE_All_Services_CODAL_0-2-40-ABDLIMTU-P.hex){: .btn.sm-btn download}
36+
[Bluetooth all services CODAL]({{ "/docs/bluetooth/assets/BLE_All_Services_CODAL_0-2-40-ABDLIMTU-P.hex" | relative_url }}){: .btn.sm-btn download}
3737

3838
The source for this can be found in the [microbit-v2-samples](https://github.com/lancaster-university/microbit-v2-samples/blob/master/source/samples/BLETest.cpp) repository.
3939

@@ -43,9 +43,9 @@ The BBC micro:bit <span class="v1">V1</span> [Bluetooth profile is defined in th
4343

4444
You can flash one of two pre-compiled Hex files to the micro:bit <span class="v1">V1</span> that enable bluetooth services. As Bluetooth is memory intensive, these are supplied as either 'without Magnetometer Service' or 'without DFU Service':
4545

46-
[Without magnetometer](/docs/bluetooth/assets/BLE_All_Services_DAL_2-1-1-No-Mag.hex){: .btn.sm-btn download}
46+
[Without magnetometer]({{ "/docs/bluetooth/assets/BLE_All_Services_DAL_2-1-1-No-Mag.hex" | relative_url }}){: .btn.sm-btn download}
4747

48-
[Without DFU](/docs/bluetooth/assets/BLE_All_Services_DAL_2-1-1-No-DFU.hex){: .btn.sm-btn download}
48+
[Without DFU]({{ "/docs/bluetooth/assets/BLE_All_Services_DAL_2-1-1-No-DFU.hex" | relative_url }}){: .btn.sm-btn download}
4949

5050
The DAL contains the [C++ source for the BLE service files](https://github.com/lancaster-university/microbit-samples/blob/master/source/examples/bluetooth-services/main.cpp).
5151

@@ -103,7 +103,7 @@ As an example, the tools at [ML Machine](https://ml-machine.org/) have been buil
103103
Note: on micro:bit V1, there is very limited memory available when also using the Bluetooth extension.
104104

105105
Here is an example of how to add and use the Bluetooth extension in MakeCode:
106-
![adding makecode bluetooth extension](/docs/bluetooth/assets/add_bluetooth_extension.gif)
106+
![adding makecode bluetooth extension]({{ "/docs/bluetooth/assets/add_bluetooth_extension.gif" | relative_url }})
107107

108108
## Apps
109109

hardware/1-3-revision.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@ lang: en
1515
* TOC
1616
{:toc}
1717

18-
![1.3 diagram](/docs/hardware/assets/microbit-overview.png)
18+
![1.3 diagram]({{ "/docs/hardware/assets/microbit-overview.png" | relative_url }})
1919

2020
## Hardware block diagram
2121

22-
![1.3 block](/docs/hardware/assets/v1-block.svg)
22+
![1.3 block]({{ "/docs/hardware/assets/v1-block.svg" | relative_url }})
2323

2424
## Getting Started With the micro:bit Hardware
2525

@@ -29,9 +29,9 @@ The interface processor does not connect to any of the micro:bit peripherals.
2929

3030
Two key pieces of information to help understand the internals of the micro:bit are:
3131

32-
- The [schematics](../schematic), which shows the detailed component data and connectivity of the device.
32+
- The [schematics]({{ "/hardware/schematic/" | relative_url }}), which shows the detailed component data and connectivity of the device.
3333

34-
- The [reference design](../reference-design), which is a complete module design of a compatible micro:bit, and is designed to be a starting point for anyone interested in understanding the micro:bit or designing their own variant.
34+
- The [reference design]({{ "/hardware/reference-design/" | relative_url }}), which is a complete module design of a compatible micro:bit, and is designed to be a starting point for anyone interested in understanding the micro:bit or designing their own variant.
3535

3636
## Hardware Description
3737

@@ -48,7 +48,7 @@ There is an on-board 2.4GHz radio engine used to provide Bluetooth capabilities
4848
| RAM | 16KB
4949
| Speed | 16MHz
5050
| Debug | SWD, jlink/OB
51-
| More Info | [here](/software)
51+
| More Info | [here]({{ "/software" | relative_url }})
5252

5353
### Bluetooth Wireless Communication
5454

@@ -65,7 +65,7 @@ This allows the micro:bit to communicate with a wide range of Bluetooth devices,
6565
| Role | [GAP Peripheral](https://bluetooth-developer.blogspot.com/2016/07/microbit-and-bluetooth-roles.html)
6666
| Congestion avoidance | Adaptive Frequency Hopping
6767
| Profiles | 1 [BBC micro:bit profile](https://lancaster-university.github.io/microbit-docs/ble/profile/)
68-
| More Info | [here](/bluetooth)
68+
| More Info | [here]({{ "/bluetooth" | relative_url }})
6969

7070
### Low Level Radio Communications
7171

@@ -179,10 +179,10 @@ The edge connector brings out many of the GPIO circuits of the application proce
179179
|| 3 may be assigned to an optional SPI communications interface
180180
|| 3 may be assigned for up to 3 simultaneous touch sensing inputs
181181
|ADC resolution | 10 bit (0..1023)
182-
| Edge Connector| [Edge connector](/hardware/edgeconnector/)
182+
| Edge Connector| [Edge connector]({{ "/hardware/edgeconnector/" | relative_url }})
183183
| Pitch | 1.27mm, 80 way double sided.
184184
| Pads| 5 pads, with 4mm holes
185-
| More Info | [here](/hardware/edgeconnector/)
185+
| More Info | [here]({{ "/hardware/edgeconnector/" | relative_url }})
186186

187187
### Power Supply
188188

@@ -196,7 +196,7 @@ Power to the micro:bit may be provided via the USB connection, via the interface
196196
| Battery connector | JST X2B-PH-SM4-TB
197197
| Battery current | TBC
198198
| Max current provided via edge connector | 90mA
199-
| More Info | [here](../powersupply)
199+
| More Info | [here]({{ "/hardware/powersupply/" | relative_url }})
200200

201201
### Interface
202202

@@ -210,7 +210,7 @@ The interface chip handles the USB connection, and is used for flashing new code
210210
| RAM | 16KB
211211
| Speed | 16MHz
212212
| Debug capabilities | SWD
213-
| More Info | [here](/software/daplink-interface/)
213+
| More Info | [here]({{ "/software/daplink-interface/" | relative_url }})
214214

215215
### USB Communications
216216

@@ -225,7 +225,7 @@ The micro:bit has an on-board USB communications stack, that is built into the f
225225
| | [Communications Device Class (CDC)](https://en.wikipedia.org/wiki/USB_communications_device_class)
226226
| | [CMSIS-DAP HID & WinUSB](https://arm-software.github.io/CMSIS_5/DAP/html/index.html)
227227
| | [WebUSB CMSIS-DAP HID](https://wicg.github.io/webusb/)
228-
| More Info | [here](/software/daplink-interface/)
228+
| More Info | [here]({{ "/software/daplink-interface/" | relative_url }})
229229

230230
### Debugging
231231

@@ -249,9 +249,9 @@ We have some [nice 2D and 3D CAD drawings and models of the micro:bit](https://g
249249

250250
## Further information
251251

252-
- [Schematic](../schematic)
252+
- [Schematic]({{ "/hardware/schematic" | relative_url }})
253253

254-
- [Reference Design](../reference-design)
254+
- [Reference Design]({{ "/hardware/reference-design" | relative_url }})
255255

256256
- [Nordic NRF51 datasheet](http://infocenter.nordicsemi.com/pdf/nRF51822_PS_v3.1.pdf)
257257

@@ -275,4 +275,4 @@ We have some [nice 2D and 3D CAD drawings and models of the micro:bit](https://g
275275

276276
- [Arm Mbed overview](https://www.mbed.com/en/about-mbed/what-mbed/)
277277

278-
- [Fritzing diagram, contributed by Kok Ho Huen](/docs/hardware/assets/Microbit.fzpz.zip)
278+
- [Fritzing diagram, contributed by Kok Ho Huen]({{ "/docs/hardware/assets/Microbit.fzpz.zip" | relative_url }})

0 commit comments

Comments
 (0)