Salve a tutti!
chiedo il vostro aiuto per realizzare un piccolo progettino che mi è venuto in mente. Vedo primadi spiegare cosa vorrei fare e dopo come vorrei procedere.
Ho installato una caldaia con un veltil convettore nel mio laboratorio, odio il freddo sapete! Nel momento di attaccare al muro il banale termostato da 10€ preso in ferramenta, come potete immaginare, l'ho subito classificato come "Estremamente banale e semplice"
Mi piacerebbe poter avviare il riscaldamento dal mio cellulare, quindi anche se sono fuori casa e sto per tornare, o magari solamente conoscere la temperatura della stanza. Tutto qui.
Ora, dal lato cellulare (Android) ero nei guai più profondi, in quanto ho perso alcune sere a cercare di capire come un essere unano con nessuna nozione di Java possa creare un banale programmino che richieda o invii semplici comandi via inernet. Avevo quasi abbandonato, quando ho trovato una bruttissima e del tutto non flessibile soluzione. App-Inventor! Inizialmente creata proprio da Mamma google, poi passata sotto mano del MIT.
Ho installato e configurato tutto, e sembra essere molto intuitivo e semplice da usre. Ma, ancora terrificante per la flessibilità! vengono fuori cose graficamente raccapriccianti. Ma, per il mio scopo e il mio livello di conoscenze Java pari a 0.....è ottimo! Mi piace!
Ora, in poche parole riesco a far girare un web client (o server non ho ben capito) sul cellulare, che invia e riceve comandi HTML tramile comandi GET e POST.
Premettendo il fatto che non sò usarli, ma leggendo in rete sono arrivato ad intuirne il funzionamento, sorge adesso il problema dal lato Arduino.
Ho da parecchio tempo la suddela shield di rete, mai usata. l'ho agganciata alla UNO e ho caricato un esempio di PING. Niente male, ha funzionato al primo colpo! Almeno questo!
Ora, veniamo alla domanda saliente.
Dove trovo ad esempio la lista dei comandi e funzioni della libreria che uso? Si tratta di quella suggerita da Luca dentella "JeeLabs Cafè" GitHub - njh/EtherCard: EtherCard is an IPv4 driver for the ENC28J60 chip, compatible with Arduino IDE
e in più, non sò dove mettere le mani anche solo per ricevere un comando inviato dal programmino sul cellulare e interpretarlo.
vediamo:
#include <EtherCard.h>
static byte mymac[] = {0xDD,0xDD,0xDD,0x00,0x00,0x01};
static byte myip[] = {192,168,1,10};
byte Ethernet::buffer[700];
void setup () {
if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0)
Serial.println( "Failed to access Ethernet controller");
if (!ether.staticSetup(myip))
Serial.println("Failed to set IP address");
}
void loop() {
}
mi pare che iniziando a scrivere questo, la shield è correttamente inizializzata e funziona.
ma mi mancano adesso i comandi per controllare se sono arrivati dati e quindi poi usalri. Trattandosi di Ethernet ed HTLM molto probabilmente, ri-piombo nel baratro!
è troppo chiedervi di farmi un esempio magari di ricezione di un numero o una lettera da usare poi come flag nel programmino che scriverò?
Premettendo che dal lato cellulare ho a disposizione i comandi POST e GET che a quanto ho capito possono reagire al "Click" di un "button" della App.
Grazie, e perdonate la chilometrica discussione!