Files
alire-index-community/index/mi/microbit_examples/microbit_examples-0.1.0.toml
T
Fabien Chouteau 1452ad5f47 nrf5x_hal 0.1.0: fix dependencies (#551)
* nrf5x-hal-0.1.0: fix dependencies

`~` was intended here and required since `cortex_m=0.4.0` is breaking the builds.

* Update microbit_examples-0.1.0.toml

* Update nrf5x_hal-0.1.0.toml
2022-06-23 11:36:12 +02:00

122 lines
4.1 KiB
TOML

description = "Examples and tutorials for Ada on the BBC micro:bit"
long-description = '''# microbit_examples
This crate is a snapshot of the micro:bit examples in [Ada Drivers
Library](https://github.com/AdaCore/Ada_Drivers_Library/tree/master/arch/ARM/cortex_m).
Any bug report, issue, contribution must be adressed to the [Ada Drivers
Library](https://github.com/AdaCore/Ada_Drivers_Library/) repo.
The Micro:Bit is a very small ARM Cortex-M0 board designed by the BBC for
computer education. It's fitted with a [Nordic
nRF51](https://www.nordicsemi.com/eng/Products/Bluetooth-low-energy/nRF51822)
Bluetooth enabled microcontroller and an embedded programmer. You can get it
at:
- [Pimoroni (UK/EU)](https://shop.pimoroni.com/collections/micro-bit/products/microbit)
- [Kitronik (UK/EU)](https://www.kitronik.co.uk/5613-bbc-microbit-board-only.html)
- [ThePiHut (UK/EU)](https://thepihut.com/collections/microbit/products/micro-bit)
- [AdaFruit (US)](https://www.adafruit.com/products/3530)
# How to setup the Ada development environment for the Micro:Bit
GNAT Community now comes with micro:bit and pyOCD support built-in. So you only
need to download the ARM ELF and the native package from
[here](https://www.adacore.com/download)
## pyOCD programmer
The Micro:Bit comes with an embedded programming/debugging probe implementing
the
[CMSIS-DAP](https://docs.mbed.com/docs/mbed-os-handbook/en/latest/advanced/DAP/)
protocol defined by ARM.
To use it on Linux, you might need privileges to access the USB ports without
which the flash program will say "No connected boards".
On Ubuntu, you can do it by creating (as administrator) the file
/etc/udev/rules.d/mbed.rules and add the line:
```
SUBSYSTEM=="usb", ATTR{idVendor}=="0d28", ATTR{idProduct}=="0204", MODE="0666"
```
then restarting the service by doing
```shell
$ sudo udevadm trigger
```
## Open one of example projects and build it
Start GNAT Programming studio (GPS) with Alire and one micro:bit example
project:
- `alr edit analog_in/analog_in.gpr`
- `alr edit follower/follower.gpr`
- `alr edit digital_in/digital_in.gpr`
- `alr edit accelerometer/accelerometer.gpr`
- `alr edit buttons/buttons.gpr`
- `alr edit BLE_beacon/BLE_beacon.gpr`
- `alr edit digital_out/digital_out.gpr`
- `alr edit servos/servos.gpr`
- `alr edit neopixel/neopixel.gpr`
- `alr edit text_scrolling/text_scrolling.gpr`
- `alr edit analog_out/analog_out.gpr`
- `alr edit music/music.gpr`
Press F4 and then press Enter to build the project.
## Program the board
Plug your micro:bit board with a USB cable, and wait for the system to
recognize it. This can take a few seconds
In the GPS toolbar, click on the "flash to board" button to program the
micro:bit.
After a few seconds, you should see a text scrolling on the LED matrix.
That's it, you are ready to hack the micro:bit with Ada!
'''
name = "microbit_examples"
version = "0.1.0"
licenses = "BSD-3-Clause"
website="https://github.com/AdaCore/Ada_Drivers_Library/"
maintainers = ["chouteau@adacore.com"]
maintainers-logins = ["Fabien-Chouteau"]
project-files = ["analog_in/analog_in.gpr",
"follower/follower.gpr",
"digital_in/digital_in.gpr",
"accelerometer/accelerometer.gpr",
"buttons/buttons.gpr",
"BLE_beacon/BLE_beacon.gpr",
"digital_out/digital_out.gpr",
"servos/servos.gpr",
"neopixel/neopixel.gpr",
"text_scrolling/text_scrolling.gpr",
"analog_out/analog_out.gpr",
"music/music.gpr"]
tags = ["embedded", "nostd", "microbit", "nrf51"]
auto-gpr-with=false # User has to select only one project file
[[depends-on]]
microbit_bsp = "~0.1.0"
[gpr-set-externals]
MICROBIT_BSP_RUNTIME_CHECKS="enabled"
MICROBIT_BSP_CONTRACTS="enabled"
MICROBIT_BSP_BUILD_MODE="debug"
NRF5X_RUNTIME_CHECKS="enabled"
NRF5X_CONTRACTS="enabled"
NRF5X_BUILD_MODE="debug"
CORTEXM_RUNTIME_CHECKS="enabled"
CORTEXM_CONTRACTS="enabled"
CORTEXM_BUILD_MODE="debug"
[origin]
commit = "a926cc69faf2cb7805f5dff508b587f2ed7fc065"
url = "git+https://github.com/Fabien-Chouteau/microbit_examples.git"