Tiny AVR/PIC Bootloader+

16-bit PIC type "D" family firmwares:

Remark: "D" family is a TinyBootloader+ designation, not a Microchip one!!!



Principle

###todo

Description of the data tranfert

Represents the character of one byte [] below.

① Flash transfer format:
[AddressL][AddressH][AddressU][3*N][DataL(1)][DataH(1)][DataU(1)]....[DataL(N)][DataH(N)][DataU(N)][SUM]

[AddressL] Start address of the flash page to override the data. (lower)
[AddressH] Start address of the flash page to override the data. (middle)
[AddressU] Start address of the flash page to override the data. (upper)
[3*N] Number of transfers of data as described in piccode.ini. (byte notation)
[DataL/H/U(n)] Rewrite data (3*N)bytes.
[SUM] Checksum.

② EEPROM transfer format:
[EEAddressL][EEAddressH][EEAddressU][2][EEDataL][EEDataH][SUM]

[EEAddressL] Address of the EEPROM to override the data (lower).
[EEAddressH] Address of the EEPROM to override the data (middle).
[EEAddressU] Address of the EEPROM to override the data (upper).
[2] Number of data transfers. (Always 2)
[EEDataL/H] EEPROM 16-bit data to be rewritten.
[SUM] Checksum.

③ Config transfer format:
[CFGAddressL][CFGAddressH][CFGAddressU][18][CFGDataL(1)][CFGDataH(1)].....[CFGDataL(9)][CFGDataH(9)][SUM]

[CFGAddressL] Start address of the Config data to overwrite the data. (lower)
[CFGAddressH] Start address of the Config data to overwrite the data. (middle)
[CFGAddressU] Start address of the Config data to overwrite the data. (upper)
[18] Number of data transfers. (Always 18)
[CFGDataL/H(n)] Rewrite data (2*9)bytes.
[SUM] Checksum.

Modify existing fimwares for a new device

###todo