User Tools

Site Tools


doc:lighthouse:bootloader

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
doc:lighthouse:bootloader [2019-03-10 12:08]
arnaud [Uart protocol]
doc:lighthouse:bootloader [2020-05-12 14:36] (current)
kimberly
Line 1: Line 1:
 +<WRAP center round important 60%>
 +This page is deprecated and is moved to the main Bitcraze website. Please go to:
 +
 + [[
 +https://www.bitcraze.io/documentation/repository/
 +]]
 +
 +</WRAP>
 +
 +
 ====== Lighthouse deck bootloader ====== ====== Lighthouse deck bootloader ======
  
Line 41: Line 51:
 ===== Bootloader protocol ===== ===== Bootloader protocol =====
  
-All numbers are expressed in little endian. +All numbers are encoded in little endian. 
  
 ==== Boot ==== ==== Boot ====
Line 113: Line 123:
 ===== Firmware versioning ===== ===== Firmware versioning =====
  
-The firmware is an iCE40 bitstream ((The bitstream format has been [[http://www.clifford.at/icestorm/format.html|documented by the icestorm project]] )). The bitstream start with the bytes 0xff 0x00 followed by a null terminated string and the 0x00 0xff. This null terminated string is a comment. In the Lighthouse deck this comment is used to store the version of the firmware as a version string. The intention is that the deck user (ie. the Crazyflie or other external board) must be able to find-out if the firmware is compatible or if it needs to be upgraded or downgraded.+The firmware is an iCE40 bitstream ((The bitstream format has been [[http://www.clifford.at/icestorm/format.html|documented by the icestorm project]] )). The bitstream start with the bytes 0xff 0x00 followed by a null terminated string and then 0x00 0xff. This null terminated string is a comment. In the Lighthouse deck this comment is used to store the version of the firmware as a version string. The intention is that the deck user (ie. the Crazyflie or other external board) must be able to find-out if the firmware is compatible or if it needs to be upgraded or downgraded.
  
-The version string format is a base 10 integer number in ascii indicating the version. For example "1". It follows the rules of the C function strtol() to be decoded so the string can start with white-space, followed by an optional "+" or "=" followed by decimal digits. The decoding stops at the first non-digit character.+The version string format is a base 10 integer number in ascii indicating the version. For example "1". It follows the rules of the C function strtol() to be decoded so the string can start with white-space, followed by an optional "+" or "-" followed by decimal digits. The decoding stops at the first non-digit character.
  
 In the context of the lighthouse firmware, versions >= 1 are released version and should be in parity (or handled) by the client connecting the board in order to boot the firmware. Versions <= 0 are development version and the intention is that the client will then boot it without further check. In the context of the lighthouse firmware, versions >= 1 are released version and should be in parity (or handled) by the client connecting the board in order to boot the firmware. Versions <= 0 are development version and the intention is that the client will then boot it without further check.
doc/lighthouse/bootloader.1552216129.txt.gz · Last modified: 2019-03-10 12:08 by arnaud