BBC micro:bit v1.5

microbit_acc.jpg

microbit_front.jpg

microbit_back.jpg

microbitv1.5.jpg

BBC development board containing a NRF51822-QFAA ARM Cortex-M0 processor with 256KB flash and 16KB RAM.

The MCU on this device is now obsolete and so are the `bare metal' development tools.

The most modern platform may be Arduino 1.8.19 which may give an insight as to how to create a modernised SDK.

nRF51 SDK

The nRF51 device and its SDK are now obsolete so hardly viable to develop an application with.

Arduino

Arduino IDE 1.8.19 supports nRF5 micro-controllers and could be a useful tool to develop applications on the micro:bit and it appears to work.

Install guide for nRF51

Zadig is required to provide LIBUSB to the IDE. When using J-Link, this is found as “BULK interface (Interface 2)”.

When trying to flash the Softdevice there will be an error about fetching the zip file. To remedy this place the hex file in the Arduino AppData folder.

AppData/Local/Arduino15/packages/sandeepmistry/hardware/nRF5/0.8.0/cores/nRF5/SDK/components/softdevice/s130/hex/s130_nrf51_2.0.1_softdevice.hex

The Softdevice hex file is located in the SDK.

Install guide for BLE

Example code

SEGGER J-Link on board is available for all flavours of the micro:bit to enable a professional debug interface.

Hold down reset and plug board into PC.

Drag J-Link for BBC micro:bit version 1 to MAINTENANCE directory.

Power cycle board and J-Link will become available.

$ /mnt/c/Program\ Files/SEGGER/JLink/JLink.exe
SEGGER J-Link Commander V7.98c (Compiled Aug  7 2024 15:41:14)
DLL version V7.98c, compiled Aug  7 2024 15:40:25

Connecting to J-Link via USB...O.K.
Firmware: J-Link OB-BBC-microbit compiled Nov 16 2022 11:02:58
Hardware version: V1.00
J-Link uptime (since boot): 0d 00h 00m 00s
S/N: 786600064
VTref=3.300V


Type "connect" to establish a target connection, '?' for help
J-Link>connect
Please specify device / core. <Default>: NRF51822_XXAA
Type '?' for selection dialog
Device>NRF51822_XXAA
Please specify target interface:
  J) JTAG (Default)
  S) SWD
  T) cJTAG
TIF>s
Specify target interface speed [kHz]. <Default>: 4000 kHz
Speed>
Device "NRF51822_XXAA" selected.


Connecting to target via SWD
InitTarget() start
InitTarget() end - Took 12us
Found SW-DP with ID 0x0BB11477
DPIDR: 0x0BB11477
CoreSight SoC-400 or earlier
Scanning AP map to find all available APs
AP[1]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x04770021)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xF0000000
CPUID register: 0x410CC200. Implementer code: 0x41 (ARM)
Found Cortex-M0 r0p0, Little endian.
FPUnit: 4 code (BP) slots and 0 literal slots
CoreSight components:
ROMTbl[0] @ F0000000
[0][0]: E00FF000 CID B105100D PID 000BB471 ROM Table
ROMTbl[1] @ E00FF000
[1][0]: E000E000 CID B105E00D PID 000BB008 SCS
[1][1]: E0001000 CID B105E00D PID 000BB00A DWT
[1][2]: E0002000 CID B105E00D PID 000BB00B FPB
[0][1]: F0002000 CID B105900D PID 000BB9A3 ???
SetupTarget() start
SetupTarget() end - Took 746us
Memory zones:
  Zone: "Default" Description: Default access mode
Cortex-M0 identified.
J-Link>

Resources

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies