Building the MeeBlip Firmware on Mac OS X

Here’s how you can build the Meeblip firmware on Mac OS X. For Windows, AVR Studio can be used to build the firmware. For Mac OS, the command line tool avra can be used, and presumably this will also work on Linux, although I’ve not tried this. Using avra to build the firmware was discussed on the MeeBlip forum, but I’ve summarised the steps below. This also includes the step to download the firmware to the MeeBlip microcontroller using the Sparkfun Pocket AVR programmer and avrdude. Full instructions for downloading the firmware can be found on the MeeBlip firmware page.
1. Download and build avra for Mac OS X and add it to your path
2. Install avrdude (one easy way is using Macports)
3. Locate the library file m32def.inc in avra (in avra-<version>/includes/) and copy it to your meeblip source directory containing meeblip.asm
4. Run the c pre-processor on m32def.inc to remove #define etc:
    cpp -P m32def.inc > temp
    mv temp m32def.inc
5. Remove the long comment in m32def.inc on line 465 as it is not compatible with avra.
6. Remove all comments (at the end of lines starting with a semi-colon) from meeblip.asm starting with a \ following the comment semi-colon and zero or more spaces as they are also not compatible with avra (these will be removed from future versions of the source). For example, remove comments from the end of the lines that have any of the following semi-colon backslash combinations below:
  ;\
  ; \
  ;  \
  ;   \
7. Assemble the meeblip source with:
 
    avra meeblip.asm
8. Download the assembled hex using avrdude:
 
    avrdude -c usbtiny -p m32 -U flash:w:meeblip.hex

If you’re using a different programmer, you may need to replace the avrdude -c option with the one for your programmer. Here’s a picture of how the Sparkfun Pocket AVR Programmer should appear connected to the MeeBlip:

Meeblip ISP Header Orientation
Meeblip 1.31SE board with a Sparkfun Pocket AVR Programmer connected. Note the orientation of the connector, with the wires facing away from the audio and MIDI ports.

Leave a Comment

Your email address will not be published. Required fields are marked *