Support and General Use > Hardware

iPod 5.5 and my car kit

<< < (5/8) > >>

chileboy:
Oh, I see.  :-[

The other end of the cable has a proprietary plug (with 6 or 8 or so connections) on the other end, which plugs into a blackbox (actually blue) concealed in the console.  That is probably where the heavy lifting is done.  Another cable connects to the display (mounted to the dash), and  there are numerous wires and connectors, some of which connect to a custom harness to the factory audio system (thereby using the factory-installed amp and 6-speakers, enables automatic mute-on-call, etc.)., power, microphone, etc.   There's also a separate wireless jog wheel, FF, RW, etc. control (which I mounted on the console).

The system is an all-in-one phone, audio control and Bluetooth (phone and Bluetooth audio) system.

The manual is here: http://www.parrot.com/usa/support/userguides/#MKi9200 - Page 5 shows all the connections.

torne:
Right, ok, that's not the kind of thing I am thinking of, then; so yes, there may be value in having Rockbox support whatever protocol it's using. The tricky bit is.. doing that :)

The first thing to do would be to work out whether the protocol runs over serial like the known IAP protocols, or whether it's done over USB (perhaps SCSI requests over mass storage). There are various things around the internet which suggest that at least some dock interfaces use the latter. This could be done by adding a bunch of debug logf statements to both the IAP handler and the USB stack.

The actual audio almost certainly just goes over line out on the dock connector; it's the control data that we'd have to figure out.

chileboy:
Again, can someone perhaps give me a clue here?  See original post below.

Thanks...

---------------
OK, I've successfully got my compile environment set up, and tested it by compiling the latest build (w/o changing anything) and transferring it to my iPod.

From what you say, it appears I have to add some lines of code somewhere and recompile, then log the output to a file (or files) which we can then examine.

I will need to be guided through this, I am clueless on where to start.

Thanks.


--- Quote from: saratoga on November 10, 2010, 07:28:55 PM ---The accessory code is in /apps/iap.c

I'm not sure if theres currently anyway to log the IAP commands, but you could pretty easily add LOGFs or just record the entire exchange to disk to see where it gets stuck.

--- End quote ---

and


--- Quote from: torne on November 11, 2010, 03:30:30 PM ---The first thing to do would be to work out whether the protocol runs over serial like the known IAP protocols, or whether it's done over USB (perhaps SCSI requests over mass storage). There are various things around the internet which suggest that at least some dock interfaces use the latter. This could be done by adding a bunch of debug logf statements to both the IAP handler and the USB stack.

--- End quote ---

OK, how should I modify the file that saratoga mentions?  Also, basic question, how do I enable logging?  I looked around in the menus and couldn't locate anything.  Do I need to set that option somewhere in the code?

If there are some pertinent documents I need to read up on, that's fine, I just need to be pointed in the right direction...

chileboy:
OK, I'd like to revisit this - I am thoroughly enamored of RB now, building custom menus, wps, etc., - but still need to boot the OF to use my car system.

Again, can someone help me get started based on the comments from torne and/or saratoga?

I've had a look at iap.c, and, while I understand parts of it in a general sense, I don't know C...also have begun reading up on some of the development docs in a meandering sort of way.

I had one thought, which may be way off-base, but here goes - the Parrot works with many iPods, including back to at least Gen 3.  Torne indicated he believes there are at least three protocols which Apple uses.  I'm guessing that the Parrot first queries the iPod to discover what model has been connected, and then communicates appropriately.  Does RB directly support any of the Apple protocols and, if so, is it possible that changing the USB ID would fool the Parrot into thinking it was an older model, and thereby cause it to use whatever earlier protocol the Rockbox uses already?  I haven't messed with this because, as torne said quite well, "We don't really support this because it's kinda.. hacky. The USB-IF don't like people using USB IDs that don't belong to them."

torne:
One thing that you could do which would be relatively simple is to work out which of the pins on the dock connector are actually connected to the car kit. This would probably answer some of the basic questions (such as "is it using IAP over serial or something over USB") pretty quickly. Grab a multimeter ;)

Have you been able to check out the current version of the Rockbox source, and compile it to a working build (without modifying any of the code)? Make sure you can do that first.

We only support extremely basic remote protocols, pretty much just commands for play/pause/ffwd/rewind/etc, so that's unlikely to be used by a head unit that displays actual information about what the device is playing.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version