Arduino e ModBus

Ciao a tutti, sto cercando di far comunicare due schede arduino, una duemilanove e un mega 2560 tramite protocollo modbus-rtu. Per il protocollo sto usando queste librerie:

http://sites.google.com/site/jpmzometa/arduino-mbrt

Ho predisposto l'arduino 2009 come slave. Ho testato il suo funzionamento tramite un master su pc e funziona benissimo. A questo punto iniziano i problemi.

Con l'at-mega 2560 volevo fare il master. Ho collegato le due schede tramite seriale, visto che il mega ha piu' seriali ho usato la Seriale 1. I collegamenti dovrebbero essere giusti:

Tx1 Mega -> Rx Duemilanove
Rx1 Mega -> Tx Duemilanove
Gnd Mega -> Gnd Duemilanove.

Le due schede comunicano ho fatto delle prove. Il problema è che quando lancio il comando dal master, mi ritorna l'errore time-out e non riesco a capire l'errore. Il master compone il messaggio in maniera esatta, ho fatto una prova e il messaggio che arriva è corretto.

Allego i due programmi che ho utilizzato,master e slave.

Grazie a tutti in anticipo

mbslave_pde_example.pde (22 KB)

modbus_rtu_master.pde (15 KB)

Io utilizzo questa:
http://code.google.com/p/modbusmaster/
dove non ho prob di master e slave. Avevo visto anche quella che utilizzi ma mi sembrava più limitata come libreria.

Ciao grazie per la risposta, nella libreria che mi hai passato, c'è solo il master o sbaglio?

Adesso provo ad utilizzare questo master con il mio slave.

Si, solo la parte master