Cart 0

Help Test Avrgirl-Arduino, a NodeJS Alternative to Avrdude

Gareth Halfacree

avrgirl-arduino logo

For many makers, the Arduino IDE (Integrated Development Environment) is the only way they interact with their Arduino boards. Sketches are written, compiled in, and uploaded from the Arduino IDE to the board, and no other tool is required or wanted. For others, though, there's a need for a less-manual approach than clicking on buttons, a requirement that led to the creation of the command-line arduino-builder tool first bundled with Arduino IDE 1.6.6.

For developer Suz Hinton, though, there was a need for something else: a tool, written within the NodeJS framework with which she is most familiar, which would make uploading and verifying binaries to as many Atmel microcontrollers as possible - Arduino included - a cinch. The result: avrgirl, the AVR General ISP Programming Tool, a tongue-in-cheek reference to the avrdude utility bundled with the Arduino IDE.

Suz has written plenty about the project on her blog, and advises that it isn't designed to replace avrdude but instead offer an alternative for certain scenarios. One example of this is its use in a Python-based package Suz wrote, which previously required avrdude to be manually installed outside the bundle but now can simply package avrgirl for a one-click user experience. Another is the use of avrgirl in automated testing and flash verification, where it offers some advantages over avrdude.

Suz released the avrgirl-arduino module back in July, but now needs the community's help. As explained in a presentation given at the Queens JS meetup this week, the sheer volume of different Arduino and Arduino-compatible boards means that she can't test avrgirl-arduino entirely by herself - so she's asking the community to install it and try flashing a bundled blink binary to whatever Arduino they have lying around.

The testing process, automated through a "test pilot" system, takes only a few minutes, with full details available on the project's GitHub repository.

The Arduino IDE exists to provide users with a place to write, compile and upload code, so why write a NodeJS module that uploads code to Arduinos? Not everyone wants to use the Arduino IDE. It's a great piece of software, but we're all used to our own workflow and tools when coding/compiling. Alternative choices are good to have.

Older Post Newer Post