All Projects → MCUdude → optiboot_flash

MCUdude / optiboot_flash

Licence: other
Optiboot subtree for MightyCore, MegaCore, MiniCore and MajorCore

Programming Languages

c
50402 projects - #5 most used programming language
Makefile
30231 projects
shell
77523 projects

Projects that are alternatives of or similar to optiboot flash

ariadne-bootloader
A little less unfinished TFTP bootloader for Arduino Ethernet or Arduino with Ethernet Shield
Stars: ✭ 40 (-16.67%)
Mutual labels:  avr, bootloader
Arduino boards
Board definitions for SparkFun-manufactured AVR, ARM, and ESP-based Arduino boards.
Stars: ✭ 189 (+293.75%)
Mutual labels:  avr, bootloader
Micronucleus
ATTiny usb bootloader with a strong emphasis on bootloader compactness.
Stars: ✭ 1,240 (+2483.33%)
Mutual labels:  avr, bootloader
miniboot
🏗️ An I2C bootloader for Arduino.
Stars: ✭ 62 (+29.17%)
Mutual labels:  avr, bootloader
toolchain68k
build a toolchain for cross developement. Supports motorola m68k-elf, avr and arm-none-eabi
Stars: ✭ 18 (-62.5%)
Mutual labels:  avr
FT800-FT813
Multi-Platform C code Library for EVE graphics controllers from FTDI / Bridgetek (FT810, FT811, FT812, FT813, BT815, BT816, BT817, BT818)
Stars: ✭ 80 (+66.67%)
Mutual labels:  avr
chirp8-avr
CHIP-8 implementation in Rust targeting AVR microcontrollers
Stars: ✭ 40 (-16.67%)
Mutual labels:  avr
ATtiny13-TinySolder
T12 Quick Heating Soldering Station
Stars: ✭ 45 (-6.25%)
Mutual labels:  avr
STM32-RFM95-PCB
STM32 and AVR128 Printed Circuit Board for creating IOT nodes with the RFM95 LORA chip
Stars: ✭ 14 (-70.83%)
Mutual labels:  avr
TravorOS
A simple OS running on Intel x86 architecture | No longer updating
Stars: ✭ 24 (-50%)
Mutual labels:  bootloader
ASUS-VivoBook-X510UQR-Hackintosh
Hackintosh for ASUS VivoBook X510UQR (ASUS VivoBook S15 S510UQ-BQ483T)
Stars: ✭ 29 (-39.58%)
Mutual labels:  bootloader
terminal
Terminal inside the microcontroller (cli for mcu)
Stars: ✭ 31 (-35.42%)
Mutual labels:  avr
px-fwlib
open source bare-metal C firmware and documentation for microcontrollers
Stars: ✭ 247 (+414.58%)
Mutual labels:  avr
Xling
Xling, a pocket demon
Stars: ✭ 30 (-37.5%)
Mutual labels:  avr
arduino
Arduino board definitions for Spacehuhn projects
Stars: ✭ 17 (-64.58%)
Mutual labels:  avr
SAM-BAR
SAM Boot Assistant Reloaded - Combo USB CDC+MSD Bootloader for Atmel/Microchip SAMD21 microcontroller
Stars: ✭ 29 (-39.58%)
Mutual labels:  bootloader
platform-atmelavr
Atmel AVR: development platform for PlatformIO
Stars: ✭ 97 (+102.08%)
Mutual labels:  avr
stoomboot
An x86 real mode multiboot-ish ELF bootloader
Stars: ✭ 19 (-60.42%)
Mutual labels:  bootloader
SELoader
Secure EFI Loader designed to authenticate the non-PE files
Stars: ✭ 38 (-20.83%)
Mutual labels:  bootloader
MajorCore
An Arduino hardware package for ATmega8515 and ATmega162
Stars: ✭ 32 (-33.33%)
Mutual labels:  avr

Optiboot flash

Optiboot flash is an easy to install bootloader for the Arduino environment. This repository contains a total of 9328 precompiled hex files built for 53 different targets with 14 different clock frequencies and 9 different baud rates to choose from.

Key features:

  • Small in size (<512 bytes when EEPROM upload support is disabled)
  • Supports baudrates upto 1Mbit
  • Supports write to flash within application
  • Compatible with a most "classic" AVR microcontrollers
  • EEPROM upload support
  • Chips with 64kiB flash has flash page copy functionality, which is useful for a self-update application like ArduinoOTA

Supported devices

Precompiled binaries

This repository contains a bunch of precompiled hex file with a variety of clock frequencies and baud rates:

1000000 500000 460800 250000 230400 115200 57600 38400 19200 9600
24 MHz X X X X X X X X
22.1184 MHz X X X X X X
20 MHz X X X X
18.4320 MHz X X X X X X X
16 MHz X X X X X X X
14.7456 MHz X X X X X X X
12 MHz X X X X X X
11.0592 MHz X X X X X X X
8 MHz X X X X X X X X
7.3728 MHz X X X X X X X
4 MHz X X X X
3.6864 MHz X X X X X X X
2 MHz X X X
1.8432 MHz X X X X X X
1 MHz X

Using different UARTs

The table below shows the available serial ports for the corresponding microcontroller. This repository contains precompiled hex files if you want to use other serial ports than UART0.

Target UART0 UART1 UART2 UART3
ATmega8/88/168/328
ATmega8515
ATmega8535/16/32
ATmega169/329/649
ATmega165/325/645
ATmega3250/6450
ATmega3290/6490
X
AT90USB646/647
AT90USB1286/1287
X
ATmega162
ATmega328PB
ATmega164/324/644/1284
ATmega64/128
AT90CAN32/64/128
ATmega1281/2561
X X
ATmega324PB X X X
ATmega640/1280/2560 X X X X

Bootloader LED pin

All precompiled binaries have an active LED output pin. The LED flashes twice when a hardware reset occurs. The table below shows which pin used used to drive the LED for a particular target:

Target LED pin
ATmega8515, ATmega162 PB0
ATmega8535/16/32
ATmega164/324/644/1284
PB0, PB7
ATmega8/88/168/328
ATmega64/128/1281/2561
AT90CAN32/64/128
ATmega325/645, ATmega3250/6450
AT90USB646/647/1286/1287
ATmega165/325/645, ATmega3250/6450
ATmega169/329/649, ATmega3290/6490
PB5
ATmega640/1280/2560 PB7

Building from source

You need to have make installed. You also need avr-libc, avr-binutils and avr-gcc. Alternatively you can install Arduino IDE, which comes with all these packages except make. Install Arduino IDE 1.8.9 or newer to be able to build for the new ATmega324PB and ATmega328PB.

To execute the build script you can either cd into the optiboot_flash folder and run make, or you can execute the script directly by running ./makeall.
If you just want to build a single file for a single target you can instead execute a make command formatted like this:

make atmega8 AVR_FREQ=16000000L BAUD_RATE=115200 LED=B5 LED_START_FLASHES=2 UART=0

Acknowledgements

Although it has evolved considerably, Optiboot builds on the original work of Jason P. Kyle (stk500boot.c),
Arduino group (bootloader), Spiff (1K bootloader), AVR-Libc group and Ladyada (Adaboot).

Optiboot is the work of Peter Knight (aka Cathedrow). Despite some misattributions, it is not sponsored or supported by any organisation or company including Tinker London, Tinker.it! and Arduino.
Maintenance of optiboot was taken over by Bill Westfield (aka WestfW) in 2011.
Flash write functionality added by majekw in 2015.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].