github tock/tock release-1.3
Tock 1.3

latest releases: release-2.1.1, release-2.1, tock-registers-v0.8...
5 years ago

This is a large milestone-based release of Tock that encompasses numerous changes made by many contributors over the last five months. We set two main goals for this release which were tracked in the following issues:

  • [#985] Make Tock Architecture Agnostic: The core Tock kernel should support running on non-Cortex-M platforms.
  • [#1154] Userland UDP: There is now an interface to send and receive UDP packets from userland.

We re-architected the core kernel to (hopefully!) remove all assumptions that Tock is running on a Cortex-M platform, and moved all of the architecture-specific code to the /arch crates. This will enable Tock to run on other architectures in the future, like Cortex-MF or RISC-V.

We also significantly improved the IPv6/6LoWPAN based networking stack in Tock (built on top of 802.15.4) to enable UDP packet send and receive from userland. This is a promising step towards a full networking stack in Tock.

While we waited to complete these two goals before doing a release, numerous other changes were also made along the way. To briefly summarize:

  • The debug module in the kernel now includes a generic panic!() routine used by many boards.
  • The kernel debug module is now a direct user of a UART object rather than a psuedo-process. This provides more flexibility and simplifies the kernel internals.
  • Capabilities are a new feature for controlling access to sensitive (but public) internal Tock APIs.
  • The ADC HIL changed to handle different resolution ADCs.
  • The UART HIL changed to include a configure() method.
  • The randomness HILs now support multiple widths and entropy and RNG versions.
  • Tock switched to the LLVM toolchain, removing the need for ARM gcc.

More details can be found in the CHANGELOG file.

Stability Guarantees

This release does not include any new API stability guarantees.

Testing and Board Support

This release was tested on these platforms:

  • nRF51DK
  • nRF52DK
  • Hail
  • imix
  • LaunchXL CC26x2

Don't miss a new tock release

NewReleases is sending notifications on new releases.