Ciao a tutti, premetto che ho provato a cercare un po' in tutte le lingue ma non sono riuscito a trovare risposta al mio problema.
PROBLEMA:
Ho comprato una Renault Captur sul quale non c'erano i sensori di parcheggio. Ho trovato il paraurti completo di cavi e centralina PDC originale, così l'ho montata, e l'ho attivata tramite il software DDT4ALL, tramite il quale rilevo anche le distanze da ogni singolo sensore.
Non ho il sistema multimediale R-LINK originale, quindi non si sente il beep-beep dei sensori; questo perché il sistema originale non ha il classico buzzer, il beep-beep proviene dalle casse audio.
Renault lo fa tramite l'autoradio originale, attraverso un'applicazione che gira sul sistema win ce e/o android. Io non ce l'ho ma posso replicarlo con arduino.
IDEA:
Il software DDT4ALL mi da tutto il log completo della comunicazione per ricavare le distanze di ogni singolo sensore. Quindi ho preso un arduino nano e un MCP2515 (sul quale ho sostituito l'oscillatore al quarzo con uno da 16Mhz, poiché le librerie sono spesso tarate su quel timing) e vorrei replicare la comunicazione testata con il pc e l'auto tramite OBD2.
DOMANDA:
Come posso fare, o che libreria dovrei usare, per riuscire ad inviare i comandi AT tramite l'MPC2515?
Di seguito fornisco la lista dei comandi che ho ricavato.
P.S.: Ho fatto il test di questi comandi collegandomi all'elm327 tramite Putty in modalità RAW, e funzionano in quanto ricevo la risposta che mi interessa leggere.
Lista Comandi AT
ATZ //reset all
AT WS //warm start, quick software reset
AT E1 //echo on
AT S1 //printing spaces on, OFF=S0
AT H0 //headers OFF
AT L0 //linefeeds off
AT AL //allow long >7 byte messages
AT CAF0 //auto formatting off
AT SH 74E //set header to 74E
AT CRA 76E //reset the receive address filter (?)
AT FC SH 74E //flow control header
AT FC SD 30 00 00 //flow control, set data to [1-5 byte]
AT FC SM 1 //flow control, set mode to 1
AT SP 6 //set protocol to 6 and save it
0210C0
023E01
03222037
Inviando quindi i settaggi iniziali (AT commands) e le successive richieste, quando invio l'ultimo comando "03222037", ricevo in risposta l'esadecimale corretto, che convertito in decimale mi fornisce tutte le distanze espresse in cm, da 00 (0) = 0cm a FF (255) = 255cm.
Ringrazio in anticipo chi saprà darmi delle indicazioni in merito, purtroppo sono a digiuno di comunicazione canbus.