Salve a tutti! Ho un piccolo problemino nel far comunicare il mio Arduino UNO con il mio MacBook via porta USB. In soldoni ho costruito un piccolo dispositivo che mi controlla le luci della mia scrivania. Su porta seriale ho intenzione di inviare un byte all'Arduino il quale lo dovrebbe interpretare come la luminosità da far assumere alle luci (per dire... invio 0 e le luci si spengono, invio 255 e le luci si accendono al massimo, una cosa molto molto semplice insomma). Fin qui tutto bene, posso aprire il monitor seriale dell'IDE dell'arduino, inviargli un valore e il tutto funziona alla grande.
Ora, io questo byte lo vorrei inviare dal mio computer in modo da poter automatizzare il tutto con (AppleScript/Automator/QuelloCheE'). Per cui ho scaricato un piccolo programmino in C (dal blog todbot) che prende un numero come parametro e lo invia all'arduino via USB. Il programmino apre la porta seriale, imposta il baud rate, invia il byte e il tutto sembra filare liscio...
...eccetto una cosa: l'Arduino si rifiuta di interpretare il byte se non tengo il monitor seriale dell'IDE aperto! La ricezione sembrerebbe avvenire perché il LED RX sull'arduino lampeggia ma con il monitor chiuso l'arduino semplicemente non fa nulla.
Qui i sorgenti (arduino: http://dl.dropbox.com/u/14798985/DeskLights.ino, programmino in C: http://dl.dropbox.com/u/14798985/arduino_serial.c). Domanda: dove sbaglio?