Tuesday, September 6, 2011

More Chumby Hacks (Insignia Infocast)

I used Ultra Voice Changer, an Android app, to record some audio and alter it using the built-in robot filter preset. The alien presets are pretty cool too. Alternatively, you could use a text to speech website from AT&T Labs to generate some nice vocals for your Chumby. I plan to use these .wav files to indicate startup, shutdown, and a few other status changes. I saved mine in mono at 11 kHz to save on space. I then transferred my audio files by usb stick to the Chumby and placed them in a directory I made at /mnt/storage/sounds/ From there it's simply a matter of calling
aplay /mnt/storage/sounds/robotmode.wav
to call up our .wav files. If you prefer .mp3 format, use btplay instead.

Saturday, September 3, 2011

Chumby Hacks (Insignia Infocast)

First off, I could not ssh into my device from Putty or any other remote terminal as described in the Chumby Tricks wiki. So, I attached a USB keyboard to the Infocast, which automatically puts it in terminal mode. Then, I typed:
mount -o remount,rw /
putting the root filesystem into read,write mode.
Next, type:
passwd root
to create a root password. Enter it twice as prompted, then you should be able to ssh in remotely.
Unplug your keyboard and ssh into it from a remote computer!

Successfully connected? You should see the chumby logo in ASCII art.

Next, we'll have the sshd server always start upon bootup.
From your remote terminal app of choice, type:
touch /psp/start_sshd
That's all there is to it!

Following the directions at adafruit, I next installed the falconwing gcc toolchain. So far, so good!

Using directions from this page, install python! Here's how to install it: 

cd /mnt/storage 
wget http://files.chumby.com/languages/python/python2.6-­chumby.tgz 
tar -­xzf python2.6-­chumby.tgz 
python --­­help 

Great! Now I have all the programming environments necessary for more robotic tinkering in the near future.

Adventures in ChumbyLand!

Hello again! Been a long time since my last blog post, but I have been busy!
     This summer, I finally got around to hacking my Insignia Infocast 3.5", now discontinued :-( which I picked up after Christmas for $49. I made a lot of tweeks and hacks to it, to make it the brains of my next robot. Unfortunately, I went a little too far editing the boot sequence and bricked it! Being a dummy, I didn't back up the sdcard rom before messing with the device. But after much searching, I found the OEM rom image and a control panel update to my relief. BTW, a standard Chumby Industries falconwing nor a Adafruit Chumby Hacker Board rom image will work on the Infocast 3.5".
     So now I have it back up again, to factory original! This time I backed up the rom image, update.tgz, and will document all the hacks I do, in case I screw things up again!

Wednesday, May 11, 2011

Oh Noooooo!!!!!

I would hold off on that Rennbotics servo shield for now. I think I burned $1000 worth of servos connected to it! All servos were digital Hitec HS-5990tg and HS-7954sh with 6V pack as the supply and groung plugs confirmed. Prior to connecting them all, I verified operation via a Turnigy servo tester using the same 6V pack. While connected to the Freeduino via USB to my PC, they responded somewhat to commands from the keyboard but twitched and never realized full speed or range of motion. After disconnecting, I retested using the servo tester and saw mass failure! Some moved sluggishly and some not at all. I ordered a Hitech HPP-20 servo programmer in the faintest hope that maybe a board reset may be possible.


Some good news: 
Using a Hitec HP-20 servo programmer, I managed to revive all the digital servos and even the analog 645MG's! While I was at it, I turned on protection, which will halve the motors output in the event of a stalled situation and enabled 180 deg rotation instead of the as-shipped 60 degrees. Best $26 I ever spent!

Going through the old threads regarding PLM designs. I have settled on one easy enough for me to hack together in the garage using the basic hand tools at my disposal. So here's what I'm shooting for. The 45 deg brackets are Lynxmotion SES offset brackets I plan to drill holes into to allow attachment of the parallel link. I have not yet decided if the twin knee servos will be necessary as I am using HS-5990TG's for the upper and lower links.

Monday, April 25, 2011

Controlling a Picoswitch with Arduino

I had a viewer of my Youtube channel request the code accompanying this video. I made this video a long time back because I wanted to trigger a battery-powered airsoft gun from my robot. The Picoswitch is a solid state relay that works with pulse width modulation, same as a standard hobby servo. What this means is, you can supply power to the switch, and a load, such as an electric motor and you can toggle off and on any device up to 1 Amp from a standard R/C radio or microcontroller. If you need more current flow, try Dimension Engineering's Battleswitch. I know, the code says servo, but treat it exactly the same and it works.
Here ya go!

// Controlling a servo position using a potentiometer (variable resistor)
// by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin
int pulse; // variable to show pulse width
void setup()
Serial.begin(9600); // begins serial communication with the computer
myservo.attach(12); // attaches the servo on pin 12 to the servo object
void loop()
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180)
pulse = map(val, 0, 179, 750, 2250); // get a pulse width for current pot position
myservo.write(val); // sets the servo position according to the scaled value
Serial.print("degrees ");
Serial.print(" pulse" );
delay(15); // waits for the servo to get there

Friday, April 22, 2011

New Humanoid

I have 16 servos, 4 x HSR-5990TG, 6 HS-7954SH, and 6 HS-645MG. Brains will be provided by a SolarBotics Freeduino and Rennbotics servo shield supporting 16 servos. Both will be stuffed into a Freeduino project box with 9V cell providing juice for the Freeduino and a Tenergy 6V 2000 mAh pack for the servos. Control will be via Arbotix commander gamepad over Xbee to the Freeduino.

Hardware will be lasercut, .063" 5052 aluminum and possibly nylon block for servo mounts. The leg design will be a 4 DOF PLM layout, with a servo in each of the hip and ankle tilt locations and one more servo in each of the hip and ankle lift positions. None in the knee area, this is where the parallel links will attach. I will reserve one more servo for the hip rotate if needed. The torso will be solidly mounted to the lower body, meaning no waist rotate. The head will have no pan or tilt either.
For the feet, I have these beautifully machined delrin feet from "Quantum" over on the Trossen Robotics forum.

They are perfectly smooth and rigid, and should provide the perfect balance between traction and glide I'm looking for.  :-)

Here is the head I plan on using. Its a gear shift knob found in the automotive aisle of my local bigbox store.

For this build, I plan to add some sensory for autonomous events. I will mount a Maxbotics EZ1 sonar, Sharp GP2D12 IR, and tilt sensors to automatically trigger getup sequences.

As for project name, I am still undecided. I was leaning toward something military sounding like Corporal Punishment or Major Malfunction, just not Sgt Slaughter (been done already). Any ideas?

Monday, April 18, 2011

Lightweight Kung Fu bouts

I had a bye in my first round. Second round I was up against Rob Farrell's Zot. Whew! I just didn't have the speed or mass to move that guy! So, that was it for Saturday. It was double elimination, so I was hoping to get some payback on maybe a more equally built bot. Turns out Sunday I was up against Boomer, an almost stock Bioloid Premium. That's more like it! Anyways, I think I was leading in points, and felt like the judges maybe were counting my reverse attacks as slips instead. Could be I just didn't understand the rules either, oh well.. But ultimately, what did me in was my own battery pack. I insured it was fully charged before proceeding to the ring, but it kept going into protect mode, probably from pulling too many amps. Never happened before. But not to take anything away from Mike. A fair win to a better opponent! Congrats!

365 days till RoboGames 2012!

Just came back from an amazing weekend at RoboGames in San Mateo, California. What a good time I had! Meeting interesting people and their projects, catching up with old friends and making some new ones I've only chatted with online before. I showed up with two robots hoping to compete in Mech Warfare and Lightweight Kung-Fu. Due to my own lack of preparation, Warchild was not able to be ready in time to qualify for M-W, but I was fully confident in Musa's ability to crack some metallic skulls in the kung-fu octagon! Rather than frantically scurrying to qualify, as in previous years, I decided to let it go, take a chill pill and just enjoy the weekend. Highlights of the weekend included meeting the RobotJapan team and their amazing humanoids, especially Shiba, Mike, from the I-Bioloid blog I check in on regularly, and Tony from Hitech RCD. I just love the camaraderie and cooperative spirit present at this event! So here's some random pics and video I took. LOOK OVER TO THE RIGHT-SIDE NAVIGATION BAR FOR THE LINK. ----------------->

Sunday, April 10, 2011

Less than a week to go!!!

OMG! I am up against the wall on Warchild's rebuild. The lower torso will be retained from last year with some lightening slots for weight savings. A total refab of the turret is necessary, due to the selection of dual tank guns over the single Defender used last year. The extra half panels required by this year's rule change won't make things easier. On top of that, I have to scrap last year's feet because they caught too much traction on the textured floor surface. My Visual C# control software doesn't work anymore for some reason and has to be totally rewritten. Four days to go and I am in full on panic mode now!
On the bright side, Musa is ready as can be for Kung Fu. I hope I fare well against some of the more experienced competitors in this division and more torque-ier robots being fielded.

Wednesday, February 23, 2011

Unbrick your X-Bee wireless module

Trying to configure and update the firmware on my brand-new Xbee module pair, I managed to 'brick' them! After an exhaustive search online, I tried every method suggested I could find, to no avail. I finally broke down and called tech support at Digi. While they don't offer direct customer support, that's for the retailer you purchased the unit from, I was referred to a site that that would help. The support rep said if the instructions on this page didn't work, the unit was definitely 'bricked' and unrecoverable. Lo and behold, it worked! Much thanks to that support rep and the creator of this page. Click here for the link. One step I must add. When using a Sparkfun Explorer and the "Action Required" message box comes up, short the GND and RST pins to reset the board.

Tuesday, February 22, 2011

Learning CAD and Bioloid GP arms

I've started tinkering around with some CAD lately. It could be a feather in my cap, and help in my day job as a CNC machinist. But at the same time, learning CAD is fun and will allow me to create my own custom robot parts. Right now, I really have no need for a full blown, expensive 3D program, so I did some searching online and came across DraftSight by Dassault Systemes, the same creators of Solidworks. I've tried several freebie CAD packages and all fell short in one way or another. This is two nights' work with DraftSight and I have to say, I am really pleased with the results. My first CAD drawing! This is a flat pattern of my take on a Bioloid GP-style arm. I am going to have this lasered out of .050"-.060" aluminum and then I'll bend it on my mini brake in the garage. As always, if you'd like to download a copy for your own use, click here.

Thursday, February 10, 2011

Some work on Musa's walking gaits.

So I stayed up late last night working out some more gaits for Musa. Here is a picture of the spreadsheet tool I made to help out. I create a step or sequence I like by pose and creation. Then I enter the values from the pose editor within Pypose into my spreadsheet tool. The spreadsheet will calculate the value required to reverse or invert that servo from it's center position. Using this method, for example, allows me to create a left step of the foot and recreate its exact duplicate with the right step of the foot.

Here's the link to it. Included are a version for OpenOffice and MS Excel97, along with instructions on how to use it. Gait Creation Helper Tool

And video of my latest results.

As always, please leave comments, criticisms or questions.

Friday, January 21, 2011

First post

Well, after a long (6+ months) hiatus away from robotics, it's time to get my rear in gear, in prepararation for RoboGames 2011. What's planned?

1. For starters, the return of Warchild, my hobby servo based Mech. He's getting a Solarbotics Freeduino for brains and Rennbotics servo shield for control this year. Xbee communication is new to the mix, over my unreliable Bluetooth connection in the past. All gun motors will be noise suppressed with a generous addition of capacitor filters.

2. The debut of Musa, my Bioloid-based kung fu combatant. This one is sporting an Arbotix robocontroller and Xbee communications as well.

3. Two new handheld controllers to pilot them both. For Musa, I will be using a recycled helicopter radio, gutted of all but the case and gimbals. Inside will be an Ardweeny and Xbee regulated module and as many buttons as I can fit till I run out of pins on the Ardweeny.

   The second controller will be a mech-style cockpit with Logitech Attack3 joystick and custom throttle with tons of blinky switches and xbee communication as well.

So, lots of work ahead, but it's going to be an exciting year! Stay tuned for pics, video and many updates!!!