Dave,
Quote:
|
Hm...actually, for the Serial Input, the levels are supposed to be TTL, so when IBus is low, it should be 0-0.8V output to the Arduino, High should be close to +5V. I think then that transistor I was inverting with was unnecessary? Is the IBus -12 when low + 12 when high? Or is it 0 low, +12 high? If so, a simple resistor in the latter case to drop the voltage to +5V will work, not sure what it should be in the former case.
|
The IBus is 12V if there is no traffic and pulled low (0V) when transmitting. So you need to invert it and make it 0-5V. I did this with a transistor using the 5V out of the Arduino. This is the result for the volume down button:
Quote:
|
I think you are saying that on the I-Bus, the idle state is high and the transition from high/+12V to low indicates the start bit and the rest of the bits are sent Low=0V, High=+12V? If this is correct, then I would have to write a custom software serial driver and not be able to use the UART built into the dedicated serial ports. DOH!!!
|
I couldn’t get the Arduino serial input reading the signal from
pin 9 of the (Reslers module) Max232 as you described in one of your first posts. For this reason I read all the codes from the steering wheel buttons (in us) and wrote some code for the Arduino to recognize them. This works fine except when there is a lot of traffic on the IBus. During driving, one out of ten times you have to press a button twice. For this reason I will give it another try to get the serial communication working. Can you post a picture how you did this?
Nevertheless, the first version is installed and running