Skip to content

Releases: tock/tockloader

New Interface

22 May 23:05
Compare
Choose a tag to compare

The primary change in this release is a new command line interface that tries to mimic applications on smartphones and desktops. The verbs should match the expectations that people normally have for existing computers.

  • install: Update the app if it already exists, install it otherwise.
  • update: Update the app if it already exists.
  • uninstall: Remove the app by name.

Other changes

  • If the bootloader supports it, tockloader can increase the serial baud rate.
  • Add support for inspecting the contents of TABs.
  • Add info command to print more verbose information about the board.
  • Can read the bootloader version from the chip.

Fix issue with tockloader listen

24 Apr 21:59
029ed54
Compare
Choose a tag to compare

tockloader listen works again.

Support Tock Application Bundles (TABs)

26 Mar 23:43
ff5f0e7
Compare
Choose a tag to compare

This release is the first on the path to OTT (One True Tockloader). The goal is to enable developers to build Tock apps without having to specify which board they are targeting. Instead, the build system generates binaries for all platforms (architectures, really) and then the correct one is flashed on the target board. If all platforms support Tockloader, then developers never need to specify which board they are using.

We are not quite at this goal, but moving to flashing TABs rather than just TBF binaries means that Tockloader can determine what board it is connected to and choose the correct architecture-specific binary, and the developer does not have to specify this manually.

This release is not backwards compatible because it no longer supports passing TBF binaries to the application install commands. All applications must be flashed using TABs.

This release also includes many other features:

  • JTAG support. Tockloader can flash boards over JLinkExe.
  • Attributes support. Attributes are how Tockloader figures out which board it is connected to.
  • Code re-organization. Commands specific to the serial bootloader protocol and JTAG protocol are in their own classes. Also moved to exception based error handling.
  • Better handling of arguments. Arguments can be passed in more orders on the command line now.
  • Added replace --add to mimic how applications on other platforms (desktop, smartphone) are typically installed.
  • Make flash command the only one that works on raw binaries. It also only works on raw binaries. This can be used to put arbitrary bits in arbitrary places.

Improve Serial Port Detection

22 Feb 07:32
v0.4.0
fafe1c8
Compare
Choose a tag to compare

tockloader automatically searches for any serial ports with the string "tock"
in the information returned by serial ports.

This release adds the -d/--device-name flag, which allows users change this
search string to search for more specific devices.

Previously, if the search was ambiguous, tockloader would simply choose the
first device arbitrarily. Now it presents an interactive menu.

Other features:

  • When possible, check that the binary was compiled with all required flags
  • Terminals will retitle based on active connections

Manage Multiple Apps

16 Jan 22:35
Compare
Choose a tag to compare

This release adds the add, remove, and replace commands which make it much easier to program a Tock board with multiple apps.

Other features:

  • Sort apps by binary size for the MPU.
  • Auto find .bin files so you can just run tockloader add in an app directory.
  • Check to see if Make has thing to build and warn the user.
  • Allow arguments in a more flexible order.
  • Better ignore bluetooth devices on mac when searching for a board's serial port.

Automatically find Tock compatible boards

04 Jan 18:38
7edc347
Compare
Choose a tag to compare
  • Use pyserial's grep feature to find boards with the string "tock" in them.
  • Fix string printing issue when CRC checks fail.

Known Issues

  • Some binaries causes a CRC check to fail repeatedly even though the binary is flashed successfully.

Initial Release

16 Dec 22:38
25b3d10
Compare
Choose a tag to compare

Get a version on PyPI that supports flash and listen.