diff --git a/documentation/source/quick-start/Avenger-96-Board b/documentation/source/quick-start/Avenger-96-Board index 8b137891791fe96927ad78e64b0aad7bded08bdc..58ff028932fd7c145c80ea280875d288df0e134d 100644 --- a/documentation/source/quick-start/Avenger-96-Board +++ b/documentation/source/quick-start/Avenger-96-Board @@ -1 +1,113 @@ +Nitrogen 96 ARM Board +#################### +Nitrogen is a 96Boards compliant IoT Edition board which aims to provide economic and compact BLE solutions for a variety of IoT projects. This board features the nRF52832 microcontroller by Nordic, 64kb of RAM and 512kb of onboard flash storage. An easily accessible 40 pin low-speed expansion connector and onboard antenna offer a wide variety of IO on the much desired 96Boards IoT form factor. + +Build for nitrogen +***************** +You can build Zephyr samples. There are several sample recipes. +For example, to build the Zephyr "philosophers" sample: + + $ MACHINE=qemu-x86 bitbake zephyr-philosophers + +You can then run the created "philosophers" image in qemu: + + $ runqemu qemu-x86 + +The same sample, for ARM image: + + $ MACHINE=qemu-cortex-m3 bitbake zephyr-philosophers + $ runqemu qemu-cortex-m3 + +The same sample, for Nios2 image: + + $ MACHINE=qemu-nios2 bitbake zephyr-philosophers + $ runqemu qemu-nios2 + +Flashing +******** + +You can flash Zephyr samples to boards. Currently, the following MACHINEs +are supported: + * DFU: + - arduino-101-sss + - arduino-101 + - arduino-101-ble + * pyocd: + - 96b-nitrogen + +To flash the example you built with command e.g. + + $ MACHINE=96b-nitrogen bitbake zephyr-philosophers + + + +call similar command with explicit flash_usb command: + + $ MACHINE=96b-nitrogen bitbake zephyr-philosophers -c flash_usb + +dfu-util and/or pyocd need to be installed in your system. If you observe +permission errors or the flashing process seem to hang, follow those instructions: +https://github.com/pyocd/pyOCD/tree/master/udev + + +Flashing Zephyr onto 96Boards Nitrogen +************************************** +The 96Boards Nitrogen board can be flashed via the CMSIS DAP interface, which is provided by the micro USB interface to the LPC11U35 chip. + +Using the CMSIS-DAP interface, the board can be flashed via the USB storage interface (drag-and-drop) and also via pyOCD. + +Installing pyOCD +**************** +The latest stable version of pyOCD can be installed via pip as follows: + + **pip install --pre -U pyocd** + +To install the latest development version (master branch), do the following: + + **pip install --pre -U git https://github.com/mbedmicro/pyOCD.git#egg=pyOCD** + +You can then verify that your board is detected by pyOCD by running: + + **pyocd-flashtool -l** + +Building and Running Zephyr Tests +********************************* +Presently only toolchains for ARM, x86, IAMCU and Nios2 are supported. +(For ARM we use CortexM3 toolchain) + +To run Zephyr Test using Yocto Image Tests, ensure following in local.conf: + + INHERIT += "testimage" + +You can build and test an individual existing Zephyr test. +This is done by appending the actual test name to the "zephyr-kernel-test", +for example: + + $ MACHINE=qemu-x86 bitbake zephyr-kernel-test-sleep + $ MACHINE=qemu-x86 bitbake zephyr-kernel-test-sleep -c testimage + +You can also build and run all Zephyr existing tests (as listed in the file +zephyr-kernel-test.inc). For example: + + $ MACHINE=qemu-x86 bitbake zephyr-kernel-test-all + $ MACHINE=qemu-x86 bitbake zephyr-kernel-test-all -c testimage +or + $ MACHINE=qemu-cortex-m3 bitbake zephyr-kernel-test-all + $ MACHINE=qemu-cortex-m3 bitbake zephyr-kernel-test-all -c testimage +or + $ MACHINE=qemu-nios2 bitbake zephyr-kernel-test-all + $ MACHINE=qemu-nios2 bitbake zephyr-kernel-test-all -c testimage + + +Reference +******** +`<https://docs.zephyrproject.org/latest/boards/arm/96b_nitrogen/doc/index.html>`_ + +`<https://wiki.seeedstudio.com/BLE_Nitrogen/>`_ + +`<http://deletionpedia.org/en/96Boards>`_ + + + +