Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Advanced Remote mode isn't working with my iPhone 3GS #4

Open
finsprings opened this issue Mar 20, 2010 · 9 comments
Open

Advanced Remote mode isn't working with my iPhone 3GS #4

finsprings opened this issue Mar 20, 2010 · 9 comments
Labels

Comments

@finsprings
Copy link
Owner

Simple Remote mode works with my iPhone 3GS but Advanced Remote mode does not. I get back the feedback response with an error 4 (invalid parameter). I get this same error on my iPod Photo if I haven't placed it into Advanced Remote mode, so it looks like the enable() part may not be working on the iPhone.

At first I thought this was because I'd omitted the 500KOhm resistor for pin 21 on my second remote build. The nearest I had was a 560KOhm but adding that didn't help. I've ordered some 500KOhms in case that's really all that's wrong but I'm doubtful.

@blalor
Copy link

blalor commented Dec 2, 2010

I'm hoping that I'll be able to help with this. I have a Dension ice>Link:Plus (iPod adapter for some BMW & MINI cars) that's worked in Advanced mode with all of my iPhones. I bought a "sniffer" board from Ridax.se (because I was too lazy to make my own) and intend to use it to figure out what the differences are between your protocol implementation and the one they use.

@finsprings
Copy link
Owner Author

Awesome! Let me know how it goes. I've since heard that neither mode works on an iPhone 4. Yet, my in-car iPod connector in my 2009 car works with my iPhone 4 so the protocol can't really have changed. My guess is the newer phones are more finicky about voltage levels or some other characteristic of the connected pins.

@blalor
Copy link

blalor commented Dec 2, 2010

Simple mode works fine with my iPhone 4. That Dension adapter uses the simple and advanced modes. Some really new cars get much fancier and probably connect to the phone with USB (a la MINI Connected), but I'm confident that we can sort the advanced protocol.

@finsprings
Copy link
Owner Author

Oh that's good to know. I'll have to check back with the couple of folks who said they had trouble then. Are you using the 500k resistor with the iPhone 4? I got a few in the unlikely event that 500k would work when 560k didn't, but it made no difference (and I haven't need the resistor at all for iPods).

I'm really pleased you're taking a look at this :-)

@blalor
Copy link

blalor commented Dec 2, 2010

I'm using a 499k 1% resistor. For the most part, I'm limiting my testing to an old (but loved) Nano; I've implemented charging with the appropriate resistors to USB D+/D- which works perfectly for my iPhone 4, but I'm trying to limit the opportunities for frying that device while I'm working out the other stuff! I also had luck with 5 100k 5% resistors. I think that's the right ballpark, but I've seen references to 510k, 512k, and 470k, all of which are within a few percentage points of 500k. shrug

@blalor
Copy link

blalor commented Dec 7, 2010

Hey, David. I just put my oscilloscope on the TX line from the Dension adapter to the iPod; the serial rate is 38400. If the iPhone's being super picky, that could certainly do it!

edit See this entry in my fork's wiki.

@finsprings
Copy link
Owner Author

INTERESTING! The wiki said the default was 19,200 so that's what I went with. It's possible they switched to 38,400 or the old ones would autobaud down to that and the newer ones won't. It's trivial to change it to try it: in iPodSerial.h it's defined as a constant:

static const int IPOD_SERIAL_RATE = 19200;

@ColinNg
Copy link

ColinNg commented Jul 8, 2012

I am able to use Advanced Mode on an iPhone 2G and an iPhone 4S. I'm using a 470K resistor on the sense line.

Also instead of using a 5.0 to 3.3V signal converter, I used a voltage divider on the iPhone Serial Rx ( Arduiono Tx --- 47K --- iPhone Serial Rx --- 170K --- GND ) and on the the iPhone Serial Tx side I simply piped the 3.3V signal into the Arduino Rx.

@finsprings
Copy link
Owner Author

Nice colinng!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants