Skip to content

3devo-20190221

Latest

Choose a tag to compare

@HendryKaak HendryKaak released this 21 Feb 13:43

Changes since version 3devo-20180717

  • Add support for Devoboard version 1.6.

Version shipped on fifth batch of filament extruder machines. Contains version 6.2 of optiboot, with some improvements made or merged specifically for 3devo.

Compiled with Cywin/Windows using:

make atmega2560 CURRENT_DEVOBOARD_VERSION=0x16 COMPATIBLE_DEVOBOARD_VERSION=0x11
make[1]: Map '/cygdrive/c/Users/hendrykaak/Desktop/Release/optiboot/optiboot/bootloaders/optiboot' wordt binnengegaan
avr-gcc.exe (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

baudcheck.tmp.sh: regel 13: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 14: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 15: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 16: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 17: $'\r': opdracht niet gevonden
 * 8))) - 1 : syntaxfout: ongeldige rekenkundige operator (het onjuiste symbool  * 8))) - 1 ")00
baudcheck.tmp.sh: regel 19: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 20: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 21: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 22: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 23: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 24: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 25: $'\r': opdracht niet gevonden
/(8 * (()+1))) : syntaxfout: ongeldige rekenkundige operator (het onjuiste symbo/(8 * (()+1))) ")
) ")/ 115200ut: ongeldige rekenkundige operator (het onjuiste symbool is "
) -  * 10) : syntaxfout: ongeldige rekenkundige operator (het onjuiste symbool i) -  * 10) ")
baudcheck.tmp.sh: regel 30: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 31: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 32: $'\r': opdracht niet gevonden
baudcheck.tmp.sh: regel 33: $'\r': opdracht niet gevonden
% Real: , UBRRL = , Error=.05200
avr-gcc -g -Wall -Os -fno-split-wide-types -mrelax -mmcu=atmega2560 -DF_CPU=16000000L  -DBAUD_RATE=115200 -DLED_START_FLASHES=3      -DBIGBOOT  -DCURRENT_DEVOBOARD_VERSION=0x16 -DCOMPATIBLE_DEVOBOARD_VERSION=0x11   -c -o optiboot.o optiboot.c
optiboot.c:324:6: warning: #warning BAUD_RATE error greater than 2% [-Wcpp]
     #warning BAUD_RATE error greater than 2%
      ^
avr-gcc -g -Wall -Os -fno-split-wide-types -mrelax -mmcu=atmega2560 -DF_CPU=16000000L  -DBAUD_RATE=115200 -DLED_START_FLASHES=3      -DBIGBOOT  -DCURRENT_DEVOBOARD_VERSION=0x16 -DCOMPATIBLE_DEVOBOARD_VERSION=0x11 -Wl,--section-start=.text=0x3fc00 -Wl,--section-start=.version=0x3fffc -Wl,--relax -nostartfiles -o optiboot-3devo-20190221-devoboard-1.6.elf optiboot.o
avr-size optiboot-3devo-20190221-devoboard-1.6.elf
   text    data     bss     dec     hex filename
    642       0       0     642     282 optiboot-3devo-20190221-devoboard-1.6.elf
avr-objcopy -j .text -j .data -j .version --set-section-flags .version=alloc,load -O ihex optiboot-3devo-20190221-devoboard-1.6.elf optiboot-3devo-20190221-devoboard-1.6.hex
avr-objdump -h -S optiboot-3devo-20190221-devoboard-1.6.elf > optiboot-3devo-20190221-devoboard-1.6.lst
rm optiboot.o
make[1]: Map '/cygdrive/c/Users/hendrykaak/Desktop/Release/optiboot/optiboot/bootloaders/optiboot' wordt verlaten

To set fuses and flash:

avrdude -B 5 -c atmelice_isp -p atmega2560 -Uflash:w:optiboot-3devo-20181119-devoboard-1.6.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0xFC:m -U lock:w:0xEF:m -v

The optiboot-3devo-20190221-boardinfo-v2.hex file was created by manually modifying another hex file to remove the compatible/current board version bytes and bump the optiboot custom version from 1 to 2 to indicate flash contains a v2+ board info block before the optiboot version. This board info block must be added when flashing the bootloader, e.g.:

avrdude -B 5 -c atmelice_isp -p atmega2560 -Uflash:w:optiboot-3devo-20181119-devoboard-1.6.hex -Uflash:w:board_info.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0xFC:m -U lock:w:0xEF:m -v

Where board_info.hex is a board info block with an appropriate starting address (e.g. 64 bytes starting at 0x3ffbe).