feed

I0-049/RM – IZ0OWD

Italian SWL and Ham Radio Station

Mi ritrovo a dare un seguito al precedente articolo sul server APRS di Claudio IZ2FERbasato sulla piattaforma Arduino dopo un mese e mezzo di continue sperimentazioni condotte con la preziosa supervisione di Claudio che mi ha molto aiutato.
Le prime difficoltà si sono manifestate con una criticità nel comportamento della scheda sotto carico, dapprima avevo pensato all’alimentatore, classico “verrucone” da muro, poi a una saldatura fredda del pettine dello shield etherneth. Niente di tutto questo semplicemente avevo alloggiato le due schede, l’una sopra l’altra, nel classico contenitore grigio in vendita su tanti siti:

immagine tratta da RobotItaly.it

immagine tratta da RobotItaly.it

Il contenitore, che vedete raffigurato a fianco è estremamente razionale, e può contenere, oltre alle due schede, anche una piletta da 9 volts posteriormente accessibile tramite uno sportellino che si apre nella parte superiore del contenitore.
La soluzione era semplicissima, durante il funzionamento dell’accoppiata Arduino+Shield si generava troppo calore che non veniva correttamente smaltito data la natura piuttosto “chiusa” del contenitore.
E’ stato sufficiente rimuovere lo sportellino per consentire all’aria calda in eccesso, generata dal normale funzionamento dell’elettronica, di avere una via di fuga.
Da quel momento i malfunzionamenti inspigabili sono come per “magia” spariti e il server ha iniziato a girare senza più interrompersi.
A questo punto è intervenuta una seconda anomalia, i messaggi di posta elettronica che doveva consentire di controllare a distanza l funzionamento del server APRS e che permettevano di monitorare il server a cui si era agganciati funzionavano in modo erratico o non funzionavano affatto.
In particolare arrivavano messaggi di stato del server ON (o 1 come descritto nello sketch) che non corrispondevano a quanto riportato nei dati RAW facilmente desumibili dal sito APRS.FI e non arrivavano affatto i messaggi che riportavano lo stato di “down” del server principale. Dopo un breve scambio di Email con Claudio IZ2FER la soluzione è presto trovata.
Claudio si accorge di un errore di logica nella gestione delle variabili usate per conservare i valori dei server APRS, quindi prontamente appresta una patch, seguita poi da una versione più matura del software che ora implementa anche un mini web server per controllare il valore di alcune variabili.
In pratica richiamando l’indirizzo IP di Arduino all’interno della nostra rete domestica, otterremo una paginetta come questa:

FREERAM 971
analog input 0 is 292
analog input 1 is 286
analog input 2 is 288
analog input 3 is 308
analog input 4 is 303
analog input 5 is 332
dns 0 used 11
dns 1 used 0
dns 2 used 0
dns fail 0

La prima riga indica la RAM libera di Arduino ed ovviamente si dovrebbe mantenere stabile o variare di poco, le righe analog input controllano altrettanti accessi e possono essere utilizzate per caricare valori barometrici o altro, le successive righe si riferiscono ai tre server APR impostati all’interno del software e ci dicono quante dns query sono state effettuate e su quale server, l’ultima riga ci dice le dns query fallite (1).
Ho implementato anche la versione “semaforica” a diodi led del monitor di stato di questo piccolo server ASPRS basato su Arduino e lo potete vedere nelle immagini allegate.
A questo punto dopo che il sistemino avrà passato il test (leggasi avrà funzionato senza problemi per un mesetto) mi porrò il problema di dargli un degno contenitore, ovviamente con tante …. prese d’aria !!
I ringraziamenti a Claudio IZ2FER sono doverosi sopratutto per la sua cordialità e per il fatto di avermi sopportato durante tutto questo tempo.

Grazie Claudio!!!!!

 

Immagini iPhone 159

(1) una precisazione di Claudio che giro pari pari:
“Grazie, devo però segnalarti una imprecisione:

“le successive righe si riferiscono ai tre server APR impostati all’interno del software e ci dicono quante dns query sono state effettuate e su quale server, l’ultima riga ci dice le dns query fallite.”

Le righe DNS non si riferiscono allo stato dei server APRS ma a come sono andate le query DNS.
Cioè indica quante volte è stato utilizzato, per risolvere l’URL del server APRS in indirizzo IP in utilizzo in quel momento, un DNS piuttosto che un altro.
Come i server APRS, anche i DNS vengono impegnati in sequenza:
– Per primo viene tentato il server APRS primario (ITALYS) cercando di risolverne l’URL mediante:
– DNS query sul DNS primario (192.168.0.1 per la tua rete) [DNS 0 used +1]
– se fallisce viene ritentata la DNS query verso il DNS primario [DNS 0 used +1]. Metodologia “tenta ancora e non ti scoraggiare”
– se fallisce o va in timeout si passa al DNS secondario 8.8.8.8 [DNS 1 used +1]
– se fallisce viene ritentata la DNS query verso il DNS secondario. [DNS 1 used +1]. Metodologia “tenta ancora e non ti scoraggiare”
– se fallisce o va in timeout si passa al DNS opendns (non ricordo l’IP) [DNS 2 used +1]
– se fallisce viene ritentata la DNS query verso il DNS terziario. [DNS 2 used +1]. Metodologia “tenta ancora e non ti scoraggiare”
– Se fallisce o va in timeout anche l’ultimo DNS viene riciclato l’ultimo IP address che si era utilizzato per quello specifico APRS server [DNS fail +1]

– Se il primo APRS server non è risultato risolvibile e/o raggiungibile con nessuna delle query di cui sopra si passa al server secondario, ripetendo l’intero ciclo.
– Se al termine di tutto il ciclo nemmeno il server secondario è risultato risolvibile/raggiungibile si passa al terzo, sempre ripetendo tutta la procedura.

Non ci sono dei contatori assoluti relativi all’utilizzo dei server APRS, ma se serve posso vedere di imbastirli…

Come vedi la procedura di risoluzione URL>IP è molto + massiccia e non viene fatta fare piu’ “una botta e via”.”

Sul numero di Dicembre della rivista RADIO KIT Elettronica è uscito un bellissimo articolo a firma di Claudio IZ2FER che descrive la realizzazione di un Beacon APRS basato sulla piattaforma ARDUINO UNO dotato della sua scheda Ethernet.
Trovando sul mio tavolo di lavoro la stessa configurazione di schede Arduino in attesa di realizzare un’altro progetto, ho letteralmente divorato l’articolo e dopo aver scaricato lo sketch dal sito di Radio Kit, ho immediatamente collegato il mini server alla mia rete domestica.
Funzionamento al primo colpo, ho dovuto solo modificare lo sketch originale per adattarlo al server di posta elettronica che io utilizzo (alice.it) che vuole il log in con userid e password (a questo proposito consultate l’ottimo tutorial sulla sezione italiana del playground di Arduino).
Nelle prime 12 ore di funzionamento ho avuto alcuni malfunzionamenti dovuti, presumo, all’alimentazione che veniva fornita alle due schedine (Arduini + Shield Ethernet) da un classico alimentatorino switching da muro a 9 volts.
Evidentemente soffriva di rientri RF, forse dovuti alla vicinanza del router WIF, oppure è solamente troppo economico.
Ho risolto alimentando il tutto tramite la porta USB collegata ad una vicina lampada di design “a funghetto” che è dotata di tre porte USB per la ricarica di apparati telefonici cellulari, MP3 player e simili.
Adesso il mio mini server APRS (grazie Claudio …) funziona da 24 ore senza interruzioni, ha correttamente ruotato il beacon sul server alternativo, quando il principale non ha risposto, ed è tornato al principale quando si è reso nuovamente disponibile a ricevere i pacchetti APRS.
IL tutto ovviamente mandandomi gli avvisi via Email che, ricevuti correttamente dal mio smartphone, mi hanno tenuto informato del funzionamento.
Ora che sono certo del buon funzionamento, implementerò anche i due led di controllo previsti dal progetto di IZ2FER, per controllare anche visivamente lo stato del beacon, credo che una volta fatte le prove forerò direttamente la scatolina dove ora sono alloggiate le due schedine, inserendo i due led e  rendendo permanente questo progettino.
Altra prova da fare riguarda l’alimentazione, dato che nella scatolina è previsto l’alloggiamento per una piletta a 9 volts vorrei vedere quanto è in gradi di restare “in aria” il mini server prima di scaricare la pila, potrebbe essere una soluzione anche per la portabilità del sistema.
A un prossimo articolo foto e notizie sulle ulteriori esperienze.

P.S. ringrazio Claudio IZ2FER che contattato via email per le prime difficoltà mi ha dato preziosi consigli e dimostrato la massima disponibilità in puro “HAM SPIRIT”.

La Farnell mi ha comunicato la spedizione del Raspberry PI che avevo ordinato solo due giorni fa !!!!

Incredibile !!!

dippiù?
%d blogger hanno fatto clic su Mi Piace per questo: