Program for operating the AFFA2++ display in Renault cars
The system allows communication with the display in the car, sends text to be displayed to the display and receives button presses on the steering wheel remote control.
The radio with the display communicates using the I2C bus with an additional MIRQ pin.
The whole thing can be easily assembled using Arduino Nano and several passive components.
To communicate with the display we use hardware I2C + 2 additional pins for MIRQ and turning on the display.
To trigger presses of the steering wheel remote control, the radio must take the signal in form of shorting the cable to ground through various resistors corresponding to different buttons, because in this project a slightly modified simple 4-bit R2R DAC converter (such as a ladder of resistors) is used for this purpose.
The connection is as follows, first the plug from the display on the radio:
http://tlcdcemu.sourceforge.net/hardware.html
C1 connector (yellow):
1 DTA I2C-Data
2 CLK I2C-Clock
3 MIRQ must be connected to GND before sending
4 n/c
5 Radio ON supply 5V to turn on the display
6 GND
You need to connect all pins from this plug-in, default values in the program (Arduino Nano):
1 DTA → A4 (PC4/SDA)
2 CLK → A5 (PC5/SCL)
3 MIRQ → A3 (PC3)
5 Radio ON → A2 (PC2)
6 GND → GND
The R2R ladder for the radio is on outputs D4 (PD4), D5 (PD5), D6 (PD6), D7 (PD7)
In fact, it is best illustrated by the picture below :)

Additionally, the system assembled according to the above diagram will also measure the supply voltage (12V) in the car, to display it on the display, press the bottom button on the remote.
The program would not have been created without the information provided here:
https://www.elektroda.pl/rtvforum/topic778615.html
So credits to "szymtro" and "dj-rashit" for the provided informations, which were very helpful in developing working communication with the display :)
Program do obsługi wyświetlacza AFFA2++ w samochodach Renault
Układ pozwalający na komunikację z wyświetlaczem w samochodzie, wysyła do wyświetlacza tekst do wyświetlenia i odbiera naciśnięcia przycisków na pilocie przy kierownicy.
Radio z wyświetlaczem komunikuje się przy użyciu szyny I2C z dodatkowym pinem MIRQ.
Całość bez problemu do zmontowana przy użyciu Arduino Nano i kilku elementów pasywnych.
Do komunikacji z wyświetlaczem używamy sprzętowego I2C + 2 dodatkowe piny do MIRQ i włączenia wyświetlacza.
Do wyzwalania naciśnięć pilota przy kierownicy radio musi mieć obsługę pilota na zasadzie zwierania kabla do masy przez różne oporniki odpowiadające różnym przyciskom, bo w tym projekcie użyty jest do tego celu lekko zmodyfikowany prosty 4 bitowy przetwornik DAC R2R (taka drabinka rezystorów).
Podłączenie jest następujące, na początek wtyczka od wyświetlacza przy radiu:
http://tlcdcemu.sourceforge.net/hardware.html
C1 connector (żółta):
1 DTA I2C-Data
2 CLK I2C-Clock
3 MIRQ trzeba go ściągnąć do masy przed wysyłaniem
4 n/c
5 Radio ON podać 5V żeby się włączył wyświetlacz
6 GND
Trzeba podłączyć wszystkie piny z tej wtyczki, domyślnie wartości w programie (Arduino Nano):
1 DTA → A4 (PC4/SDA)
2 CLK → A5 (PC5/SCL)
3 MIRQ → A3 (PC3)
5 Radio ON → A2 (PC2)
6 GND → GND
Drabinka R2R do radia jest na wyjściach D4 (PD4), D5 (PD5), D6 (PD6), D7 (PD7)
W sumie to najlepiej zobrazuje to poniższy obrazek :)

Dodatkowo układ zmontowany według powyższego schematu też będzie mierzył napięcie zasilania (12V) w samochodzie, żeby wyświetlić je na wyświetlaczu wystarczy nacisnąć dolny przycisk pilota.
Program by nie powstał gdyby nie informacje zamieszczone tutaj:
https://www.elektroda.pl/rtvforum/topic778615.html
Także dzięki głównie kolegom „szymtro” i „dj-raszit” za zamieszczone materiały, które były bardzo pomocne w opracowaniu działającej komunikacji z wyświetlaczem :)