3

In our college we are using a module developed by IIT Bombay (called FIREBIRD V[ver 5]). It has ATmega2560 and ATmega8 microcontrollers (master and slave) with bootloader.

The staff uses AVR Studio for programming. But since AVR Studio is supported only on Windows (and I have a Mac), I was looking for AVR programming in Mac. I downloaded Crosspack AVR. But I don't know how to proceed after this point. Also I downloaded TextWrangler (because I was told auto-suggestion is not available in TextEdit).

Also I have downloaded the Arduino IDE, and I don't know what is required or how to configure it to program AVR microcontrollers.

I searched on the web and nothing is clear (mostly they all depend on something to do with terminal and the command line).

I don't have Xcode installed in my Mac (I saw a relatively easy tutorial on how to set up Xcode for this purpose) and the file is 4GB. I am trying to work around using Xcode, but if it's the only nice way do let me know!

Pertinent suggestions would be helpful.

  • Does the board use ISP or a serial protocol for programming? – Ignacio Vazquez-Abrams Dec 24 '15 at 14:33
  • It uses serial peripheral interfacing @IgnacioVazquez-Abrams – Somasundharam Sampath Dec 24 '15 at 14:50
  • Then I wouldn't use ISP as the accepted answer suggests. – Ignacio Vazquez-Abrams Dec 24 '15 at 14:58
  • any suggestions... maybe the hard way!? because anyways it'll be good if i know them – Somasundharam Sampath Dec 24 '15 at 15:00
  • Do you have a link to any documentation for the board? – Ignacio Vazquez-Abrams Dec 24 '15 at 15:01
3

First, install and get familiar with version 1.6.x of the Arduino IDE. Then, under the sketchbook directory, within hardware/nex/avr/ (create the directories if they don't exist) create the following files:

boards.txt:

# NEX Robotics Fire Bird V
# Only ATmega2560@14.7456MHz supported for now

nexfirebirdv2560m14.name=Fire Bird V ATMEGA2560 @ 14.7456 MHz
nexfirebirdv2560m14.upload.tool=avrdude
nexfirebirdv2560m14.upload.protocol=avr109
nexfirebirdv2560m14.upload.maximum_size=129024
nexfirebirdv2560m14.upload.maximum_data_size=8192
nexfirebirdv2560m14.upload.speed=115200
nexfirebirdv2560m14.bootloader.low_fuses=0xFF
nexfirebirdv2560m14.bootloader.high_fuses=0xDA
nexfirebirdv2560m14.bootloader.extended_fuses=0xFD
nexfirebirdv2560m14.build.mcu=atmega2560
nexfirebirdv2560m14.build.f_cpu=14745600L
nexfirebirdv2560m14.build.core=arduino:arduino
# This is not the real variant, but it will get the board running
nexfirebirdv2560m14.build.variant=arduino:mega

platform.txt:

name=NEX Robotics Fire Bird V
version=0.0.0

I have verified that an empty sketch will build, but do not have the hardware to test uploading. The upload.protocol value may need to be changed to avr910 or arduino if the current value doesn't work. Make sure to restart the IDE after any changes to the configuration files.

Further improvements that can be done include:

  • A real variant for the specific board
  • Support for the on-board ATmega8 (for now just use one of the slave firmwares uploaded with avrdude)
  • Support for the other AVR boards
  • Support for the 8051 and ARM boards
3

If you don't want to use the Terminal and the command line, the Arduino IDE is your best option. Get yourself an AVR programmer (or an Arduino Uno to serve as programmer, with the ArduinoISP sketch uploaded), and code on it.

ArduinoISP sketch to upload to the Arduino serving as AVR programmer

Then connect your Arduino to your module via SPI. Select the correct processor and port.

Select Processor and Port

You can now upload the sketch:

Upload sketch via Arduino

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.