Log in

No account? Create an account

QLJ — LiveJournal


6.270 Final Competition Feb. 1st, 2010 @ 04:44 am
On Thursday, we competed in the 6.270 final competition. Unfortunately, partly due to our own slowness and partly due to the lack of finished contest software on the part of the organizers, we didn't really get a chance to test our robot, and it showed. Both times we competed in the final rounds, we lost due to stupid failures. The first time, one of our sensors fell off and the robot thought it was always holding a mouse. The second time, a motor slipped just enough that its gear no longer meshed with the drivetrain.

I think it was telling that a large portion of the contestants (I think >50%) were eliminated as a result of double-loss zero-scoring rounds. Either the contest was too hard or the teams didn't try hard enough. Probably the answer is both.

Anyway, here's some photos of the competition

our robot

and the awesome infrared vision system

Current Mood: tiredtired

mini2440 First Impressions + Awesome Boston rainsnow! Jan. 18th, 2010 @ 05:37 am
The first 3/4 of my weekend was spent participating in Mystery Hunt, an annual puzzle-solving competition at MIT. We don't know where we placed yet, but my team, Death From Above, had an awesome time.

After recovering from the lack of sleep, I finally got to one of my other projects earlier tonight - setting up the mini2440 single-board-computer that I got from eBay a couple weeks ago. It's actually quite a shiny board - it has a 400 MHz ARM processor, Ethernet, USB, 128MB flash memory and 64MB RAM, and a 3.5" LCD. The best part is that they can be had for $85 on eBay or $110 domestically.

I started playing with it around 6 PM. It ships with an old version of Qtopia, as a demo of the hardware's capabilities. I quickly wiped that, intending to put Debian for armel on it, but I spent the next 10 hours trying to figure out how to do that. I finally gave up an hour ago, since I need to get to sleep, but I'll be trying again over the next few days. If anyone else finds this blog post and wants some pointers, here's what I eventually found as the most useful information:

The onboard bootloader is crap. You want to be using something much more capable, and most people seem to use u-boot. Here's a howto for how to set up u-boot on a mini2440.

There's also another set of u-boot instructions on Google Code. By combining the two, you should be able to get a working u-boot on your mini2440.

I haven't gotten here yet, but there's instructions for bootstrapping Debian Lenny for ARM.

Of course, this being Boston, the world wasn't done with me when I decided to go home around 4 AM. It seems while I was in W20, the sky exploded with snow and rain. If you've never experienced the beauty of rain and snow falling at the same time, let me try to explain. The snow blankets the ground, and then the rain falls on the snow. But the snow is already pretty wet, so it effectively impedes the rain from draining anywhere. So all ~level surfaces have a significant amount of standing water/slush on them - an inch or more. Facilities employees were out in force to clean up the snow so the water could drain. It's a little something I like to call "rainsnow".

Current Location: EC
Current Mood: tiredtired

6.270 Update 1 Jan. 9th, 2010 @ 12:24 pm
(I posted another entry earlier today about my experience last night; you must be "friends" with me on LiveJournal to see it.)

6.270, one of MIT's IAP robotics competitions, has been an interesting first week for me. The most interesting part was being put in 3 different 3-person teams, finally ending up in my current team on Sunday, from which one person then dropped out. So it looks like I'll be in a 2-person team for the rest of the competition.

As for the competition itself, it seems to be much more heavily AI-oriented than in past years. This is unfortunate, because a deemphasis on AI was what caused me to choose 6.270 over Maslab.

Our team has apparently gotten a head start on most of the other teams; the first "mock competition" was scheduled for today, and we had a fully built and programmed robot for it yesterday. But even the organizers weren't ready... we weren't able to test our code yet because their vision system isn't fully built. So the first mock competition has been pushed back to Tuesday night.
Current Location: East Campus
Current Mood: tiredtired
Tags: ,

Linux clustering is a steaming pile of shit Jan. 4th, 2010 @ 02:50 am
[To longtime readers of my blog, sorry about the more CS-y content that's starting to appear. It's all part of Iron Blogger. I'll try to also make sure to post some more personal stuff.]

I've spent the past 6 hours trying to configure a cluster of Linux machines. Before I talk about the current sad state of affairs, let me give you a brief history of Linux clustering.

In the beginning, there was Heartbeat. Released in 1998, it was a very simple clustering system. It only supported two nodes, and it managed a simple set of "resources" that could be running on either machine. It wasn't very powerful, but it also just worked.

Meanwhile Sistina (later RedHat) was creating cman, their own clustering system. cman was so bad that it was completely replaced with cman 2, which was a somewhat modular system where cman was a thin layer of configuration utilities that controlled the OpenAIS cluster library.

Heartbeat meanwhile had developed into Heartbeat 2, with support for more than 2 nodes and much more complete support for resource management. But the big feature it doesn't have is distributed locking support, which is a system for allowing synchronization between all the nodes in the cluster. Thus, I started looking at cman.

Around this time, Heartbeat development started to stagnate. So, some of the developers split heartbeat into a new tool called "pacemaker" that just manages the resources in the cluster and a new heartbeat that manages cluster membership. Then, there was an unholy matrimony of pacemaker with openais, where it gained support for using either heartbeat or openais as its cluster membership library.

Then things got even more interesting when openais decided to split into two modules, a new cluster membership library called "corosync" and a cluster utility library called (the new) "openais". Pacemaker doesn't require any of the utilities from the new openais, but it still calls corosync "openais" when it is using corosync.

(While doing research for this blog post, I also discovered that Heartbeat development has picked up again and they're about to do a release of Heartbeat 3.0.)

So, it is in this confusing and incestuous world of clustering software that I have tried to set up a clvm cluster. clvm is a piece of software that allows you to share a single physical disk (in our case, an iSCSI-connected RAID) between multiple computers that are simultaneously accessing it. clvm delightfully supports four different clustering systems: cman, openais, corosync, and gulm. We had been running clvm with cman, but it is extremely prone to deadlocks, which is particularly bad because cman's distributed locking is implemented in the Linux kernel, and there is no way to reset the state of the locks without completely rebooting your machine.

evanbro and I have been working on getting clvm, openais, corosync, and pacemaker running on Ubuntu Hardy for Invirt. After backporting the current versions of all of the software, we discovered that none of the documentation out there matched the current state of the software (it almost all assumes that "openais" is a single, unsplit program), and worse, most of the software isn't documented at all.

The corosync documentation says that you can write a simple configuration file and start "corosync" on all the nodes, and they will all find each other and form a cluster. Hah. While the log messages that get to syslog certainly indicate that the nodes find each other, all the client utilities (such as corosync-cfgtool, or more importantly, clvmd) fail with error code 6 ("SA_AIS_ERR_TRY_AGAIN"). There is, of course, no documentation anywhere that tells you what you should do when you encounter this error. After pounding on it for a while, including both enabling and disabling the openais plugins in corosync, we were able to get clvmd to start and configure itself (we did this by disabling openais but enabling the openais_lck plugin for distributed locking), but performing any operation simultaneously in two places immediately and repeatedly caused a deadlock.

Did I mention that pacemaker, despite running on not its original clustering software, just worked the minute we turned it on on openais?

Ugh. As keithw would say, "I bemoan the state of Computer Science".
Current Location: SIPB Office
Current Mood: accomplished
Tags: , ,

Iron... Blogger? Dec. 28th, 2009 @ 01:39 am
Amazingly, it seems I haven't had a public post on my LiveJournal since December 2007. That's all about to change, because I'm participating in the Iron Blogger competition at MIT. The jist is simply that you're required to post at least one entry each week, or you have to contribute $5 to a communal beer pot.

So simple, and yet hopefully so effective.
Current Location: Home in New Hampshire
Current Mood: happyhappy
Current Music: Car Talk 0952 December 26, 2009 - NPR
Tags: ,

Rollerman... in the Swiss Alps Dec. 15th, 2007 @ 07:21 am
A while ago, I posted a video of the Rollerman. He's baaack!

Current Mood: happyhappy

Accents Apr. 23rd, 2007 @ 02:24 pm
What American accent do you have?
Created by Xavier on Memegen.net

Eastern New England. Whether or not you pronounce r's, you have the sound of Boston, New Hampshire, and Maine about you.

Take this quiz now - it's easy!
We're going to start with "cot" and "caught." When you say those words do they sound the same or different?

Current Mood: tiredtired
Current Music: Kylie Minogue - Love At First Sight - Fever

Children of Eden Nov. 27th, 2006 @ 04:12 pm



The MIT Musical Theatre Guild proudly presents its Fall 2006 production...


Book by John Caird
Music and Lyrics by Stephen Schwartz
Based on a concept by Charles Lisanby
Orchestrations by Bruce Coughlin and Martin Erskine

Directed by Matthew Ciborowski
Music directed by David Zych

Darrell Cain * TR Jordan * Carlos Cardenas * Danbee Kim * Noah Brooke Jarrett * Steven Flowers * Krista Sergi * Steven Camina * Daniel Perez * Edmund Golaski * Sally Peach * Kallie Hedberg * Michelle Fogerson * Kathleen McEnnis * J. Michael Spencer * Nicole Berdy * John Deschene * Dawn Erickson * Brie Frame * Keri Garel * Yoni Gray * Greg Lohman * Albert Oppenheimer * Tim Rades * Victoria Stoylar * Karen Wong

From Stephen Schwartz (Godspell and Pippin) and John Caird comes a joyous and inspirational musical about parents, children and faith... not to mention centuries of unresolved family business!
Freely based on the story of Genesis, Children Of Eden is a frank, heartfelt and often humorous examination of the age-old conflict between parents and children. Adam, Eve, Noah and the "Father" who created them deal with the headstrong, cataclysmic actions of their respective children. The show ultimately delivers a bittersweet but inspiring message: that "the hardest part of love... is letting go."

A deeply humanistic work, Children Of Eden appeals to both religious and non-religious audiences.  The melodic, energetic score is a mix of pop, folk, rock, reggae, gospel, Broadway and powerful choral moments. -- MTI

December 1, 2,7, 8, 9 at 8 pm
2 pm matinee on December 3

La Sala De Puerto Rico, MIT Student Center, MIT Campus

$6 MIT & Wellesley students
$8 MIT community, senior citizens, other students
$10 general public
Group rates available.

Please, let me know if you want to come, and I'll get seats for you!
(or) Call (617) 253-6294
Visit our web site at http://web.mit.edu/mtg/


Current Mood: happyhappy

The Rollerman Nov. 17th, 2006 @ 05:02 am
Current Location: My room
Current Mood: tiredtired
Current Music: Five O'Clock Shadow - Images

Content Oct. 19th, 2006 @ 10:15 am
Current Music: Wicked - Thank Goodness - Soundtrack by Stephen Schwart
Tags: ,
Top of Page Powered by LiveJournal.com