domenica 15 gennaio 2017

First IOT attempt

This is my first IOT Internet of Things attempt, based on a Arduino YUN.
Is located in my Shack and connected to a 10 Watts solar panel, with two 7Ah PBgel Batteries in parallel.

Update of 2017:

Now the system is based on a Raspberry PI B+ connected to internet that sends tu Things Speak and the Hamradio APRS Network



Data of my attic  updated in  real time!!







 

lunedì 9 gennaio 2017

thd7gps firmware arduino per Kenwood THD7 tradurre nmea 183.3 a 183.2 nmea

thd7gps


Il codice sorgente e progetto si trova su GitHub

https://github.com/in3aqk/thd7gps


Si tratta di un firmware Arduino in grado di convertire stringhe NMEA 183,3  in NMEA 183.2.

E' necessario  per permettere ad un vecchio ricetrasmettiore  Kenwood TH-D7 hamradio RTX con firmware non modificato di funzionare con un GPS NMEA.


Il TH-D7 utilizza due frasi NMEA per ricavare la posizione che vengon ocntinuamente inviate dall'unita GPS: $GPGGA e $ GPRMC.

La vecchi a versione del firmware non riconosce correttamente le virgole che separano i vari campi all'interno queste frasi, utilizzando invece un metodo di lunghezza fissa che potrebbe portare alla interpretazione sbagliata dei dati.

Per esempio:

NMEA GPS 183.3 manda:
$GPRMC, 192.944, V, 3733,8310, N, 01.504,5017, E, 20.0,270.8,081205,2.0, E, S23
$GPGGA, 192958,3733.8070, N, 01.504,4222, E, 8,09,2.0,335.4, M, 38,3 , M ,, 4A

NMEA GPS 183,2 manda:

$GPRMC, 192.944, V, 3733,831, N, 01.504,501, E, 20.0,270.8,081205,2.0, E, S23
$GPGGA, 192958,3733.807, N, 01.504,422, E, 8,09,2.0,335.4, M, 38,3 , M ,, 4A

Prestare attenzione il checksum su questi stringa di esempio è probabilmente sbagliata.

Le cifre decimali nei campi latitudine e longitudine sono 4 invece delle 3 attese dal TH-D7.

Il codice arduino toglie la cifra in più e re-invia la  stringa sistemata al TH-D7 in formato NMEA 183.2

L'hardware si basa su:

  • Arduino nano 
  • GPS con uscita NMEA
  • Max 23 come convertitore di livello




Hardware e il firmware è in grado di:

  • ricevere le stringhe NMEA con una porta seriale software
  • identificare le frasi $ GPGGA e $ GPRMC
  • rimuovere i decimanli  meno significativi
  • Ricalcolare il checksum
  • trasmettere la stringa NMEA per la radio con una porta seriale software

riferimento sul problema http://www.qsl.net/n6qab/n6qabgps1.htm

(C) 2017 Paolo Mattiolo In3aqk

thd7gps arduino firmware for Kenwood THD7 to translate nmea 183.3 to nmea 183.2

thd7gps


Source code and project on github

https://github.com/in3aqk/thd7gps




This is a Arduino firmware able to convert NMEA 183.3 strings to NMEA 183.2. It's necessary to let the old Kenwood TH-D7 hamradio rtx with unmodified firmware to work with new Nmea GPS.

The TH-D7 uses two NMEA sentences out of the many sent by the GPS unit every second: the $GPGGA and the $GPRMC.
Early firmware version did not recognize the commas separating the various fields inside these sentences, using instead a fixed-length method that could lead to wrong data interpretation.

For Example:

NMEA 183.3 GPS sends:

$GPRMC,192944,V,3733.8310,N,01504.5017,E,20.0,270.8,081205,2.0,E,S23 $GPGGA,192958,3733.8070,N,01504.4222,E,8,09,2.0,335.4,M,38.3,M,,4A

NMEA 183.2 GPS sends:

$GPRMC,192944,V,3733.831,N,01504.501,E,20.0,270.8,081205,2.0,E,S23 $GPGGA,192958,3733.807,N,01504.422,E,8,09,2.0,335.4,M,38.3,M,,4A

Pay attention the checksum on these examble string are probably wrong.

The 4 decimal digits in the Lat and Long fields instead of the 3 expected by the TH-D7 are the source of the incompatibility. The arduino code strips the extra digit and resent it to the TH-D7 in NMEA 183.2 format

The hardware in base on

  • Arduino nano
  • GPS whit nmea output
  • Max 232 level converter




Hardware and firmware is able to:


  • receive the NMEA strings with a software serial port
  • identify the $GPGGA and $GPRMC sentences
  • remove the least significant decimal digits exceeding the 3 expected by the radio
  • recalculate the checksum
  • transmit the nmea string to the radio with a software serial port





Reference http://www.qsl.net/n6qab/n6qabgps1.htm
(c) 2017 Paolo Mattiolo In3aqk