Friday, October 29, 2010

Robotic Rodeo -- Day 2 -- Somebody taunted murphey

The day started out early--about 3 AM Pacific time. We headed straight to Fort Benning to set up for our demo in the chilly morning air, fortified by a breakfast of soggy, lukewarm egg muffins.

From that high point, the day rapidly went downhill. The radios, which had worked so beautifully the day before, gave up the ghost with a vengeful permanence. If I had known at that point that it was simply the first taste of what was to quickly come, I might have followed suit.

The demo was at 10:30, a couple hours away. At first we didn't panic, assuming that the radios could be resuscitated. As time ticked away and radios remained stubbornly silent, however, the Antenna Products people became more and more frantic. A team of heart surgeons racing to beat a rising flood wouldn't even have approached their intensity. We were working on issues of our own so we couldn't watch, but Davin kept us updated on their progress. It went something like this:

"They're checking the connections."
"They're checking the linux kernel."
"They're reinstalling linux."
"They're opening up the radios."
"They're checking the circuit boards."
"They're replacing the circuit boards."
"They're stomping on the radios."
"They're rebuilding the radios from scratch."

The Antenna Products people were under a lot of stress, and Davin finally decided to stay at our own booth after one too many over-the-shoulder suggestions got him threatened with a fist to the face (these were big Texas guys). I don't think the guy was joking, either. At one point, one of the Antenna Products guys came over and said that the boss had just fired two people back home.

Like I said, though, we were dealing with problems of our own. For some reason, an ugly bug had chosen that morning to rear its head in our code. I finally had to give up working on that because we had to attempt to implement our fall-back comms solution: off-the-shelf wireless Internet.

Since we hadn't worked with it hardly at all, and we were down to our last few minutes before the demo, that predictably didn't go well and we finally gave up on that as well. What we didn't realize until later was that most people were having communication issues, due in part to the sheer number of people in the same tent all trying to use the same frequencies.

Also, it didn't help that someone had brought a massively overpowered radio that was drowning everyone else out. That was our suspicion by that point (confirmed later) and Davin got the person-in-charge to make an announcement over the PA for everyone NOT doing a demo to turn off their radios, but of course the vendor didn't. Their comms worked great.

The time for our demo to start came and went with us still trying to get a robot working. We finally gave up on the comms and simply planted our robot at the front of the demo area. If nothing else, we could demonstrate how you could plug and unplug two different sensors and they would automagically work.

Except one didn't. As we discovered later, the actual cord for the sensor had gone bad. The cord. When was the last time you ever saw a cord go bad? That's right, never. It just doesn't happen. Davin glossed over the issue as best he could, but at the end of the day it was a totally disastrous demo. The one tiny saving grace was that most of our audience was just a busload of school kids who had been trucked out to look around, and they don't usually have fat, multi-million dollar contracts to give out.

The rest of the day was spent working over radios, robots, and sensor cords. By evening time, everything was coated with dust and we were all hungry and tired, but at least the radios were starting to work. Mostly due to everyone else going home and freeing up the airwaves. We finally packed up and followed suit. Davin had pushed off all the unofficial demos he had promised people to the next day, so it would be a late night. Hopefully, the next day would be better.

Wednesday, October 20, 2010

Robotic Rodeo -- Day 1 -- Setting up

Wednesday was setup day. The rodeo was held right on the military base, with the building-sized tent set up on an old firing range, to judge from the number of empty shell-casings that littered the ground. I contemplated throwing a few of them into John's backpack, just to make things a little more exciting when he tried to go through airport security on the way home, then thought better of it. If he were wrestled to the ground and tazed, it might hold up the whole security line and I'd miss my flight as well.

The tent had probably 50 booths, otherwise known as "folding tables." Since our company had turned borrowing other companies' equipment into an artform (our robots, laptops, radios, pretty much everything but the code we brought had been bummed off someone), we saw no reason to stop at the rodeo and talked AMREL, a laptop company, into letting us share their booth. We were even generous enough to give them one of the two tables on the second day.

Over the course of the rodeo, we borrowed additional robot parts from Segway, tools from AMREL, and additional antennas and radios from Antenna Products. We took AMREL's demo slot (you can't really demo a laptop, right?) and crashed the last 10 minutes of one of Segway's demo slots. In the afternoon, Davin talked AMREL into buying us lunch.

I felt a little bad about all our mooching, especially since it was more of a cycle than straight-up borrowing. We'd take one of Antenna Product's radios, break it, give it back, and borrow the next one at the same time. They could barely fix their equipment fast enough to keep up with us. Davin had to promise them ever-increasing future profits from our partnership just to keep them from beating us with wrenches.

The two robots we took to the rodeo, sans all their radios, laptops, and other hardware accoutrements
Left to right: Segway RMP 50, Segway RMP 400

By the end of the day, however, everything was looking rosy. With the help of Antenna Products, who made the radios, we got the RMP 400 to venture further from Home Base than he ever had before. The laptops were in fine form and the computer programs had brought their A-game. Our first demo was at 10:30 the next morning and our confidence was high.

There was one thing we forgot to take into account, however: Murphy's Law. We would discover three things the next morning.

1) Having an early demo slot is a bad idea. If something goes wrong, you have no time to fix it before showing--or not showing--your demo to top military and civilian leaders whom you've specifically invited.

2) It's a lot easier to make your radios work when there's not 49 other companies trying to make their radios work at the same time. Especially if one of them is nefarious.

3) Working radios are kinda essential for a good demo. When your robot is tethered to your control computer with a three-foot cable, it's hard to explain the advantages of your system to, say, a bomb-disposal technician.

If you've got an iron stomach and don't mind a little carnage--at least someone else's--tune in tomorrow for the next compelling segment in our ongoing saga: Robots Gone Wild: How Boeing Almost Lost Their Entire Robotics Team to a Crazy Robot From 5D Robotics, Inc. Fortunately, the Driver Managed To Evade the Military Police, Since I Really Didn't Want to Spend the Next 10 to 15 Years With Three Off For Good Behavior at Fort Benning, Charming As It Is.

Also, we need to talk with our saga-naming people.

Tuesday, October 19, 2010

Latest project: robotic bike

Our latest project at work has been robotizing a bicycle. Here's what we have so far:


Sunday, October 17, 2010

Robotic Rodeo -- Day 0 -- The Seventh Carry-on

Tuesday morning, three of us from 5D Robotics, Inc. arrived at the San Diego airport. Our destination, by way of the Atlanta, GA airport, was Fort Benning, GA. Our mission over the course of the week was to demonstrate 5D Robotics' capabilities at the Robotics Rodeo.

Everyone knows that a trip of this importance does not go flawlessly. We got things off to a quick start.

You have to understand that the three of us arrive at the airport with 11 items of luggage in tow. Two suitcases or carry-ons each, two large crates of equipment, a carry-on-sized battery charger for military-spec batteries, a banner in long tube, plus a Segway robot. Even after checking what needed to be checked, we had six carry-ons between us. It should be understandable that a little confusion might arise about whose luggage belonged to whom and what exactly we had in tow.

Going through TSA security, John (names have been changed) is pulled aside. He's carrying the battery-charger as one of his carry-ons and that many wires and electronics in a military-green case is a little suspicious. He's taken to a nearby table for interrogation and trying to expedite our traveling, Davin takes a suitcase off the conveyor belt that he thinks belongs to John.

John is finally released by TSA and Davin hands the suitcase he grabbed back to John. John, of course, thinks that the suitcase belongs to Davin, and that Davin was just trying to pawn the job of carrying his luggage off on him. "Why does Davin even have three carry-ons?" John wonders to himself. "He's a Platinum member of Delta's frequent flier program. You'd think he'd learn to pack lighter." Being the nice guy he is, though, John says nothing and takes the suitcase.

We reach the gate, seven carry-ons in tow. Being a Platinum-level member of Delta's frequent flier program, Davin has a seat in the first-class section while John and I will slum it in coach. First-class people get to board first and as they are invited to come forward, John finally tires of lugging Davin's third suitcase. "Here, take this with you," John says, shoving the suitcase at Davin. "Being first-class, you'll have an easier time getting three carry-ons past the gate agent than either of us."

At this point, Davin thinks that John is now trying to pawn his luggage off on Davin, but he takes the suitcase anyway. The gate agent manning the microphone sees Davin coming with his three carry-ons and quickly makes an announcment--"We remind our passengers that there are only TWO carry-ons allowed per passenger"--but it's too late. Pretending not to hear, Davin gets past the ticketing agent and is free.

Arriving in Atlanta, Delta does its best to give us all heart attacks by cleverly moving our equipment crates from the regular baggage carousel to the oversized-baggage area, but we finally locate at and load it into our rental minivan. We drive for an hour and a half down to Columbus, GA, finally arriving at our hotel late at night. As we unload the minivan, John turns to go inside with a single backpack in hand. This is too much for Davin. "Do you want to take your stupid suitcase?" he asks, shoving the seventh carry-on at John.

John looks at it. "It's not mine," he says. Davin looks at me. "It's not mine," I quickly say. Davin frowns. "It's not mine," he says.

We stole someone's luggage. From security.

We take the bag up to my hotel room and start digging through it. We don't see any identification on the outside (Owner: "It's a carry-on! There's no possible way it could get lost.") and there's nothing inside but a stack of brand-new clothing with tags still attached and, inexplicably, a complete roll of about 5o Hefty trash bags.

Doing a second inspection of the outside of the bag, I finally notice a tiny scrap of sticker left over from some long-past flight with the name "Doe/Jane" on it. Since we took the bag from security, we don't even know which airline the person may have been flying, so I just call Delta.

It takes several minutes to get across to the baggage claims lady that we were in fact trying to return luggage rather than looking for a lost bag of our own, but she finally understands. "Well, just bring it back to the airport when you fly home," she says. Since that won't be for another another three days, Davin gets online and starts searching for every Jane Doe he can find. There are several, so he sends emails to the most likely ones.

One of the Jane Does, according to Google, ran a 17-minute mile in some race, which might explain her lack of catching up to us if she was, in fact, the one we had stolen the bag from. "Wait!" she calls out in her wavery voice, shuffling after us with her walker as we casually stroll off into the distance. "Come back with my suitcase! It has all my trash baaaaaagggggs!"

Anyway, by that time it is late and we are tired. "The day could have been worse, though," Davin points out. "Someone could have stolen our bags instead of vice versa. At least Jane Doe has the clothes she's wearing, and you can pick up trash bags practically anywhere. We wouldn't get very far at a robot demo without a robot though."

As we would find out the following day, however, there are more things than just losing a robot that can make a presenter start sweating at a robot demo. Stay tuned for the next installment of "Murphy's Law: An In-depth Exploration."