Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
bootloader [2020/09/28 21:43] – ↷ Page name changed from nootloader to bootloader yairbootloader [2020/09/29 10:20] (current) yair
Line 1: Line 1:
  
 ===to compile a tiny bootloader=== ===to compile a tiny bootloader===
- +{{ :pasted:20200929-072031.png}} 
-**TLDR**+===TLDR=== 
 +on ubuntu (or wsl)
 <code bash> <code bash>
 +sudo apt-get install avr-libc gcc-avr
 git clone git@github.com:idiot-io/TinyAudioBoot.git git clone git@github.com:idiot-io/TinyAudioBoot.git
 cd TinyAudioBoot cd TinyAudioBoot
Line 14: Line 16:
 </code> </code>
  
 +we are piggy backing on a windows successful bootloader upload to grab the right fuses everything. \\
 +just need to adapt 
 +  * serial port (if changed from the windows upload sequence. 
 +  * full path to HEX file (TinyFlexiAudioBoot_PB0.hex) you got from the make/linux build.\\
 +
 +if you first had it running from arduino just changing the serial and hex file should have this running from cmd anywhere in your system. 
 +
 +<code>
 +#fuses burn
 +C:\Users\Admin\AppData\Local\Arduino15\packages\8BitMixtape\hardware\avr\0.0.28/tools/avrdude/windows/avrdude -cstk500v1 -B4 -PCOM8 -b19200 -pattiny85 -CC:\Users\Admin\AppData\Local\Arduino15\packages\8BitMixtape\hardware\avr\0.0.28/tools/avrdude/windows/avrdude.conf -Ulfuse:w:0xE1:m -Uefuse:w:0xFE:m -Uhfuse:w:0xDD:
 +
 +#burn the bootloader
 +C:\Users\Admin\AppData\Local\Arduino15\packages\8BitMixtape\hardware\avr\0.0.28/tools/avrdude/windows/avrdude -cstk500v1 -B4 -PCOM8 -b19200 -b19200 -pattiny85 -CC:\Users\Admin\AppData\Local\Arduino15\packages\8BitMixtape\hardware\avr\0.0.28/tools/avrdude/windows/avrdude.conf -Uflash:w:C:\DEV\GitHub\FlexiATiny85-AudioBoot\code\bootloader\TinyFlexiAudioBoot_PB0.hex:
 +</code>
  
 +=== why===
 was asked to compile the [[https://github.com/idiot-io/TinyAudioBoot|TinyAudioBoot]] bootloader.  was asked to compile the [[https://github.com/idiot-io/TinyAudioBoot|TinyAudioBoot]] bootloader. 
  
-i couldn't get budi's ''TinyAudioBoot/bootloaderbuild'' to work, must be a typo of mine. \\+i couldn't get budi's ''TinyAudioBoot/bootloaderbuild'' to work,<del> must be a typo of mine.</del> \\ 
 +yes, recreate the symbolic link for ''bootloaderbuild/main.cpp'' 
 +  ln -s /where/is/repo/TinyAudioBoot/TinyAudioBoot/TinyAudioBoot.c main.cpp
 so decided to make an automated build system that will pull (most) needed dependencies and compile.  so decided to make an automated build system that will pull (most) needed dependencies and compile. 
  
Line 27: Line 46:
   * [[https://github.com/SpenceKonde/ATTinyCore|ATTinyCore]]   * [[https://github.com/SpenceKonde/ATTinyCore|ATTinyCore]]
  
-===os support===+**os support** 
 for the following i used ubuntu on windows. \\ for the following i used ubuntu on windows. \\
 so get into ubuntu, TLDR: use [[https://code.visualstudio.com/|vscode]] and click the bottom left green button. so get into ubuntu, TLDR: use [[https://code.visualstudio.com/|vscode]] and click the bottom left green button.
Line 51: Line 71:
   ./install.sh   ./install.sh
 from the arduino directory to get the icons on desktop, we are not interested.  from the arduino directory to get the icons on desktop, we are not interested. 
 +
 +
 ===get the project=== ===get the project===
 we will clone the git for tinyaudio and get the two other submodules.  we will clone the git for tinyaudio and get the two other submodules. 
Line 67: Line 89:
 the output has this flags, broken into lines. because its an automated build system it spits out a few double and empty flags.\\ the output has this flags, broken into lines. because its an automated build system it spits out a few double and empty flags.\\
 note the first Capital Letter after a ''-'' is part of the avr flag system. and not part of the variable.   note the first Capital Letter after a ''-'' is part of the avr flag system. and not part of the variable.  
 +<hidden output/>
 <code bash> <code bash>
 /usr//bin/avr-g++  /usr//bin/avr-g++ 
Line 109: Line 132:
  
 </code> </code>
 +</hidden>
 +