------------------------------------------------------------------------ CHANGELOG TINYSAFEBOOT - SOFTWARE ------------------------------------------------------------------------ tsb-executables ------------------------------------------------------------------------ 20140401 Updated database and port ressources for 2 new devices: ATtiny441 and ATtin841 (TSB-FW 20140331) Added One-Wire-Detection notification. Added full Devicename to Device-Info. Minor internal code-improvements. 20140302 Code revisited. Updated database of TSB-FW 20140302. 20131023 Code revisited. Updated database of TSB-FW 20131023. 20130915 File format (hex or binary) now autodetected when data is loaded to write or verify. Added display of absolute Flash size to device info block. 20130902 Updated TSB-Software with TSB-FW 20130902. New firmware performs different handling of rjmp to Application. Added support for both valid directions of an rjmp in User Data field. This is only relevant for the read-back of application firmware from flash with ATtinys up to 8 KB to reconstruct the original rjmp Reset correctly. 20130831 Password-changing: Old password is now fully overwritten in memory when being replaced by shorter one. Display of APPJUMP on ATmegas corrected from "FFFF" to always show "0000", regardless of any values written to LASTPAGE. Emergency-Erase: Improved re-check of accessability of TSB after some Emergency Erase has been engaged (no misleading ERROR note). 20130625 Updated TSB-Software with TSB-FW 20130625 (see changelog_fw). Fixed a silly lower/uppercase bug in conjunction with firmware template search that caused some devices not to be found. 20130505 Updated TSB-Software with new TSB-Installer/Firmware database (116 devices currently supported). 20130428 Corrected wrong calculation of checksum that could lead TSB-Installers not to install under some conditions. 20130414 Support for tn1634 and tn88 integrated into database. Support for ATmegas (experimental). Restructuring of database for TSB-Templates and tightened programming. Integrated list of port mappings for all current ATtinys and ATmegas to eliminate the need for 'exemptions' in future programming. No generation of code for nonexisting Ports. FlashRead and FlashVerify: Analysis of the last bytes in Device Info Block to determine whether the target device is an ATtiny (rjmp), ATtiny with 16 KB up (jmp) or ATmega (reset vector not relevant). 20130217 Implemented checksum for customized TSB-Installers. While previous Installer only checked for a bunch of ASCII characters in the last page of TSB-Firmware, now a checksum is calculated (by means of modulo 2^16 sum) over all pages containing relevant code of the TSB-Installer and the attached TSB-Firmware. These two bytes are calculated in the course of making a customized TSB-Installer from a (internal or external) Installer template. When processing external TSB-Firmware (without Installer routines), no checksum feature will be implemented. 20130210 Adapted TSB firmware for modified date format. Previous TSB still supported (i.e. date shown correctly). Integrated new firmware templates into TSB.BAS. 20130108 Integration of modified TSB-FW 20130106. Re-integrated support for ATtiny87. 20121222 Customized firmware feature: It will now deliver TSB-Installers. The autogenerated filename of them directly represents the firmware's coding date instead of the current date. (Please have a look at the firmware's changelog and assembly source for details on the proposed installer mechanism.) Firmware-Read: Empty (erased) pages that contain only $FF bytes will be stripped from the firmware file that's read back by the tool. 20121123 Integrated new code template-datas. Tested and activated new method of generating TSB-FW from templates for devices tn87 and tn167. 20121118 Extended features of code-generation-from-templates: Added support for ATtiny87 (and ATtiny167, with restrictions), which have different IO locations that require different search-and-replacement rules for being correctly modified. Commandline interpreter: Improved serial port device name trimming. Other changes: Default speed lowered to failsafe 9600 bps, that would be viable with tsb in a wide range of MCU clock. 20120909 Added long-awaited *integration of pre-assembled firmware templates* into the tsb-software by means of a 'database of datas' included in tsb.bas, enabling it to generate customized tsb-firmware files standalone for at least those attiny models directly covered by the universal assembler programming. All the tsb-stuff in one folder now! (i hate too many subfolders ;-) Of course there is still option of making your own tsb-variant directly from source (tsb_base.asm), or you may build further external templates. If tsb cannot find the submitted attiny filename in its database, it will search for a hexfile matching that name in its executable directory. TSB-templates should fulfil these simple requirements: naming like "tn-fancyname-def.hex"; not conflicting with existing attinys' (see "attinys.txt"); located in the same folder where tsb-executable resides. Ah, and do not change the interim port assignments (B0 for RXD, B1 for TXD), which are essential for autodetecting and changing the respective opcodes later on. 20120902 - Added support for One-Wire-Interface (auto-recognition of such adaptor; echoed characters won't interfere with the protocol) - Fixed some bugs and added new ones... 20120812 - Option making customized tsb-firmware file: Changed template search path from working directory (./) to exepath$ (fb). Now it will always find the folder "tsb_tmp" with preassembled templates even if tsb.exe has been invoked from any different working directory. (Thanks, OD!) - Minor improvements in coding 20120626 - Fixed some Intel-HEX-conversion issues (explicit thanks go to: WEO) - Fixed external verifying; last byte of file that fills all available flash memory, will also be checked now :) - Adjusted to compile under Linux version of fbc and enable using linux device names (/dev/ttyS or /dev/ttyUSB) in the commandline - Successfully tested and demonstrated full functionality (testing platforms Debian 6, Xubuntu 10) - Strange behaviour with USB-COM-adaptors mitigated; possibly non-fbc-specific and/or depending on the particular platform and libraries 20110921 First public release of the commandline tool. ***