Files
OpenSK/boards/nordic/nrf52840dk_opensk
Jean-Michel Picod c1f2551d0d Bump Tock kernel version (#374)
* Bump Tock kernel version

* Update boards to new kernel

* Update patches to new kernel

* Update PR template

* Bump libtock-rs

* Use new layout from libtock-rs

* Fix clippy warnings due to updated toolchain

* Fix new toolchain file format

* Bump elf2tab to v0.7.0

* Fix worklow and setup.sh script to use the TOML rust-toolchain file

* New libtock-rs style of declaring the stack.

* Fix padding in layout file.

The layout from libtock-rs generates invalid flash padding.
The value is 32-bit and therefore setting padding to 0xff yields
0xff000000 instead of 0xffffffff that we want.

* adds tock patch for app break hard fault

* sets in deploy, removed patch 04-mpu-fix

* fixed the if deploy

* fixes indentation

* updates board names in install.md

* fix docs and deploy style

Co-authored-by: Fabian Kaczmarczyck <kaczmarczyck@google.com>
Co-authored-by: kaczmarczyck <43844792+kaczmarczyck@users.noreply.github.com>
2021-09-10 08:32:34 +02:00
..
2021-06-28 14:55:20 +02:00
2021-09-10 08:32:34 +02:00
2021-06-28 14:55:20 +02:00
2021-06-28 14:55:20 +02:00
2021-06-28 14:55:20 +02:00
2021-06-28 14:55:20 +02:00
2021-06-28 14:55:20 +02:00

Platform-Specific Instructions: nRF52840-DK

This is an adapted nrf52840dk made to work with OpenSK.

The nRF52840 Development Kit is a platform based around the nRF52840, an SoC with an ARM Cortex-M4 and a BLE radio. The kit is Arduino shield compatible and includes several buttons.

Getting Started

First, follow the Tock Getting Started guide

JTAG is the preferred method to program. The development kit has an integrated JTAG debugger, you simply need to install JTAG software.

Programming the kernel

Once you have all software installed, you should be able to simply run make flash in this directory to install a fresh kernel.

Programming user-level applications

You can program an application over USB using the integrated JTAG and tockloader:

$ cd libtock-c/examples/<app>
$ make
$ tockloader install --jlink --board nrf52dk

The same options (--jlink --board nrf52dk) must be passed for other tockloader commands such as erase-apps or list.

Viewing console output on the nrf52840dk is slightly different from other boards. You must use

$ tockloader listen

followed by a press of the reset button in order to view console output starting from the boot sequence. Notably, you should not pass the --jlink option to tockloader listen.

Console output

This board supports two methods for writing messages to a console interface (console driver for applications as well as debug statements in the kernel).

By default, messages are written to a UART interface over the GPIO pins P0.05 to P0.08 (see the main.rs file).

If you don't have any UART cables or want to use a different interface, there is also a console over the Segger RTT protocol. This only requires a micro-USB cable on the USB debugging port (the same used to flash Tock on the board), and is enabled by setting the USB_DEBUGGING constant to true in the main.rs file. This disables the UART interface.

For instructions about how to receive RTT messages on the host, see the corresponding capsule.

Debugging

See the nrf52dk README for information about debugging the nRF52840dk.