The Tollos source code is distributed free of charge under the the
Copyright (c) Mike Cowlishaw, 2010-2012. All rights reserved.
Permission to use, copy, modify, and/or distribute this
software for any purpose with or without fee is hereby granted,
provided that the above copyright notice and this permission
notice appear in all copies, and that notice and the date of
any modifications be added to the software.
This software is provided "as is". No warranties, whether
express, implied, or statutory, including, but not limited to,
implied warranties of merchantability and fitness for a
particular purpose apply to this software. The author shall
not, in any circumstances, be liable for special, incidental,
or consequential damages, for any reason whatsoever.
Included with Tollos is some source code (in directories named ‘public’)
which is not Tollos source code and which may be covered by other
licences. You should read those before re-distributing that code.
Tollos is distributed as a compressed .zip file. Here is the latest
Please see the getting started page for instructions.
The conventions used in Tollos directories are described here.
Comments, corrections, suggestions, etc., are welcome!
(Click on the version number for the corresponding .zip.)
||sysSet(SYS_WATCHDOG, value) was rejecting valid settings due to a change in 1.25
||Several improvements to timing, allowing SysTicks and tick() of less than 1 ms;
also SysTick priority is now preserved when SysTick timing is changed
(previously it was set to the lowest interrupt priority by the ARM
||Improved gyroscope and accelerometer handling:
– gyroRate, accRange, and accRate now return chosen
value (instead of 0) when successful
– tollosAcc and tollosGyro now use a ring buffer rather
than double-buffering to allow accurate integration of results and
detection of overrrun.
||Added i2cGetByte and i2cPutByte functions; drawOval renamed to drawEllipse
||Cosmetic tweaks and commentary improvements
||Added miniDec decimal package to Tollos; more strf string formatter enhancements
||Added gyroscope functions and ITG3200 device support; improved strf string formatter
||Added drawing functions and DOGXL LCD screen support, including:
– graphics functions (lines, box, ellipse, simple polygon fill)
– formatted string and text support
– proportional and monospace fonts
– 3-wire 9-bit SPI support for LPC17xx
||Added vector priorities and USB/Virtual COM port support for STM32
||Added I2C support for STM32 and improved STM32 peripherals clocking
||Added support for some STM32 controllers and Primer2 board, including
– improvements to link scripts; configuration at board level
– new variable-speed startup code for all microcontrollers
– additional BIT_OPENDRAIN option for bit output
– sample and getting started page
||Corrected error in NXP I2C_SetClock function which caused I2C channel 2 clock to run twice as fast as specified (see FAQ).