I am wondering if anyone here knows where the source code for the Arduino "firmware" is available for reading? I think it must be more than the 'boot loader' but I am not sure.
2 Answers 2
The "firmware" is whatever program a microcontroller runs. On an Arduino, it is typically the program you write and upload into the microcontroller's flash memory.
If by "firmware" you mean the core library (the source code of
pinMode()
, digitalRead()
and so on), it is here:
https://github.com/arduino/ArduinoCore-avr
If by "firmware" you mean the bootloader (the small program that runs at reset and will accept the upload of your firmware), is is here:
https://github.com/arduino/ArduinoCore-avr/tree/master/bootloaders/optiboot
Note that this is valid for the AVR-based Arduinos. The cores and bootloaders used in other architectures are stored is separate repositories, e.g.
If you are looking for the Flash Firmware, I think the github project documentation is pretty well developed, here:
https://github.com/arduino/Arduino
This is a good introduction to build and flash your Arduino UNO:
http://angryelectron.com/arduino-firmware/
And here a good start to build you own Arduino on a breadboard:
-
Thanks. The arduino/arduino github repo looks like java so I think it's for their IDE. Thanks for the other links, I will followup.pitosalas– pitosalas2017年06月06日 18:41:05 +00:00Commented Jun 6, 2017 at 18:41
-
@pitosalas: that GitHub repo also has the source of the AVR core and a few extra libraries.Edgar Bonet– Edgar Bonet2017年06月06日 19:21:07 +00:00Commented Jun 6, 2017 at 19:21