Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#243865 - 11/12/2004 22:14 Yet another steering wheel control post...
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
I'm getting tired of always reaching over to the empeg to adjust volume, and the like. I have long arms, so the reach isn't really a problem, I'm just lazy. Anyway, my truck has factory controls on the steering wheel, so I'd like to regain my use of them. I looked at the PAC Audio SWI-X, but I don't really want to deal with finding a good spot to put the IR transmitter, much less pulling the headliner down in order to wire it. Another problem with SWI-X, I think, is that it doesn't send press/release signals (I've sent them email to find out for sure, but haven't yet heard back in reply).

While looking at the SWI-X install procedure for my truck, I see that my controls operate on the same sort of principle as the Sony Stalk, so with the correct resistor values, I could wire them up to the stalk interface on my tuner. (I believe the SWI-X can be modified to do this, as well.) However, the stalk interface on my pca tuner has issues, so I don't really want to use that, and open myself up to the those problems, again.

My next thought was using the serial port. I'm not a hardware hacker, but I'm interested in giving it a go. I've found John Lambon's website, so I think with a bit of reading up, I should be able to build a similar project (though it would probably involve lots of question asking). I know I've seen other, similar, projects posted -- I recall one using a joystick, in particular.

From the reading I've done, the downside to using the serial port is that all of the commands sent to the player are hard-coded in the firmware on the microcontroller. Since I don't know exactly how I want my buttons to operate, I'd like the ability to play with their configuration without having to re-flash firmware. I know there are a specific set of inputs that the player listens for via the serial port -- does it ignore all others? I'm wondering about the possibility of just choosing a small set of commands that the player otherwise ignores (say, the vowels), and having hijack remap these serial commands in the same way it does ir_translate -- that would also allow me to macro-ize them.

Thoughts and pointers welcome.

Top
#243866 - 13/12/2004 05:17 Re: Yet another steering wheel control post... [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Following up to myself: I see that this has been something that's been brought up in passing. This is similar to what I want, but I want to grab the input from my steering wheel controls, rather than buttons in some box. Any spare inputs on the PIC, I'd want to wire for future expansion.

Top
#243867 - 14/12/2004 03:29 Re: Yet another steering wheel control post... [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Well, okay. Looks like this will turn into my thread for collecting all the bits of info and questions for this project, rather than starting a new thread for each question.

I got a reply from PAC Audio regarding the SWI-X interface:
Quote:
Unfortunately the Swi-x can only read a single press of a button, not the
release of the button. When a button is pressed on the steering wheel it
will send a resistance signal to our unit, and our unit will record that
signal and match it with the signal of the remote. Most cars don't have a
different resistance of the release of the button so there is not a way to
differentiate the push and release of a button. So unfortunately its one
function per button.

I don't really understand part of that answer -- if you can detect the pressing of a button by a change in the resistance signal, why can't you detect the release of the button by the opposite delta in the resistance? What am I missing, here?

Top
#243868 - 14/12/2004 12:58 Re: Yet another steering wheel control post... [Re: canuckInOR]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
Nothing, unless the button press only changes the resistance value instantaneously, which I doubt, since that would create a good opportunity to miss the signal. Just spell out your (reasonable) question: if you can detect when the button goes down by the resistance changing from X to Y, why can't you detect the button being relesed by the resistance going from Y to X?
_________________________
Bitt Faulk

Top
#243869 - 14/12/2004 15:26 Re: Yet another steering wheel control post... [Re: wfaulk]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Yup. That's exactly what I'm asking -- I was wondering if there was some rule of electronics that I was missing. I have a sneaky suspicion that the answer the PAC Audio guy gave isn't "we can't", but "we didn't think to".

Top
#243870 - 14/12/2004 23:01 Re: Yet another steering wheel control post... [Re: canuckInOR]
schofiel
carpal tunnel

Registered: 25/06/1999
Posts: 2993
Loc: Wareham, Dorset, UK
...and that is the Right answer!
_________________________
One of the few remaining Mk1 owners... #00015

Top
#243871 - 16/12/2004 04:59 Where are the wires? [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Where the heck are the wires for the wheel controls? I just spent the last couple hours poking about in my truck, and I'm totally stumped. I took the cover off from behind the steering wheel, and took a peek at all the connectors there. There are two connectors at the bottom, that sort of mate side-by-side -- one yellow, one gray. The gray one has a white wire, and a blue wire, both of which seem to carry ~2.5V of power. The connector beside it has 5 wires on it -- green/black, green/orange, yellow/red, yellow/black, and green/brown (at least, it looks brown to me -- it might be red). If I unplug either of those two connectors, the cruise buttons stop working, so I'm assuming that those wires are for both the cruise on the right side of the steering wheel, and the radio controls on the left side.

I tried tracing those wires back behind the dash, and then I got totally confused -- they joined a large jumble of electrical tape and other wires, which then split off into three connectors that fed into a white box. I think the wires I'm looking for were in the top connector, but???

I have not been able to find the connector that's suppose to mate to the stock radio (I had the RF option, if it makes any difference). It may be buried behind the dash somewhere.

My multimeter-fu is sorely lacking. I was able to determine that the blue and white wires had power by jamming the red probe into the connector beside them, and holding the black probe onto a bolt holding the seat to the floor. How do I go about testing the wires in those connectors to see if any are active (at this point, I'm not so concerned about the particular resistance values, though I suppose I might as well try and get them at the same time) when the steering wheel control buttons are pressed?

Top
#243872 - 17/12/2004 06:38 Re: Where are the wires? [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Quote:
Where the heck are the wires for the wheel controls?

Aha! After a very helpful tip from a gentleman on the TUNFS forum (reg required), I've found the wires. For anyone else with a Nissan Frontier, they're yellow with red stripe and yellow with black stripe. If I read the multimeter correctly, I believe the resistance values I get are the following:
Code:
     Vol Up                  23 ohms              
Vol Down 91 ohms
Up 602 ohms
Mode 337 ohms
Down 195 ohms

I forgot to check what the resistance of the open circuit is, but it's >2000 ohms, at any rate (I'd go back out and check, but I've already put my truck back together). So, I guess my next step is to figure out what I'm supposed to do with those values.

Top
#243873 - 19/12/2004 03:55 Re: Yet another steering wheel control post... [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Quote:
I'm wondering about the possibility of just choosing a small set of commands that the player otherwise ignores (say, the vowels), and having hijack remap these serial commands in the same way it does ir_translate -- that would also allow me to macro-ize them.

I had a thought today, while driving around (well... sitting, mostly -- LA traffic plus holiday season ). If hijack can listen to the IR port, and steal codes to remap them without sending the old codes on, then it should be possible to have hijack listen to the regular serial port, steal codes, remap them to (non-player legal) IR commands, and then just call the ir_translate function. Two benefits to this: the player itself never sees stuff on serial, possibly leaving it available for other communications tasks (like GPS), and the hijack ir_translate code is already in place, so it would mean I wouldn't have to fully duplicate the ir_translate functionality for the serial port (i.e. wouldn't have to deal with actually writing to the serial port, just listening to it).

I don't yet know enough about hijack to know if this is a good idea, but it seems reasonable.

Top
#243874 - 26/09/2006 18:53 Re: Yet another steering wheel control post... [Re: canuckInOR]
canuckInOR
carpal tunnel

Registered: 13/02/2002
Posts: 3212
Loc: Portland, OR
Dredging this up from the nearly-dead, to include a link to this thread which suggests using ARM7 over PIC. Assuming I ever find the time to attempt this project.

Top