Show Posts
Pages: 1 2 3 [4] 5 6 ... 23
46  International / Software / Re: Websocket http su sd on: July 03, 2013, 07:27:43 am
Se esaurisci i 4 socket quando tenti la connessione con telnet ti rimbalza immediatamente. Per cui il socket del server non risponde più. Nella documentazione della wiz ci sarà scritto come rimbalza il client.
47  International / Software / Re: Websocket http su sd on: July 03, 2013, 04:18:41 am
Caro Lesto, è vero che attualmente il limite di tutte le librerie è dovuto all'implementazione della Ethernet, ho avuto lo stesso problema nell'ardupower, dove devo tenere aperta una connessione telnet al primo client che si autentica e sbattere fuori con un messaggio tutti quelli che si connettono mentre la sessione del primo è ancora attiva, quando la sessione che occupa l'arduino termina devo anche riuscire ad accettare un'eventuale nuova connessione.
Io ho fatto così:
  • Aggiunto al socket una funzione che mi restituisce il numero (da 0 a 4).
  • Ricevo la connessione.
  • Mi salvo il numero del socket.
  • Mi salvo il socket.
  • Controllo che il socket salvato sia sempre aperto, se è chiuso ripristino la sessione se è aperto continuo a ricevere i dati.
  • Continuo a ricevere dati dai vari socket e uso solo quelli che corrispondono al socket che mi interessa, se ricevo connessioni da altri socket le chiudo dopo avere inviato un messaggio.
  • Mi lavoro le stringhe ricevute.
Per realizzare un server websocket purtroppo bisogna fare una cosa simile, e sempre purtroppo si può ascoltare solo un client alla volta, se lo si fa veramente bene se ne possono servire 4 di client ma la vedo difficile non so se basta la memoria.
Se poi insieme al websocket si devono inviare le pagine tramite un webserver normale, bisogna modificare anche tutto il webserver per evitare che monopolizzi i socket....

Per gestire i websocket ci vogliono risorse:
  • socket per gestire le connessioni, e la wiz ne ha solo 4
  • memoria per gestire le sessioni, e l'arduino ne ha poca

Pablos mi aveva già proposto di modificare il wjsonduino con i websocket, ma la vedo difficile, l'approccio pooling è più adatto alla piattaforma:
  • Apro il socket, leggo i dati, magari li scrivo pure, e chiudo il socket rapidamente.
  • Sono pronto a servire altri client.

Con la Due cambia tutto, ma bisognerà pestellare parecchio sulla tastiera per modificare tutte le librerie!
48  International / Software / Re: Websocket http su sd on: July 03, 2013, 03:31:24 am
Le connessioni tcp/ip multiple (in ingresso, arduino è il server, e penso anche in uscita) si possono fare, vedi esempio chat telnet, il problema di solito sono le librerie webserver e altro varie che gestiscono una sola connessione alla volta, dall'inizio alla fine e poi passano alla successiva, sono tutte bloccanti sui socket, in quanto attualmente se non attendi la chiusura del socket prima di vedere se ce ne è uno nuovo che invia dati quando ricevi i dati non sai da quale socket li stai ricevendo.
49  International / Software / Re: Websocket http su sd on: July 02, 2013, 10:28:38 am
Ciao,
nell'ardupower c'è una versione modificata della Ethernet che consente di capire da quale socket si ricevono i dati.
Tutti i problemi che state trovando li ho già visti realizzando l'ardupower qui c'è la richiesta per la modifica della libreria ethernet ufficiale.

Alberto
50  International / Software / Re: Utilizzare Arduino come USB card reader on: July 01, 2013, 05:13:53 am
L'Arduino più indicato è assolutamente il Leonardo, perché puoi cambiare la funzionalità della porta usb da firmware.
Di default è una seriale ma puoi farlo diventare una tastiera un midi ecc. senza dover usare un programmatore esterno.
La Leonardo è stata introdotta apposta per dare queste possibilità.

Alberto
51  International / Software / Re: Websocket http su sd on: June 24, 2013, 10:10:42 am
Per il punto uno puoi provare ad usare due porte diverse per il server.
52  International / Hardware / Re: Ethernet with PoE o Ethernet without PoE on: June 04, 2013, 03:38:42 am
Effettivamente l'opzione poe injector è più economica, ne ho trovati diversi al mercatino dell'usato per cifre irrisorie, vedi http://forum.arduino.cc/index.php?topic=94572.msg714064#msg714064
53  International / Generale / Re: webserver+ android on: May 29, 2013, 08:53:54 am
Il wjsonduino (vedete lnk in firma) versione sd fa proprio quello, tramite la libreria tinywebserver, per ora ho fatto solo una versione per leggere lo stato delle porte, ma penso di farne anche una che può cambiare lo stato delle uscite.
54  International / Generale / Re: webserver+ android on: May 29, 2013, 05:18:16 am
No, con eclipse e android sdk puoi fare una app da caricare sul telefono, poi ti devi fare uno schetch su Arduino per ricevere i comadi della app tramite tcp.
Se l'interfaccia è semplice sconsiglio la creazione di una app, se funziona bene la paginetta html è meglio perchè è multipiattaforma, funziona su pc, android ios e quantaltro, la app per android fatta con eclipse funziona solo sui device android.

Edit: @Guglielmo
Se la pagina si mette su una SD i limiti della memoria di arduino si eliminano, poi rimangono i limiti della piattaforma, se si fa una pagina html da un mega trasferirla dalla sd al client tramite Arduino e shield ethernet diventa problematico...
Proprio per vedere le differenze ho realizzato il wjsonduino in due versioni una su SD e l'altra tutta in memoria, che sono identiche anche nel html.
Ho anche fatto una pagina con un immagine svg che viene modificata tramite le letture delle porte analogiche dell'Arduino e ho dovuto per forza usare la SD, in memoria non c'è stata.
55  International / Generale / Re: webserver+ android on: May 28, 2013, 03:32:01 pm
Ciao,
non capisco la domanda, dici che attualmente il sistema lavora su lan, ma direttamente con arduino e ethernet shield o con webserver su pc e arduino collegato tramite seriale?
56  International / Software / Re: Web server con Jquery 2 uscite e una temperatura on: May 21, 2013, 05:34:06 am
Dunque, nel wjsonduino non ho usato librerie javascript esterne per due motivi:
  • Ridurre i dati da scaricare tramite Arduino, e poter fare una versione che entrasse nel solo Arduino, senza bisogno di usare la SD o appoggiare la libreria su un webserver esterno.
  • Non ho mai avuto voglia di studiarmi le librerie javascript tipo jquery.
ma ho preferito scrivere direttamente del semplice codice ajax nell'html.
Come webserver ho usato il tiny, che ha dei problemi, e ogni tanto si blocca, non ho capito se per problemi interni o per attacchi malevoli.
L'unico consiglio che ti do è, se lo sai fare, non usare librerie esterne, leggiti come funziona XMLHttpRequest e leggi il codice del wjsonduino.
Per modificare il wjsonduino in modo che possa anche modificare le porte e non solo leggerle non ci vuole molto, penso che lo farò al più presto.
Visto che ci siamo faccio anche una domanda, ma qual'è il miglior webserver per arduino, con lettura della pagina da anche da SD?
Ho letto che il tiny ha diversi problemi, e ho anche proposto una patch per dei blocchi.
Ho letto pure che qualcuno ha praticamente riscritto il tinywebserver per renderlo più stabile, ma ha anche rilasciato il codice da qualche parte?

Alberto
57  International / Hardware / Re: Arduino con piedini non attivi eroga corrente? on: May 08, 2013, 11:35:29 am
Ma i transistor sono npn o pnp?
58  International / Software / Re: Ethernet hang on: May 08, 2013, 04:45:17 am
Hai provato a fare qualche prova con delay minori per vedere fino a quanto si può diminuire senza perdere stabilità?
59  International / Hardware / Re: Lettore SD on: May 07, 2013, 09:10:41 am
http://www.gioblu.com/tutorials/elettronica/236-salvare-i-dati-su-microsd-card-senza-sdshield
60  International / Generale / Re: Arduino bluetooth... Mah... on: May 07, 2013, 03:41:59 am
Tutto dipende dal che dispositivo bluetooth colleghi ad Arduino, il 99% degli esempi che trovi sono per collegare un convertitore porta seriale / bluetooth, questi dispositivi collegati ad un device creano una porta seriale che puoi aprire per dialogare con l'Arduino, ma devi usare un programma ad hoc.
Penso invece che tu voglia mandare un messaggio tipo sms da Arduino al device, ma con i convertitori seriali non lo può fare, senza un programma che nel telefono / pc trasformi il messaggio.

Alberto
Pages: 1 2 3 [4] 5 6 ... 23