HiJacking the iPhone's Headset Port
An anonymous reader writes "Researchers at the University of Michigan describe how to hijack the iPhone's headset port to power peripherals, establish bi-directional communications with them, and interface various sensors, all without jailbreaking your iPhone or having to pay thousands to access to the Apple Dock Connector. This makes it possible for students, hackers, and DIYers to extend the phone's functionality to the physical world. The team is giving away 20 HiJack modules/programmers to enable new apps."
Could you rig up something similar to Android's "back" button with this? The lack of a back button and the lack of the notification pull-down are the major things that would ever prevent me from getting an iPhone...
Living With a Nerd
Sweet, anxious to see what research comes out of this. Maybe this could be used for the Touch so we can finally get a nice GPS with it.
Seems like the Square credit card swipe dongle is doing something similar. Does anyone know if the method is same as Hijack?
Have a Day!
This one works on other devices too: https://squareup.com/
The credit card reader Square does this and it has existed for about a year.
These guys have rediscovered the modem, circa 1982.
I've done something similar using a Bluetooth headset. Open up the headset and remove the microphone. Use a PWM output of an embedded microprocessor to read the sensor and drive the microphone input. Send data to the host with FSK modulation.
With the Bluetooth headset, your sensor is wireless as well.
Thousands to access the dock connector? What does tha mean? You can get one at OverStock.com for 6 and half American dollars.
Or did you mean developers pay thousands by having to buy licenses and Apple machines to develop on? Confusing. Unclear.
Who would have ever thought you could hook a phone up to a modem? OMG! LOL
Encryption: I may not agree with what you say, but I will defend your right to encrypt it...
But couldn't you send a more useful waveform such as a 1-Wire data stream? You could have all sorts of standard sensors/etc on the dev board with an 1-Wire bus.
At 16KHz max clock rate, you probably could just send the 1-Wire waveform directly and square up any audio filter-induced droop in the receiver.
Tiller's Rule: Never use a word in written form that you've only heard and never read. You will end up looking foolish.
Guys, stop this madness...
thx Steve
Won't Apple just reject any app that tries this kind of "mis"-use of the headphone jack? I doubt that they would allow this...
Or if you're a genius hacker, you can buy something with an ADC connector and... cut the cable, strip the wires, and have access to all its functions for a few dollars. Or maybe I'm missing something.
Just in case, here is the CORAL link:
http://eecs.umich.edu.nyud.net/~prabal/projects/hijack/
Willie...
On most phones, you would just use USB, that's what it's for.
Power (7.4 mW) and Data (300baud) over audio jack? 7.4 mW and 300 baud !
This hack is a bad work around for bad design.
...that are proven to use the headset port for accessing peripherals? Given their obsession with control, that seems like exactly the kind of thing they might want to restrict with T&C's.
Thank goodness the (closed source) iPhone is more secure than those nasty open source devices.
Have gnu, will travel.
Now with "headset port" removed, integrated w/ dock port 3.0.
<EG>
Why doesn't Apple just open up the spec for the dock connector already? It's absurd that practically every stereo, car, etc comes with one nowadays even though it only works with products from one vendor.
Heck they managed it with mini DisplayPort, although I suspect that was because it was they only chance for the connector they already used on their laptops to face wide adoption. If Apple is ever open it's only to benefit themselves and not the industry as a whole which is worrying given their size.ominance.
Stupid Android phones with their easy, accessible, standard USB ports and connectors!!! Takes all the fun out of it!
"thousands to access to the Apple Dock Connector."
why? is there some kind of testing hardware you have to get to use the dock connector API's?
Kids, in order to build hot mobile apps, get yourself a piece of locked down hardware from a control freak company. Then, reinvent 50 year old technology to circumvent the restrictions that company put on it. Then, write software in a weird variant of the C language, software that you can install on your own device in development mode but that won't ever make it in the real world because the control freak company won't let you install it.
Wow, great education!
Not sure if this was possible without this hack, but one could record audio through the headset jack as is possible in the Sony PSP's headset jack. An iPhone could easily replace a Tascam/Marantz field cassette recorder. (remember those, from the '70s and '80s?)
i dont know about iphone. . . .
"PZ" you pointed it out correctly - there is a DC blocking capacitor, so you can't just pull the channel high, it MUST toggle.
Although limiting heat buildup in voice coils is what is happening, that's not quite the right explanation. ;) Without the DC blocking cap, one of the semiconductors in the output (either comp-pair, or "totem-pole") stage would be forcing a (relatively) large current through that voice coil. This would severely unbalance the transistors, resulting not only in severe distortion, but heating as you mentioned.
With a 44.1Khz sampling rate, the output at 22Khz is much closer to a squarewave than anything else. (Nyquist etc.) It will be 50% duty cycle, so it carries the maximum power for conversion. It WOULD be possible to send a datastream through that channel, as well, and cause little power loss by using FSK and then decoding that. (FSK at, say, several discreet frequencies between 22~20Khz, so each shift = several bits.) Keeping the frequency high, and the duty cycle constant, maintains the power supply at a steady level at all times.
This isn't like the crystal set, because in that case, the modulated RF carrier is converted directly to a varying DC level by the detector. That varying DC level drives the crystal earpiece to recreate the sound.
This project is using one of the two audio channels to produce a "constant carrier" for the specific purpose of creating a power supply to run other electronic devices. You want power supplies to be steady.
Willie...
Yes, your point is valid, of course. Using one of those IC's would be "standard stuff". This project goes outside that... the idea here, was to take advantage of the existing hardware inside the phone, making NO modifications to the hardware of the phone, whatsoever.
This isn't like the crystal set, because in that case, the modulated RF carrier is converted directly to a varying DC level by the detector. That varying DC level drives the crystal earpiece to recreate the sound. You want power supplies to be steady, not varying, which is why the steady 22Khz tone is used in one audio channel.
Willie...
That's really cool! Well beyond my current experience... my CPU knowledge is still back in the 80's! ;) I was writing simple ML code for 6502 and Z80 back then. I still dabble with GWBASIC now and then.
I need to "get with the program" at some point, I know.
For now, I continue to tinker with analog electronics, and basic logic ckts. It's fun... that's what matters!
Willie...