ToyKeeper's flashlight firmware repository ========================================== This is a collection of firmware for flashlights or torches, mostly collected from BLF (http://budgetlightforum.com/). It's collected here mostly for convenience, and to provide bug tracking and revision control services for the code. Getting Started =============== A general overview of what you need to get going is here: http://flashlightwiki.com/AVR_Drivers To set up an attiny dev environment on Ubuntu (13.10): sudo apt-get install flex byacc bison gcc libusb-dev libc6-dev sudo apt-get install gcc-avr avr-libc binutils-avr sudo apt-get install avrdude avrdude-doc Installing attiny dev tools on UNIX systems in general: http://www.ladyada.net/learn/avr/setup-unix.html To build a .hex file from a .c file, in Windows: http://budgetlightforum.com/node/29081 After wiring everything up, this tests the connection to the ATTINY13A chip: avrdude -p t13 -c usbasp -n (you may need to put 'sudo' in front, on UNIX systems... or set the suid bit on the avrdude binary, which is convenient but a potential security risk) To test if you can flash firmware correctly, or to restore a light to something like a default state, try flashing the NLITE driver from DrJones. It's similar to the default nanjg / qlite firmware, but better. ./bin/flash.sh DrJones/NLITE/nlite.hex For a quick test to make sure your tool chain works and your flashing tools are working, try the 'hello world' program: cd hello_world make make flash If that works, you should be ready to start making changes to the code, or flashing any of the pre-built firmwares.