Wearher monitor modules: Difference between revisions

From Rsewiki
Line 51: Line 51:


* The message is like:
* The message is like:
** Topic: weather7/data
** Topic: weather/indoor
** Topic: weather/outdoor
** Payload: epoc_time measured values ...
** Payload: epoc_time measured values ...


The payload follows the logfile with this content. Note, the columns 2-4 are for MATLAB plotting and will be removed. Additional columns will be added if the weather sensor is extended with more sensors.
The payload follows the log file with the following content. Note that columns 2-4 are for MATLAB plotting and will likely be removed. Additional columns will be added if the weather sensor is extended with more sensors.
  % Weather log started at 2025-07-27 00:00:00.424
  % Weather log started at 2025-07-27 00:00:00.424
  % 1: time since 1jan 1970 (sec)
  % 1: time since 1jan 1970 (sec)
Line 67: Line 68:
  % 10: Air pressure (hPa)
  % 10: Air pressure (hPa)
  % 11: Brightness (Lux)
  % 11: Brightness (Lux)
  % 12: Accumulated rain (mm)
  % 12: Accumulated rain (mm) (maybe not available)
  1753567204.180 620141.188 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8
% 13: sound level (dB)  (maybe not available)
  1753567209.813 620146.875 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8
% 14: particles PM2.5 (ug/m3) (maybe not available)
  1753567215.446 620152.500 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8
% 15: particles PM10 (ug/m3) (maybe not available)
  1753567221.080 620158.125 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8
  1753567204.180 620141.188 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
  1753567209.813 620146.875 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
  1753567215.446 620152.500 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
  1753567221.080 620158.125 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0





Revision as of 14:20, 27 August 2025

back to Gnss monitor

Modules

Module overview

Display

The display is a C++ app based on the Qt library for visual elements.

Description

Gnss sensor

The sensor is a standard GNSS receiver (Ublox-9) and the interface is the default NMEA messages sent from the receiver.

These messages are published using the MQTT protocol.

  • Message format
    • Topic: ublox9/nmea/GXXXX
    • payload: Epoc_time $GXXXX,....*FF

Where GXXXX are the NMEA message type (e.g. GPGGA). The Epoc_time is the epoc timestamp in seconds since 1970 (e.g. 1755155031.0294).

An NMEA message packed in MQTT could be like this for a full sequence (repeated every second)

'ublox9/nmea/GNRMC' 1754938492.0209 $GNRMC,185452.00,A,5535.78100,N,01214.70166,E,0.540,,110825,,,A,V*1D
'ublox9/nmea/GNVTG' 1754938492.0211 $GNVTG,,T,,M,0.540,N,1.000,K,A*3D
'ublox9/nmea/GNGGA' 1754938492.0212 $GNGGA,185452.00,5535.78100,N,01214.70166,E,1,12,1.12,22.3,M,40.1,M,,*72
'ublox9/nmea/GNGSA' 1754938492.0213 $GNGSA,A,3,14,15,22,13,23,17,24,,,,,,2.10,1.12,1.78,1*0C
'ublox9/nmea/GNGSA' 1754938492.0214 $GNGSA,A,3,65,75,,,,,,,,,,,2.10,1.12,1.78,2*0C
'ublox9/nmea/GNGSA' 1754938492.0215 $GNGSA,A,3,,,,,,,,,,,,,2.10,1.12,1.78,3*0C
'ublox9/nmea/GNGSA' 1754938492.0216 $GNGSA,A,3,10,29,33,26,24,,,,,,,,2.10,1.12,1.78,4*03
'ublox9/nmea/GPGSV' 1754938492.0220 $GPGSV,3,1,12,02,08,022,16,10,18,329,,12,06,218,,13,48,152,19,1*66
'ublox9/nmea/GPGSV' 1754938492.0222 $GPGSV,3,2,12,14,44,065,27,15,61,214,18,17,34,100,25,19,23,129,,1*6C
'ublox9/nmea/GPGSV' 1754938492.0223 $GPGSV,3,3,12,22,59,077,30,23,31,285,20,24,47,274,16,30,10,094,,1*6A
'ublox9/nmea/GLGSV' 1754938492.0224 $GLGSV,3,1,09,65,64,226,14,66,41,318,20,72,20,171,,74,37,054,,1*7A
'ublox9/nmea/GLGSV' 1754938492.0225 $GLGSV,3,2,09,75,84,288,19,76,25,240,,82,05,337,,83,20,024,24,1*75
'ublox9/nmea/GLGSV' 1754938492.0229 $GLGSV,3,3,09,84,12,077,,1*4E
'ublox9/nmea/GAGSV' 1754938492.0231 $GAGSV,1,1,00,7*73
'ublox9/nmea/GBGSV' 1754938492.0237 $GBGSV,3,1,09,05,12,129,,07,30,060,,09,01,088,,10,35,074,14,1*7A
'ublox9/nmea/GBGSV' 1754938492.0238 $GBGSV,3,2,09,24,81,213,23,25,24,247,,26,44,075,31,29,13,027,21,1*7B
'ublox9/nmea/GBGSV' 1754938492.0239 $GBGSV,3,3,09,33,51,231,21,1*48
'ublox9/nmea/GNGLL' 1754938492.0240 $GNGLL,5535.78100,N,01214.70166,E,185452.00,A,A*70        

Function

Weather sensor

The weather sensor is based on a commercial RS-485 sensor. This is interfaced to a Raspberry PI and published as MQTT messages.

  • The message is like:
    • Topic: weather/indoor
    • Topic: weather/outdoor
    • Payload: epoc_time measured values ...

The payload follows the log file with the following content. Note that columns 2-4 are for MATLAB plotting and will likely be removed. Additional columns will be added if the weather sensor is extended with more sensors.

% Weather log started at 2025-07-27 00:00:00.424
% 1: time since 1jan 1970 (sec)
% 2: time since 2025-07-27 00:00:00.424
% 3: hour of day
% 4: Minute in hour
% 5: Temperature (centigrades
% 6: Humidity (%)
% 7: Wind speed (m/s)
% 8: Wind direction (degrees)
% 9: Wind angle (degrees)
% 10: Air pressure (hPa)
% 11: Brightness (Lux)
% 12: Accumulated rain (mm) (maybe not available)
% 13: sound level (dB)  (maybe not available)
% 14: particles PM2.5 (ug/m3) (maybe not available)
% 15: particles PM10 (ug/m3) (maybe not available)
1753567204.180 620141.188 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
1753567209.813 620146.875 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
1753567215.446 620152.500 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0
1753567221.080 620158.125 0 0 18.2 83.9 0.0 0 0 1009.0 0 20.8 0 0 0


Function

PV sensor

This sensor is made to monitor a minor PV (solar panel) installation with load control.

The sensor includes:

  • PV cell voltage and current
  • Battery voltage and charge current
  • Load control (on/off)
  • Load current (out of battery).

Function