Hacker News new | past | comments | ask | show | jobs | submit login
Meet the IOIO - USB breakout board for android w/48 digital+analog IO pins (ytai-mer.blogspot.com)
143 points by JonnieCache on April 8, 2011 | hide | past | favorite | 30 comments



This basically turns your android phone into an overpowered arduino which runs java. Genius. I can see some brilliant hacks coming from this.

Pre-order here: http://www.sparkfun.com/products/10585 ($49.99)


If you can't wait, you can buy a USB host shield for your arduino and then use the microbridge library.

http://www.sparkfun.com/products/9947

http://code.google.com/p/microbridge/

MicroBridge is an Android Debug Bridge (ADB) implementation for microcontrollers. MicroBridge allows stock, unrooted Android devices to talk directly to USB host enabled MCUs, thereby enabling phones to actuate servos, drive DC motors, talk to I2C and SPI devices, read ADCs, and so forth.


within N years you'll be able to pick an android phone out of the trash. I suspect N < 5. That makes projects like this really awesome.


If by "pick out of the trash" you mean "really cheap" then I think that has already happened. You can pick up a G1 for $20 on eBay.


This is really cool!

I've spent the past few weeks working on this[1] with my brother (he built the case and wired/soldered everything; I handled the firmware) and I can think of some awesome applications for this Android board. I'm really excited about the idea of building an Android powered MIDI controller now :)

[1] http://www.djtechtools.com/forum/showthread.php?t=28014


Beautiful work! I love the arcade cabinet style buttons. What kind of things are you looking to trigger with it? I imagine mashing up breakbeats with those buttons would be really compulsive :)


Thanks!

My brother plans on using it for DJing with Traktor.

The ideas is that you never ever need to touch a laptop while DJing. I would love to extend it to use an android phone as a display (so that the laptop can be hidden away under the table or whatever).

At the moment, we have 4 banks which change the MIDI channel of everything else, and 4 banks for the 16 midifighter buttons. These four banks basically map to each one of four Traktor decks. The 4 "global" banks are then used to choose between browsing through songs, loops, various deck control commands and effects.

I imagine mashing up breakbeats with those buttons would be really compulsive :)

Its addictive to mash the buttons and see what happens :D Even an unmodded midifighter provides hours of fun, even if (like me and unlike my brother) you're not terribly musical.

Anyway, we had a little setback - think we may have fried the atmel mcu.. :'( but once its all finished and cleaned up, I intend on releasing the code and writing a blog post about it, which I'll probably submit to HN.


For the screen, build a model with a grey market PSOne display and a touchscreen layer fitted. That'd be amazing.

You should submit to http://hackaday.com as well. They'd most likely feature it.

Also, have you heard of http://hexler.net/touchosc ? It's brilliant fun on the ipad, I've never tried it on android, but there is a port.


Thanks for the suggestion! I'll look into that. Hackaday is a good suggestion too :)

Touchosc looks interesting too, I'll have to give it a try.


That visual charger is slick.

A little OT, but does anyone understand why there aren't usb-to-ethernet adapters for android devices? I have an environment where I cannot use wifi but want network connectivity.


The android ADB debugging protocol includes the ability to forward UNIX sockets over the usb link, so your phone has this facility built in.

http://developer.android.com/guide/developing/tools/adb.html...

Unless I have misunderstood the adb docs, it shouldnt be too hard to set up, even though it only seems to allow ports to be forwarded from the host to the phone, rather than the other way around. Nimble use of netcat/iptables should remedy this.

EDIT: people seem to be calling it "reverse tethering" and while it involves the adb, it doesnt use the port forwarding. See: http://blog.mycila.com/2010/06/reverse-usb-tethering-with-an...


Pick any USB Ethernet adapter supported by Linux, and it should be fairly easy to get it working on your rooted phone.

Here's some code showing how to mess with networking on Android: http://code.google.com/p/android-wifi-tether/


Unfortunately not. Android devices are not yet capable of acting reliably as USB hosts. This means you cannot connect peripheral devices to them.

The IOIO works by acting as a USB host itself.


I've seen android prototype devices by vendors for demos and they have ethernet ports. But I guess that's not a usb interface either, it's native.


One of those G's isn't enough? 3G? 4G?


Bandwidth over 3G or 4G is rarely free; bandwidth over wired Ethernet very typically is.


no cell or wifi communication possible, but ethernet available

I've seen a usb tunnel for iphone but never anything for android.


That seems cool? But can I get one with a bluetooth interface instead of usb?


Something like this : http://www.connectblue.com/products/bluetooth-products/bluet... ?

Of course, it would be easier to buy if it were on SparkFun...


Just getting into electronics AND just put my old (non smart) phone through the washer. I guess I'm going to have to get an android!


Ordered! This looks like fun. :)


Any plans to bring the retroid into mass production? I'd buy one!


Genious!

Does anyone know if there are similar equipment for PCs? I want to hook up a laptop to some electronics equipment for data logging.

Arduino boards are pretty slick but they need some wrapping to work smoothly, i want to have more recommendations.

For clarification, i want the I/O API to be targeted for a program running on the PC. I don't want to write a wrapper in the microcontroller myself and then transfer it over serial port to PC. I want the microcontroller block to be transparent. PC<--->Microcontroller<--->I/O


All development boards will have a USB interface which generally comes up as a serial port. You can then just fire bytes back and forth in whatever way you please.

For a comparison of different boards, see: http://hackaday.com/2011/02/01/what-development-board-to-use...


You probably want to take a look at Firmata:

  http://firmata.org/wiki/Main_Page
It basically does the wrapping for you, so you can control the Arduino from your PC using software you're already familiar with: Python, MaxMSP, Processing, PD etc


You can always chop the end off an old parallel cable and manipulate the state of each pin using whatever language you want on the PC. It's known as 'bit-banging' I believe. It's a simple way to do GPIO.


Most new laptops doesn't have parallel or serial port :(


1)LEGO mindstorms 2) NI DAQs (expensive) 3) BasicStamp (parallax.com) 4) BeagleBoard (then you wont need the PC) 5) Xport (lantronix - has digital IO)


The USB Bit Whacker is also easy to use and available from SparkFun.


This seems to be exactly what i'm looking for. I also find some similar firmware[1] for AVR in case you want to do the same on an arduino or other avr-based construction. Thinking about it just writing the code targeted directly for the µC isn't that complicated. Even though it's nice to have the communication firmware done for you already.

1. http://www.recursion.jp/avrcdc/cdc-io.html#usage




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: