Skip to content

Instantly share code, notes, and snippets.

@alchemycs
Created December 6, 2012 06:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save alchemycs/4222258 to your computer and use it in GitHub Desktop.
Save alchemycs/4222258 to your computer and use it in GitHub Desktop.
Additions to boards.txt to use the Freetronics Leostick effectively with the Arduino IDE
##############################################################
leostick12.name=Freetronics LeoStick V1.2
leostick12.upload.protocol=arduino
leostick12.upload.maximum_size=28672
leostick12.upload.speed=1200
leostick12.bootloader.low_fuses=0xde
leostick12.bootloader.high_fuses=0xd8
leostick12.bootloader.extended_fuses=0xcb
leostick12.bootloader.path=diskloader
leostick12.bootloader.file=DiskLoader-LeoStick.hex
leostick12.bootloader.unlock_bits=0x3F
leostick12.bootloader.lock_bits=0x2F
leostick12.build.mcu=atmega32u4
leostick12.build.f_cpu=16000000L
leostick12.build.core=arduino
leostick12.build.variant=leonardo
leostick12.build.vid=0x26BA
leostick12.build.pid=0x0001
##############################################################
leostickv22.name=Freetronics LeoStick V2.2
leostickv22.upload.protocol=avr109
leostickv22.upload.maximum_size=28672
leostickv22.upload.speed=57600
leostickv22.upload.disable_flushing=true
leostickv22.bootloader.low_fuses=0xff
leostickv22.bootloader.high_fuses=0xd8
leostickv22.bootloader.extended_fuses=0xcb
leostickv22.bootloader.path=caterina
leostickv22.bootloader.file=Caterina-LeoStick.hex
leostickv22.bootloader.unlock_bits=0x3F
leostickv22.bootloader.lock_bits=0x2F
leostickv22.build.mcu=atmega32u4
leostickv22.build.f_cpu=16000000L
leostickv22.build.vid=0x26BA
leostickv22.build.pid=0x0002
leostickv22.build.core=arduino
leostickv22.build.variant=leonardo
@alchemycs
Copy link
Author

The Freetronics LeoStick is an Arduino Leonardo compatible device but with a much better form factor!! The LeoStick Getting Started Guide includes a core to use with both the V1 and V2 leostick. The only difference between the two is essentially the bootloader that is preinstalled in the device. The supplied core, however is quite old. Fortunately the Leostick is completely pin compatible with the leonardo and simply adding the above info to the boards.txt file enables you to use the most recent core.

Interestingly, the Freetronics site warns not to use the tone() functions as it locks up the board, however when not using their supplied core and using the standard arduino supplied core the function works perfectly.

I also found that on newer mac computers the HID detection wasn't being triggered by the Freetronics supplied core unless a tone was generated (suggested use of delay() at the start of a sketch had no effect, it was only after a tone was generated - of course tone() locks up the board when using the Freetronics core, so I had to use this tone gist).

So in summary, simply updating the boards.txt file and using the standard core it all works as expected.

@alchemycs
Copy link
Author

BTW, this was all tested on mac and linux. Not sure about windows and that magic .inf file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment