programmare arduino da remoto

secondo voi è possibile programmare arduino da remoto? Mi spiego meglio. Tramite una pagina php, presente su un web server, è possibile lanciare l'eseguibile che mi permette di programmare arduino?

Tu intendi fare un upload dello sketch o trasferire dati?
Ciao Uwe

Che io sappia il php ha la possibilità di comunicare dati via seriale....ma forse dovresti crearti l'applicativo simile all'IDE all'interno della pagina php, l'IDE di arduino compila il codice in Hex prima di inviarlo all'atmega quindi dovresti prevedere anche questo...premetto che io non so com'è scritto l'IDE quindi non so quanto fondato possa essere ciò che dico....

Io so che ci sarebbe un bootloader per TFTP, forse può essere una buona base di partenza :wink:

ragazzi,grazie per le risposte. Cmq non so come è fatto l'ide di arduino. Penso che qualche modo per lanciare l'ide di arduino su un webserver c'è.. Vorrei cercare un modo per caricare lo sketch in arduino da php.

leggi qui: http://www.ioprogrammo.it/php/php_lanciare_un_eseguibile-t966.0.html forse può esserti d'aiuto...

gianni1989:
Vorrei cercare un modo per caricare lo sketch in arduino da php.

Non devi attivare l'IDE, devi solo lanciare avrdude a cui fornisci lo sketch, già compilato, da caricare previo trasferimento in locale tramite quello che ti pare, p.e. ftp.

astrobeed:

gianni1989:
Vorrei cercare un modo per caricare lo sketch in arduino da php.

Non devi attivare l'IDE, devi solo lanciare avrdude a cui fornisci lo sketch, già compilato, da caricare previo trasferimento in locale tramite quello che ti pare, p.e. ftp.

Quindi devo devo lanciare avrdude con degli sketch gia' compilati?

peppe91:
leggi qui: http://www.ioprogrammo.it/php/php_lanciare_un_eseguibile-t966.0.html forse può esserti d'aiuto...

ciao ho provato a fare un bottone e a richiamarlo nel seguente modo:
if(isset($_POST['invio1'])){
$prg = "/opt/lampp/htdocs/gatto/arduino-1.0.3/arduino.exe";
exec($prg);
}

però non va'!!

Esistono un paio di bootloader in giro per la rete che riescono a caricare uno sketch da una SD esterna.
Se si desse a questo Arduino remoto l'accesso ad una schedina SD e si caricasse sopra all'Arduino uno di questi bootloader, si potrebbe spedire il firmware, salvarlo sulla SD e poi resettare l'Arduino (tramite watchdog). Il bootloader caricherebbe il nuovo sketch nella flash.

Non chiedetemi però come salvare il file via rete, non sono io l'esperto di ethernet :wink:

leo72:
Se si desse a questo Arduino remoto l'accesso ad una schedina SD e si caricasse sopra all'Arduino uno di questi bootloader, si potrebbe spedire il firmware, salvarlo sulla SD e poi resettare l'Arduino (tramite watchdog).

Non capisco perché questa, inutile, complicazione, lo sketch lo compili in locale, lo invii tramite ftp al remoto, sempre in remoto avvii avrdude e gli fai caricare il file .hex inviato, problema risolto in modo semplice ed efficace.
Rammento che avrdude gira su tutto senza problemi, inclusi i sistemi linux embedded minimali, p.e. su Aria G25 dove riesco addirittura a compilare uno sketch in locale e caricarlo su Arduino tramite avrdude :slight_smile:

astrobeed:
Non capisco perché questa, inutile, complicazione,

Perché mi pare che in remoto ci sia solo l'Arduino.

Perché mi pare che in remoto ci sia solo l'Arduino.

questo mi sembrerebbe strano... se così fosse dove gira PHP? Aggiungo che volendo, si potrebbe anche inviare solo lo sketch, magari attraverso un normale tag TEXTAREA dell'HTML. Il PHP può salvare il testo in un file, lanciare prima la compilazione e poi l'avrdude per fare l'upload. Questo vorrebbe dire che il server PHP ha una USB collegata all'arduino da flashare.

Non leggo molte info, sto tirando un po' alla cieca

gianni1989:
secondo voi è possibile programmare arduino da remoto? Mi spiego meglio. Tramite una pagina php, presente su un web server, è possibile lanciare l'eseguibile che mi permette di programmare arduino?

Caricare uno sketch da remoto la vedo dura un bel po.
Al limite puoi aggiornare il fw dell'Arduino da remoto, sia con tftp che via http.
Io ho testato entrambi i modi sulla Arduino ethernet.
Nella modalità http la funzionalità di update era integrata direttamente dentro il webserver di Arduino, bastava premere un bottone , veniva richiesto di specificare un file hex e alla fine dell'upload procedeva all'aggiornamento.
Però ripeto non si parlava di sketch ma di fw gia compilati.

Il tftp è uffici e per Arduino, non ci stanno lavorando per ora ma prima o poi esce. Guardate sezione Lab.
Ricordo un sito internet che, fronte di cedere i diritti sui vostri sketch, mette a disposizione questa funzione. Lo ha mai provato nessuno ?

@gianni:
vuoi spiegare per favore com'è sistemato l'Arduino in remoto che dovresti poter programmare?
E' solo? E' collegato ad un PC?

leo72:
@gianni:
vuoi spiegare per favore com'è sistemato l'Arduino in remoto che dovresti poter programmare?
E' solo? E' collegato ad un PC?

Certo leo..allora arduino è collegato via usb ad un pc che funge da webserver.

Ma allora non può andar bene la soluzione proposta da astrobeed?

astrobeed:
Non capisco perché questa, inutile, complicazione, lo sketch lo compili in locale, lo invii tramite ftp al remoto, sempre in remoto avvii avrdude e gli fai caricare il file .hex inviato, problema risolto in modo semplice ed efficace.

leo72:
Ma allora non può andar bene la soluzione proposta da astrobeed?

astrobeed:
Non capisco perché questa, inutile, complicazione, lo sketch lo compili in locale, lo invii tramite ftp al remoto, sempre in remoto avvii avrdude e gli fai caricare il file .hex inviato, problema risolto in modo semplice ed efficace.

purtroppo non ho capito bene come fare!