Archive for November, 2010

Global constructor bug in GCC 4.5.1

I’ve recently returned to programming my Seeeduino Mega (ATmega1280) for my tricopter. Yesterday I discovered that every time I included serial code in the sketch, the sketch seemed to freeze as if it was not running the loop(). After several hours, I identified the source of the bug to be in the gcc-avr compiler that Linux uses. Note that this bug does not affect the ATmega328p of the Duemilanove.

I am compiling and uploading sketches from the command line (another small adventure I will post about later) with Arduino 0018 on 64-bit Arch Linux.

This blog post explains the bug pretty well. Until an official patch comes out, there are two workarounds: downgrade to GCC 4.3.3 or make the proposed patch. I tried installing the 4.3.3 version from archived sources but ran into other bugs that did not let me compile.

This GCC Bugzilla report describes the patch with proper line numbers. After building the patched source and installing the package, I was able to compile and upload fully-functioning ATmega1280 sketches.

Here is the compiled package for 64-bit Arch Linux.

Bunnybot: Weeks 1–2

Nov. 8, 2010

Bunnybot season has officially started! We have six weeks to build.

Surprised to find out I am Co-Program Manager with Lipi. I hope that, at least on the outside, we will lead this team to victory. To do so, however, we will need to maintain a strong sense of why, how, and what we do:

Why: FIRST. For the Inspiration and Recognition of Science and Technology. To help students realize their potential. To build character.
How: Teach students to be engineers, raise community awareness to the value of young professionals, build awesome robots, and have fun.
What: Win.

I don’t buy flat, unfeeling music and it is impossible to force musical expression. I enjoyed math not because I was good at it but because it allowed me to be logical. I became a programmer because it was even more tangibly logical than math. “People don’t buy what you do, they buy why you do it.”

Nov. 7 was my birthday. Upon finding this out, a few awesome people drove out to buy a chocolate cake and trick candles. I was really touched when the team sang happy birthday for me. I don’t show it, but they have no idea how much I appreciated that. It really was a special 18th birthday.

Sorry I slobbered all over the cake. The candles kept reigniting!

Nov. 11, 2010

Willamette Innovators’ Night. We found many potential mentors but sadly no sponsors. Ram-Z Fab might let us look through their scrap heap though!

LaSells catering was as excellent as ever.

Nov. 15, 2010

Started work. Unloaded field from Girls’ Generation scrimmage. Others started cardboard prototypes of end effector. Swerve CAD almost done.

Nov. 17, 2010

Set up a Gantt chart to schedule the rest of Bunnybot season.