Hacker News new | past | comments | ask | show | jobs | submit login
Projects: hijack (Hijacking the iPhone earphone jack) (umich.edu)
183 points by dholowiski on Jan 14, 2011 | hide | past | favorite | 40 comments



Pheh, they forgot the best application ever: iPhone-controlled vibrator:

http://www.ohmibod.com/bodyheat/

I was at a presentation by the app's creator, apparently the hardware was already available through some company, so you could theoretically do it with any device that outputs to a headphone jack. The iPhone's touch interface simply provided a ... unique and apparently (don't ask me!) expressive method of control.


That's truly amazing what they're doing here. I'm sorry if this is an ignorant question, but wouldn't it make sense for there to be some kind of USB port or something that's actually designed for I/O on the iPhone? I mean, surely there'd be less power loss if the port was actually designed to power other low power devices. Especially if it could mean that you don't need as powerful of an external microcontroller for doing the hacking and encoding that's necessary for doing all the work-arounds from not having a real IO port.


Apple wants you to use their 30 pin interface, but that requires going through their MFi program and that lets them control the hardware ecosystem like they do the software ecosystem.

To be fair, there are certain advantages to hardware manufacturers willing to jump those hurdles. You're able to ensure no one can make software for your hardware, for one. Secondly users who plug in your hardware can automatically be taken to the app store to download your software.


Also the headphone jack is available on all phones and if you develop for 30 pin interface, you have to design different hardware connector for different phones


Is there anyplace online people in the MFi program hang out (forums, usenet, mail lists, etc.)? I've got some very basic questions about the whole process, but it seems like such a black hole (from the outside looking in).

It would be great to use the ipods or ipads for industrial data collection, but we'll need IR and a way to get data on/off without network connectivity.


Not that I've seen, and the NDA you have to accept is pretty strict.


That's what I was afraid of. In the quantities we're looking at, maybe we'd be better off jailbreaking and selling the whole thing as a package.

Or maybe I'll just drag my feet a bit and hope there's a decent Android tablet with USB host and an SD slot coming soon...


You should take a look at Adam from Notion Ink. It's USB host. To me that's the killer feature, for this reason!


So far, it's vapourware. That's something I just can't get over when I consider ordering one.


If it's vapourware then what were they showing at CES 2011?


It's vapourware until you can buy one. A lot of things that are shown at CES do end up being cancelled before they're ever released.


The pre-orders are shipping. Mine will arrive in about two weeks.


And there was video footage of Duke Nukem Forever shown off in 1998.


Thanks, that's an interesting device.


I really have no idea about the iPhone, but the iPad can be a USB host via the USB part of apple's camera connection kit.


I think it's a very interesting project. I've been very interested in things that combine hardware with smart phones, since the Apple keynote that showed the first authorized hardware "extensions". (though since then, I've been disappointed in not seeing much of anything)

However, can anyone chime in about the differences there are between using the iPhone jack and using the dock connector? I know you're supposed to fill out some docs with Apple to officially hack on the dock connector, but I believe you can find hardware to do that without Apple's consent. It looks like one would have to go the jailbreak route with that project as well.

I imagine the main thing is that a hobbyist can much more easily/cheaply get a jack connector than a dock connector...


You could create un-authorized hardware and apps using the 30 pin connector, but they would only run on jailbroken devices. There are places to buy knock-off (non-apple made) dock connectors so some people must do this.


Also check out the Southern Stars SkyWire. Apparently it's a true RS-232 I/O cable that plugs into the dock connector. They use it to drive telescopes, but apparently it's not limited to that.

http://www.southernstars.com/products/skywire/index.html

I've gotten as far as opening an input and output stream with it, but I haven't had time to dig up an RS-232 device to try talking back and forth.


Unless you have a jailbroken device, arbitrary apps you write won't be able to access that stream.


You can use the EAAccessory framework to talk to it. Just use the protocol string "com.southernstars.sw9a".

What I'm not sure of is what sorts of apps they'll let into the app store that repurpose the cable.

EDIT: Here's my test code thus far:

https://github.com/frankus/SkyWireTest


Apps using that won't pass certification, but you're right you can use your own provisioned apps.


For a researcher who's both familiar and happy with Cocoa, I assume jailbreaking wouldn't be a big hurdle.

Hell, GNUStep was created just to port a single application!


These are made by RedPark


Now if only you were permitted to write software to take advantage of the cool hardware you build.


Square has their app on the marketplace. https://squareup.com/


Worth noting they may have had to go through additional testing. When you submit an app that needs MFi hardware, they make you submit the hardware as well and test both together. They may have demanded something similar for Square.

Also worth noting that square is not drawing power, doing so might make them reject your app. Especially because this harvest method is fairly inefficient (power is being converted twice before its useful). Draw on the iphone battery may be 4x the power used.


I have no experience with the App Store approval process but it seems like this might fly. It just uses the audio jack as any custom mic/headset might; conceivably they could use valid API calls to just play or listen for sound and/or drive a constant powering voltage.


There is a guy who has about a dozen of apps in the store that (ab)use the headphone jack to power and control external hardware.

Among them is a laser pointer [1], a controller for RC power outlets [2] and countless others.

    [1] http://hmb-tec.de/iPhoneApps/LaserPointer.html
    [2] http://www.hmb-tec.de/HMB-TEC/Funksteckdose.html
    (Links are in German)


Cool project!

Currently, I am a bit doubtful concerning whether drawing extra power from an already very battery lifetime-constrained smartphone is a good idea.

On the other hand, the batteries shold improve in the future, so with a bit of luck the idea may just as well come to maturity at the right time!


It doesn't drain the battery any more than listening to music does :) Really cool project!


Listening to music doesn't drive a constant 22 kHz tone.

[Edit] I really don't understand -- why was I downvoted here? Can someone explain why they think I'm wrong? Isn't a constant, high-frequency tone going to draw more power than variable output with significant larger gaps (and a likely lower peak voltage difference?)


From their paper:

"To estimate the impact of energy harvesting on the phone, we modifying an iPod Touch to measure battery current and voltage. We play an audio file that generates the required 22 kHz tone and find that the iPod draws 91 mA at 4.04 V when the harvester is attached and 37 mA at 4.04 V when the harvester is not attached.

These figures illustrate the substantial inefficiency of this approach compared with directly supplying power to a peripheral. We note, however, that the power output of an iPod is higher than an iPhone, making the numbers appear worse than they are on the iPhone."


Speaking of figures, I wonder how this would compare to what can be gathered from ambient radiowaves with a device of a similar size.

I remember a posting from somewhere where Nokia claimed to reach in the miliwatt range only using ambient radiowaves. Can't seem to find it again though.


Wow, that's a hell of a hack just because your smartphone maker wants to rent-seek your serial port.


Clever idea, using the audio output as a power supply.


7.4mW is more power than I would have thought possible. That is really cool. Plus with some additional hackery you may be able harvest up to double by toggling the second audio channel on and off when you don't need to receive data from the phone.

I'm going to put together a board based on their specs. If anyone in the bay area is interested in collaborating on a project with it shoot me an email.


Does anyone have information on doing something like this wirelessly? Provided your sensor has its own power source, couldn't you use the fm receiver built into a lot of phones to receive data from an external sensor?


The O'Reilly "iPhone Hacks" book has schematics and sample code to push RS-232 in and out of the headphone jack. You'll need a self-powered device to decode FSK on the other end, of course.


HiJack in full case reminded of square. https://squareup.com


Maaaaan I had this idea over 2 years ago... except my ideas revolved more around robotics. I wish I was a bit older so I had the resources (money) and time to work on these kinds of ideas that I have. Previously, all my time was consumed by school/internship/band (I was a signed, professional touring musician). And now all my time is consumed by getting my startup going... in the hopes that it will eventually be somewhat self-sustaining enough to cover my living costs while giving me time to pursue these other more interesting ideas. Sigh... sorry for the rant that I'm sure no one cares to read.




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

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

Search: