http://postimg.org/image/kb9nelm3d/
This is the 3LB protocol (navigation mode) used by VW to display data from the navigation unit to the cluster display.(MFD, FIS).
After a couple of measurements this is what I think I found out:
a. The clock is set at 2500 kHz.
b. It can be a mode 3 spi.
This is the most acurate one that I grabbed but the data was not properly pushed int the breadboard so it is not consistent.
That is a very weird protocol, I suspect you are not sampling fast enough because the clock and data look like they change at the same time and that can't be the case.
As for what "enable" does I have no idea but seeing more exact timing relationships might help.
The communication conditions are as follows.
• fCLK = 8 MHz
• CSI00 (unit 0, channel 0) is used.
• 9,600 bps, 8-bit data
• LSB first
• Number of transmit data: 10
• Transmit data: 3A
• INTCSI00 transfer end interrupt servicing is used.
The thing that pointed out was LSB which is what I think I have.
I`ll sample at higher rates and post what i get.
Just looking at the data sheet for that CPU it seems that the SCI port is really just a version of an SPI port. I suspect they are transmitting bytes much the same as you do on an AVR and bit-bashing the enable signal with a GPIO pin.
As to why the enable for the first byte is a different polarity to the rest I have no idea but you could replicate that functionality yourself.
I think you can use the normal SPI.transfer() function and wiggle that enable pin yourself with digitalWrites(). That last trace could be done something like this
Do you have any suggestions of what should i buy?
My local supplier can only get me parts from sparkfun, pololu, olimex.
I`ll try the code and let you know.
You have told us the protocol is 3LB but is there any documentation on how this protocol works else the LA trace is going to be a lot harder to decipher.
Is data direction only one way or does the display also send data back. If it sends back then your either missing the MISO line or the protocol is based on something like SISO and maybe the enable line is data direction?
Possibly the first byte with enable low is a request from display and the other bytes sent with enable high are to the display or the first one with enable low is a command and the others are data. Very difficult without some documentation.
This protocol is unidirectional. That I know for sure from a friend which works in diagnostics.
He had a unit that tested every pixel on that lcd. If the pixel was on he would had to press a button to go to the next pixel and so on.
Only the navigation unit or the cd-player is linked to those 3 wires.
As i said before it has 2 modes of functioning.
The cd-player mode (arduino code and how it works)is av here Kovo's blog: audi FIS 3-line protocol
For the navi mode to work I had to use a K-wire interface to switch it from one to the other.
The difference is that when using the cd-player mode, only the cd-player can display info on that top part of the lcd.
The bottom part of the lcd is inaccessible.
When using the navi mode the navigation unit will print the radio info or cd info on the top part and on the bottom part will display the arrows from the gps.
When you start the navi unit it will write on the bottom part Volskwagen Radio Navigation System.
The code for the cd mode is not working when navi mode is enabled.
I think it is because the Enable is not HIGH all the time you send the data. It is like a second clock now, rated at 12.5kHz with a 75% duty cycle.
AND
The clock is only 'clocking' when you send actual packets of data.
Another difference that i spotted is that on cd mode if i stop sending data, but maintain the clock and the enable the text will remain.
If i take the clock or the enable it will go off.
On navi mode if i stop the data or the clock or the enable, the text will remain until it gets a "lcd.clear" or new data. (i think)
Hi all, is this thread still active? I'm toying with 3LB interface on Octavia 1 2002 but can't find some info about navi mode to control the whole MAXI DOT display. Any advice please?