Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tools:optiboot [2021/09/12 05:20] – [Build] darrontools:optiboot [2024/07/10 12:31] (current) – external edit 127.0.0.1
Line 5: Line 5:
 === Build === === Build ===
  
-Compile default firmware+==Compile all firmware==
  
 <code> <code>
Line 13: Line 13:
 </code> </code>
  
-List firmware+==Get firmware version== 
 + 
 +<code> 
 +git log -n 1 --pretty=format:%H%n 
 +0dd4cedfbd6669d47752707486d3625a911bdb12 
 +</code> 
 + 
 + 
 +==List all firmware==
  
 <code> <code>
Line 41: Line 49:
 </code> </code>
  
-Compile specific firmware+==Compile specific firmware== 
 + 
 +This firmware is for a Pro Mini with an 8 MHz XTAL 
 +and a generic UNO clone at 16 MHz. 
 <code> <code>
 make clean make clean
 +make atmega328 BAUD_RATE=115200
 make atmega328_pro8 BAUD_RATE=57600 make atmega328_pro8 BAUD_RATE=57600
 </code> </code>
  
-List firmware+==List firmware== 
 <code> <code>
 +2bb2b975f97f383909249e7157a7acb3  optiboot_atmega328.hex
 9d1fc10caca488882432a01f5c96e797  optiboot_atmega328_pro_8MHz.hex 9d1fc10caca488882432a01f5c96e797  optiboot_atmega328_pro_8MHz.hex
 </code> </code>
 ===Download=== ===Download===
  
-[[https://wiki.kewl.org/downloads/BL/optiboot_atmega328.hex|optiboot_atmega328.hex]]+{{downloads:BL:optiboot_atmega328.hex|optiboot_atmega328.hex}} 
 + 
 +{{downloads:BL:optiboot_atmega328_pro_8MHz.hex|optiboot_atmega328_pro_8MHz.hex}}
  
 === Install === === Install ===
  
-[[:interfaces:usbasp|USBasp]]+==Arduino Pro Mini with 8 MHz XTAL== 
 + 
 +__[[:interfaces:usbasp|USBasp]]__ 
  
 <code> <code>
-avrdude -c usbasp -p ATMEGA328P -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xDE:m -U lfuse:w:0xFF:+avrdude -V -B 5 -c usbasp -p ATMEGA328P -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xDE:m -U lfuse:w:0xFF:
-avrdude -c usbasp -p ATMEGA328P -D -u -U flash:w:optiboot_atmega328.hex +avrdude    -B 5 -c usbasp -p ATMEGA328P -D -u -U flash:w:optiboot_atmega328_pro_8MHz.hex:i 
-avrdude -c usbasp -p ATMEGA328P -u -U lock:w:0x0F:m+avrdude    -B 5 -c usbasp -p ATMEGA328P -D -u -U lock:w:0x2F:m
 </code> </code>
  
-Pololu USB AVR Programmer v2.1+==Arduino UNO== 
 + 
 +__[[:interfaces:pololu|Pololu USB AVR Programmer v2.1]]__ 
  
 <code> <code>
 avrdude -V -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xDE:m -U lfuse:w:0xFF:m avrdude -V -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -e -u -U lock:w:0x3F:m -U efuse:w:0xFD:m -U hfuse:w:0xDE:m -U lfuse:w:0xFF:m
-avrdude    -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -D -u -U flash:w:optiboot_atmega328.hex +avrdude    -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -D -u -U flash:w:optiboot_atmega328.hex:i 
-avrdude -V -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -u -U lock:w:0x0F:m+avrdude    -B 5 -P `pavr2cmd --prog-port` -c avrisp2 -p ATMEGA328P -D -u -U lock:w:0x2F:m
 </code> </code>
 +
 +=== Test ===
 +
 +==Arduino Pro Mini with 8 MHz XTAL==
 +
 +<code>
 +$ avrdude -c arduino -b 57600 -D -p m328p -P /dev/ttyUSB0 
 +
 +avrdude: AVR device initialized and ready to accept instructions
 +
 +Reading | ################################################## | 100% 0.00s
 +
 +avrdude: Device signature = 0x1e950f (probably m328p)
 +
 +avrdude: safemode: Fuses OK (E:00, H:00, L:00)
 +
 +avrdude done.  Thank you.
 +</code>
 +
 +===Resources===
 +
 +https://www.engbedded.com/fusecalc/
 +
 +https://www.engbedded.com/conffuse/