IOIO PowerSwitch Project

I can finally report a conclusion of sorts on the IOIO / PowerSwitch Tail project. The ‘of sorts’ disclaimer is in regards to my Android App, which is pretty much a working beta. I have some issues with my onResume code, and want to put some polish on the UI. That said, I have released the code to the interwebs, so had better provide a write-up.

The setup is the same as I have been posting. Dual open drain pins with a 10K pull to 5V do the lifting…triggering of pins is handled via my IOIO board…Android app providing a UI to do the switching.

beta version: check.

I went ahead and published my app on the Android Market. It will pop for sure by searching for IOIO.

android market app

Price: free ninety nine. Can’t beat that.

I also tossed this code up on GitHub. Go nuts.

github example

Video time: see this in action.

Basically, between all of the shaky camera work, I download my app from the Android Market, connect via USB, and control the 120V relay via my Droid 2. I will shoot a better video once I clean up my code a bit.

Stay tuned. The README on GitHub and the app details section should have all of the connection information. I can provide any further details via email / comments / @swantron. Have fun with this one…

Link to android market
Link to project code at GitHub

Git er Hub

Making progress on the IOIO marathon project.

GitHub has been chosen as the initial hosting deal. Configured with a little hello world this evening.

git hub linux

Click on that for some CLI awesome junk. If not, tune back in for the larger effort soon. Android app may follow.

Adding Headers to an IOIO

Q. Am I dragging my feet with the whole IOIO code cleanup deal?
A. Take a look at this little pictorial dealio regarding soldering headers to my IOIO

Exhb 1:

IOIO headers

Exhb 2:

headers in place on IOIO

Exhb 3:

powered IOIO
golf clap

I’ll get on that; you have my word. I am toying around with the idea of tossing the open drain app on both github and the Android Market, in order to throw some chum out to the crew of IOIO owners. We’ll see.

Android 120V Controller

It was worth the wait…I now control 120V via my Android.

ioio android powerswitch tail 120V FTW
awesome project is awesome

I had a mostly sleepless night, again. I managed to figure out what I had been botching while trying to provide enough juice to my PowerSwitch Tail. Transistors and alligator clamps are out; extra pins are in.

Take a look at the (awful quality) video…on the main page, as the picture quality won’t grind loading to a halt.

I still need to toss some headers on the IOIO, and take some clips out of the picture for a better picture of what I did here. Look for that shortly, along with a snippet. Pretty straight forward, but we’ll have to see where this one ends up.

Blown Multimeter

So, good news and bad news. Yin and Yang.

I managed to get my open drain setup working with the IOIO. Ytai was right…just needed to dump more current through the sucker and pull 5V from the board. See below:

pull up
pulling up to 5V

On to the bad. I wasn’t pushing enough current to trigger my 120V relay…but before I could do some current calculations, my piece of shit Radio Shack multimeter finally gave out. How timely?

Not to worry…a quick trip to Lowes, and we have a new (much higher quality) Ideal DMM:

ideal multimeter
+1 thermocouple

Your eyes aren’t fooling you…that is a thermocouple. Thermocouple and stand…pretty official.

I’ll get some calculations done and figure out where we are with this guy…pretty close!

Adding Surface Mount Power to IOIO

Some career-oriented things have kept me largely out of the Bad Lab. I finally decided to dust of the soldering station and get a permanent power connector surface mounted to my IOIO board.

I tackled this project before I headed to work…I think the pre-coffee pre-jitter scenario worked out well. Anyhow, this is the component from SparkFun:

surface mount power jack
tiny surface mount is tiny

It is a simple two pin surface mount compact connector. Nice current rating, so I am hoping it will give me enough juice to pull 5V in my pull-up project.

The issue to overcome in the actual soldering was keeping this little sucker in place and stable to get the first joint in place. My solution, once again, ended up involving my adjustable clamps. These things are great, especially compared to the ‘helper hands’ alligator clip stand. Wonky hands would be more apt.

+2 clamps

For a little connector, it seems to be fairly secure. I also picked up a barrel jack to two pin connector from SparkFun.

mount surface
surface mount mounted

Hooked up to a wall wart…survey says:

ioio power
power-ed up

We have power. I will test it against some loads, and get back on the pull-up project. Here goes nothing…

Open Drain Example IOIO Android


This project never ends.

I have been cutting my teeth on some electrical engineering 101, in an effort to push 5V through my IOIO. At this point, I am still not able to report a success.

I do have the ‘open drain’ setup working, at a lower voltage than I am intending. My configuration is as follows:

pull up resistor
pulling up to 5V

The Java snippet that is doing the pin defining is this guy:

DigitalOutput out = ioio.openDigitalOutput(25, DigitalOutput.Spec.Mode.OPEN_DRAIN, true);

The only issue is with my setup…for some reason, my circuit isn’t able to pull to 5V. See the DMM readout v

almost there
so close...

So, back to the drawing board. When the switch is open via my app, the pull up resister should settle Vout to 5V. The other half of the scenario is fully functional, as a closed switch grounds as intended.

My next plan of attack involves a more permanent power source, and I have placed my order with SparkFun for a surface mount / wall wart combo that will do the trick. I am hoping that my issue is with the power, but time will (shortly) tell if this is the case.

Stay tuned. Getting close on this one…

Bad Lab in Action

My enjoyable night of programming my IOIO slowly devolved into a digital multimeter-needing mess.

bad lab in action
bad lab

Either I am reading the spec sheet incorrectly, or this thing is wonky. I have implemented a pull-up resister, and *should be pushing 5V. In reality, I am seeing 3.8V…something is amiss.

Back to the drawing board.

Android IOIO Digital Output

I am one coding session and one EE session away from having a pretty cool project to post. In the meantime, I am making some progress with the IOIO.

ioio android speaker project
+1 a bunch of wires

Eclipse and I are still having our issues, but the ADK is becoming less Greek to me. The next project should shed some light on what sort of possibilities IOIO presents.

I shot a video of one of my debugging tests. I eventually will be using an ‘open drain’ setup, in order to get 5V output, but am doing some testing at 3.3V. I hooked up an old speaker that I salvaged from a CRT tear-down to my test pins, to verify that my Android App was working.

Hit the jump to view said vid…
Continue reading “Android IOIO Digital Output”

I Need a Camera

I need either a camera, or a backup Android for dev. I’m shooting for the later. For real though…cash for a used Droid X. Anyone know of a good marketplace to pick a used one up? I’ll entertain offers at joe[at]swantron[dot]com. You know you want an iPhone…

Here is the motivation:

i need a camera
messy lab is messy

I had to swing the laptop around to snap a picture of my Monday-Funday effort for this week. I need to snap (shoot maybe?) a video of my IOIO work, but I find myself in want of a micro SD card. Both of my 2GB cards are at the office, and my IOIO Android app is sitting happily on my Droid 2’s memory card. For the loss. Loss like the Droid X’s battery tendencies. Really, get rid of that phone. It is awful…I will be doing you a favor by taking it off of your hands. The screen is too big…hard to fit in your pocket, etc. Cash.

I’ll get a vid up tomorrow. Fear not.