Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5

New Station nearly up and running
#11

Hi,

So I re programmed all units taking extra care  with all configs, and I am still getting these readings for UV and srad, but only on the web interface. At the moment SRAD 22055 W/m2, UV 2231.1. The WD and RX screens both give 0 for these readings. 
Not sure what to check, I could try a different nano in the TX? Seems a bit strange.

Tonight we have wind and rain for the first time in about 6 weeks, wind and rain sensors are all working well.

Thanks
Reply
#12

Hi Tom

Very strange indeed!
Can you please post both TX and RX Config_Options.h files?
Which are the RX and TX software versions?

Reply
#13

RX config:
Code:
/ --------------------------------------------------------------------------------------
//  WeatherDuino Pro2 PLUS Receiver - Version: P2AT2560_RX_v6.0_b011
//                 Start of user configurable options
// --------------------------------------------------------------------------------------
// If you need help about any of the user configurable settings, please first do a search
// at the WeatherDuino Pro2 support forum. If you don't find any relevant info, then post
// a new thread.
//
// --------------------------------------------------------------------------------------
//   Define Name and ID's for this weather station
// --------------------------------------------------------------------------------------
const char* WeatherStation_Name = "Scatorish"; // Put here your Weather Station name - Don't leave this empty

const byte Station_ID = 0xA1;    // Station_ID, use the same value in all TX units
const byte Relay_ID   = 0xA3;    // Relay_ID,   use the same value in all WD units


// --------------------------------------------------------------------------------------
//   Define your Weather Station location. Use decimal format for Latitude and Longitude
// --------------------------------------------------------------------------------------
#define LATITUDE      52.581    // Put here your Station latitude in degrees North (always use 3 decimal places)
#define LONGITUDE     -7.198    // Put here your Station longitude in degrees - minus for West (always use 3 decimal places)
#define ELEVATION     62     // Put here your Station height above sea level in Meters (no decimal places)


// --------------------------------------------------------------------------------------
//   Define rules for Auto Summer Time Display, and clock adjustment
// --------------------------------------------------------------------------------------
#include <Timezone.h>
// Example for Australia Eastern Time Zone (Sydney, Melbourne)
// TimeChangeRule aEDT = {"AEDT", First, Sun, Oct, 2, 660};    //UTC + 11 hours
// TimeChangeRule aEST = {"AEST", First, Sun, Apr, 3, 600};    //UTC + 10 hours
// Timezone myTZ(aEDT, aEST);

TimeChangeRule IST = {"IST", Last, Sun, Mar, 1, 60};   //Irish  Summer Time -  "UTC + 1" or GMT + 1
TimeChangeRule GMT = {"GMT", Last, Sun, Oct, 2, 0};    //Irish Winter Time -  "UTC + 0" or GMT
Timezone myTZ(IST, GMT);


// --------------------------------------------------------------------------------------
//   Define Interface Language
// --------------------------------------------------------------------------------------
     
#include "_lang/en_GB.h"      // Change the language code according to your preference. Keep "_lang/" and the ".h" at the end
                             // Currently available languages: en_GB, fr_FR, de_DE, pt_PT, es_ES, cs_CZ, nl_NL, it_IT

// --------------------------------------------------------------------------------------
//   Define Roll Over Hour for Meteorological Day
// --------------------------------------------------------------------------------------
const byte MeteoDay_HStart = 0;    // Use values from 0 to 23


// --------------------------------------------------------------------------------------
//   Define Display Backlight TimeOut
// --------------------------------------------------------------------------------------
#define BACKLIGHT_TIMEOUT    30    // Timeout for display backlight in minutes (1 to 255). 0 = Always ON
#define USE_BIGCLOCK          1    // Instead of turn off TFT backlight, show a big clock screen. 0= No, 1= Yes


// --------------------------------------------------------------------------------------
//   Define data display units
// --------------------------------------------------------------------------------------
#define DATE_TIME_FORMAT  0    // 0 for dd-mm-yyyy, 1 for yyyy/mm/dd
#define TEMP_DISPLAY_UNIT 0    // 0 for ºC, 1 for ºF
#define ATM_DISPLAY_UNIT  0    // 0 for mBar, 1 for inHg
#define RAIN_DISPLAY_UNIT 0    // 0 for mm, 1 for inches
#define WIND_DISPLAY_UNIT 0    // 0 for Km/h, 1 for mph, 2 for m/s, 3 for Knots


// --------------------------------------------------------------------------------------
//   Define the type of your Barometric Pressure Sensor
// --------------------------------------------------------------------------------------
#define BAROMETRIC_SENSOR  0   // 0= BME280, 1= BMP280 2= BMP085 / BMP180


// --------------------------------------------------------------------------------------
//   Define the type of your inside Temperature / Humidity Sensor
// --------------------------------------------------------------------------------------
#define INSIDE_TH_SENSOR   0   // 0= BME280, 1= HTU21D, 2= SHT21, 3= SHT31


// --------------------------------------------------------------------------------------
//   Fine adjusts for Inside Temperature and Barometer
// --------------------------------------------------------------------------------------
const int   TemperaturaInt_offset =   0;   // Inside Temperature Fine Adjust in Tenths of Degree (-4 = -0,4ºC)
const float pressure_offset       =   0;   // Pressure Fine Adjust in mB


// --------------------------------------------------------------------------------------
//   Define Wind Speed and Wind Gust resolution - Read carefully
// --------------------------------------------------------------------------------------
// This setting only have effect when the software is used in Davis VP emulation mode
#define VP2_WIND_RESOLUTION     0   // If set to 2, set Cumulus Wind Speed and Wind Gust multipliers to 0.448. Wind Resolution 0.72 Km/h
                                    // If set to 1, set Cumulus Wind Speed and Wind Gust multipliers to 0.224. Wind Resolution 0.36 Km/h
                                    // WARNING !!! Setting this variable to 1 allows a better wind speed and gust resolution,
                                    // but also limits both of them, to a maximum reading of just 91.8 Km/h
                                    // If set to 0, system uses Standard Davis wind resolution (1 mph or 0.1mph with LOOP2).
                                    // Weather Display users should set this option to 0 - Standard Davis wind resolution  

// --------------------------------------------------------------------------------------
//   Define use of Wind Gust Spike prevention routines (mostly for FO anemometers)
// --------------------------------------------------------------------------------------
#define WIND_SPIKECONTROL 1   // 0= Disable, 1= Enable


// --------------------------------------------------------------------------------------
//   Define the source of your main outside sensors
// --------------------------------------------------------------------------------------
// ---- If you are using just one TX board, the source for all items should be equal to your single TX Unit ID (most likely zero).
// ---- Define the source of your main Temperature / Humidity sensor
#define TH_SOURCE       0   // 0= Temp/Hum sensor connected to TX_Unit 0, 1= for TX_Unit 1, ..., 3 for Auriol RF Temp / Hum
// ---- Define the source of your Main Wind sensor
#define WIND_SOURCE     0   // 0= Wind instruments connected to TX_Unit 0, 1= for TX_Unit 1, ..., 3 for Auriol RF Wind Speed & Dir
// ---- Define the source of your main Rain Gauge
#define RAIN_SOURCE     0   // 0= Rain Gauge connected to TX_Unit 0, 1= for TX_Unit 1, ..., 3 for Auriol RF Rain Gauge
// ---- Define the source of your main Solar Radiation sensor
#define SOLAR_SOURCE    9   // 0= Solar Radiation sensor connected to TX_Unit 0, 1= for TX_Unit1, ..., 9 for not used
// ---- Define the source of your main UV sensor
#define UV_SOURCE       9  // 0= UV sensor connected to TX_Unit 0, 1= for TX_Unit1, ..., 9 for not used


// --------------------------------------------------------------------------------------
//   Each TX unit can send data from two Temp / Hum sensors.
//   Here you must define which one will be used as your main outside Temperature / Humidity Sensor
//   SENSOR_0 can be any of the supported I2C T/H sensors (SHT31, SHT21 or HTU21D), SENSOR_1 can be an SHT1x or DHT22
// --------------------------------------------------------------------------------------
#define MAINOUT_TH_SENSOR 0   // 0 for SENSOR_0, 1 for SENSOR_1



// --------------------------------------------------------------------------------------
//   Define the type of your Solar Radiation device
// --------------------------------------------------------------------------------------
#define SOLAR_SENSOR     1   // 1= Solar Cell "Pyranometer", 2= Apogee SP-110 Pyranometer, 3= Reserved, 4= Apogee SQ-110: Photosynthetically Active Radiation Sensor
                            // ---- Support for sensor type 4 is experimental (type 4 is a PAR sensor)

// --------------------------------------------------------------------------------------
//   Define the type of your UV device
// --------------------------------------------------------------------------------------
#define UV_SENSOR        2          // 1= UVM-30A, 2= VEML6075, 3= Reserved
const byte UV_Transmission = 65;    // UV Transmission percentage of UV sensor cover material.


// --------------------------------------------------------------------------------------
//   Extra Sensors Settings and Mapping
// --------------------------------------------------------------------------------------
// ---- Define the source and sensor type (number) for each of the seven extra sensors, insert 9 if not used.
//      Sensors SHT31, SHT21 or HTU21D are type 0, sensors SHT1x or DHT22 are type 1
//
// ---- Source 0 means TX unit0, 1 means TX unit1...
// ---- Source 6 (Reserved)
// ---- Source 7 is for BIOS Sensor (Only Temperature is shown)
// ---- Source 8 is for Temperature/Humidity from the Air Quality Monitor
//
// ---- First field = Sensor source, Second field = Sensor type (0 or 1 for TX units)
// ---- Example:
// ----                          ES0   ES1   ES2   ES3   ES4   ES5   ES6    
//#define EXTRASENSORS_SOURCE { {0,1},{1,1},{9,9},{6,3},{9,9},{8,0},{9,9} }
//               {0,0} - First extra sensor (ES0), will be sensor 0 from TX unit0
//               {0,1} - Second extra sensor (ES1), will be sensor 1 from TX unit0
//               {1,0} - Third extra sensor (ES2), will be sensor 0 from TX unit1
//               {9,9} - Fourth extra sensor (ES3), not used - not mapped
//               {9,9} - Fifth extra sensor (ES4), not use - not mapped
//               {8,0} - Sixth extra sensor (ES5), will be Temperature / Humidity from the Air Quality Monitor
//               {9,9} - Seventh extra sensor (ES6), not use - not mapped
//
//-----                        ES0   ES1   ES2   ES3   ES4   ES5   ES6    
#define EXTRASENSORS_SOURCE { {9,9},{9,9},{9,9},{9,9},{9,9},{9,9},{9,9} }


// ---- Define personalized names for each Extra sensor. Attention, 8 chars maximum
// ---- There is no need to define a name for the Extra Sensor mapped to the Dust Density / AQI index data
//                   Max. Size  [--------]
const char ESname_1[] PROGMEM = "";            // 8 chars max
const char ESname_2[] PROGMEM = "";            // 8 chars max
const char ESname_3[] PROGMEM = "";            // 8 chars max
const char ESname_4[] PROGMEM = "";            // 8 chars max
const char ESname_5[] PROGMEM = "";            // 8 chars max
const char ESname_6[] PROGMEM = "";            // 8 chars max
const char ESname_7[] PROGMEM = "";            // 8 chars max


// --------------------------------------------------------------------------------------
//   BIOS soil moisture sensor settings
// --------------------------------------------------------------------------------------
// ---- Please use the included BIOS_ID_Scanner sketch to find you BIOS Device ID
#define BIOS_SENSOR_ID   0       // Device ID in HEX format, or 0 not used

// --------------------------------------------------------------------------------------
//   Soil / Leaf Interface Settings and Sensors Mapping
//   (The mapping logic is the same than used with the Extra Sensors)
// --------------------------------------------------------------------------------------
// 0 = Soil Leaf Interface not used
// 1 = Soil Leaf Interface connected to a TX unit
#define SOIL_LEAF_INTERFACE  0   // 0, 1,

// ---- For Soil & Leaf data from SoilLeaf_Interface wired to a TX unit, use TX Unit number as source
// ---- For BIOS Soil Temp / Moisture use 7 as source
// ---- To disable use 9 in both fields
//                                 S1    S2    S3    S4
#define SOILTEMPSENSORS_SOURCE  { {9,9},{9,9},{9,9},{9,9} }
#define LEAFTEMPSENSORS_SOURCE  { {9,9},{9,9},{9,9},{9,9} }
#define SOILMOISTSENSORS_SOURCE { {9,9},{9,9},{9,9},{9,9} }
#define LEAFWETSENSORS_SOURCE   { {9,9},{9,9},{9,9},{9,9} }

// ---- Define personalized names for each Soil and Leaf sensor. Attention, 8 chars maximum
//              Soil Max. Size  [--------]
const char SSname_1[] PROGMEM = "Grass";        // 8 chars max
const char SSname_2[] PROGMEM = "10cm";        // 8 chars max
const char SSname_3[] PROGMEM = "30cm";        // 8 chars max
const char SSname_4[] PROGMEM = "100cm";        // 8 chars max

//              Leaf Max. Size  [--------]
const char LSname_1[] PROGMEM = "Leaf1";        // 8 chars max
const char LSname_2[] PROGMEM = "Leaf2";        // 8 chars max
const char LSname_3[] PROGMEM = "Soil1";        // 8 chars max
const char LSname_4[] PROGMEM = "Soil2";        // 8 chars max


// Define VWC calculation method
// Method 1 applies only for VH400 soil moisture sensor
//
// METHOD 1 - Conversion from voltage to VWC (volumetric water content) is done using the piecewise regressions provided by the manufacturer
// at http://www.vegetronix.com/Products/VH400/VH400-Piecewise-Curve.phtml
//
// METHOD 2 - Used for any sensor which have a linear output between voltage and VWC (0V=0VWC, maxV=100VWC) .

#define VWC_CALCMETHOD   1  // 1 or 2

// Max and Min output voltage of the analog sensors connected to Soil / Leaf Interface
// Default value for Decagon Devices LWS Leaf Wetness Sensor (3.3V power): Max. Output Voltage - 1395mV (max wetness), Min Output Voltage - 530mV (dry)

//                                                  ADC1  ADC2  ADC3  ADC4  
const uint16_t AnalogSensor_MaxVoltOut[4]   = { 3000, 1395, 5000, 5000 };    // Values in miliVolts
const uint16_t AnalogSensor_MinVoltOut[4]   = {    0,  530,    0,    0 };


// --------------------------------------------------------------------------------------
//   Broadacasting settings for Wireless Display Units
// --------------------------------------------------------------------------------------
#define RELAY_DATA       1   // 0= Disables Data Relay, 1= Enables Data Relay


// --------------------------------------------------------------------------------------
//   Davis compatible Data Logger Settings
// --------------------------------------------------------------------------------------
#define LOGGER_ENABLE    1   // 0= Disable 1= Enable
byte ARCHIVE_PERIOD  =   5;  // Default Archive Period in Minutes (Usable values: 1, 5, 10, 15, 30)


// --------------------------------------------------------------------------------------
//   Define type of your Weather Software
// --------------------------------------------------------------------------------------
#define WEATHERSOFT      0   // 0= CumulusMX, 1= Any other (Cumulus 1, WeewX, Weather Display, etc.)


// --------------------------------------------------------------------------------------
//   Easyweather Mode output
// --------------------------------------------------------------------------------------
#define EASYWEATHER_OUT  0   // 0= Disable (defaut) 1= Enable


// --------------------------------------------------------------------------------------
//   Internet Settings
// --------------------------------------------------------------------------------------
#define ENABLE_INTERNET     1                        // 1= Enable Internet connection, 0= Disable

// ---- NTP Settings ----
#define ENABLE_NTP          1                        // 1= Enable Sync time with NTP servers, 0= Disable
// NTP Servers:
#define TIMESERVER "pool.ntp.org"
//#define TIMESERVER "time.nist.gov"                 // ntp1.nl.net NTP server
//#define TIMESERVER "80.96.196.58"                  // timp.mcsi.ro
//#define TIMESERVER "193.79.237.14"                 // ntp1.nl.net NTP server

// ---- Weather Wunderground Settings ----
#define ENABLE_WU_UPLOAD   1                     // 1= Enable upload to Wunderground, 0= Disable
#define WU_UPLOAD_INTEMP  0                       // 1= Enable upload of Inside Temperature / Humidity, 0= Disable
byte    WU_upload_period = 4;                        // Period in minutes between uploads to WU (Should be >= 3 minutes, if less defaults to 4 minutes)



// ---- Air Quality Monitor - Upload to ThingSpeak Settings ----
#define ENABLE_TS_UPLOAD         0                   // 1= Enable, 0= Disable


// ---- Air Quality Monitor - Upload and insert data in a SQL table at your own server ----
// ---- Database and table must be created first. See AirQuality_LogToSQL.php script for info
#define ENABLE_AQM_TO_MYSERVER    0                  // 1= Enable, 0= Disable


// ---- Web Server Settings ----
#define ENABLE_WEBSERVER          1             // 1= Enable 0= Disable
#define WEBSERVER_PORT           80                  // WebServer port (default 80)


// --------------------------------------------------------------------------------------
//   Enable / Disable GPIO routines - General Purpose Input / Output ports
// --------------------------------------------------------------------------------------
#define USE_GPIO  0   // 0=Disable, 1= Enable


// --------------------------------------------------------------------------------------
//   Define display order of data screens on the TFT
//   Use sequentially numbers from 1 to 4.
// --------------------------------------------------------------------------------------
#define AirQuality_Data    1
#define TXinfo_Data        2
#define ExtraSensors_Data  3
#define SoilLeaf_Data      4


// --------------------------------------------------------------------------------------
//   Test Mode : Never run a live system in test mode
// --------------------------------------------------------------------------------------
bool Test_Mode = false;    // false= Normal working mode, true= Test mode only (no logger, no usb connection)


// *************************************************************************************
//     Hardware Settings
// *************************************************************************************

// --------------------------------------------------------------------------------------
//   Define PCB Version Number
// --------------------------------------------------------------------------------------
//                              Take particular attention to this setting.
//                              Your system may not work properly if you define a wrong pcb version number.
//                              In case of doubt check what is printed in your pcb.
#define PCB_VERSION   20   // PCB version number, without the decimal point Ex: 1.3 = 13 (integer number)


// --------------------------------------------------------------------------------------
//   Define your Display type
// --------------------------------------------------------------------------------------
#define DISPLAY_TYPE     3    // 1= LCD 20x4, 3= TFT 320x240 ILI9341


// --------------------------------------------------------------------------------------
//   Define LCD I2C address
// --------------------------------------------------------------------------------------
// Only change this if your LCD don't display any data. I2C_Scanner utility may help you to find the address of your LCD display
// Default address will work most of the times!
#define LCD_ADDRESS      0x27  


// --------------------------------------------------------------------------------------
//   SHT31 I2C Address - Default address will work most of the times!
// --------------------------------------------------------------------------------------
#define SHT31_ADDRESS       0x44       // Default value is 0x44, but it can be changed to 0x45


// --------------------------------------------------------------------------------------
//   Presure Sensor Address (no need to change)
// --------------------------------------------------------------------------------------
//#define BMP085_ADDRESS    0x77       // I2C address of BMP085 or BMP180


// --------------------------------------------------------------------------------------
//   Debug helper
// --------------------------------------------------------------------------------------
//#define PRINT_DEBUG_WIFI
//#define PRINT_DEBUG_NTP_UPDATE      // Prints to serial monitor messages related to sync time with NTP server
//#define PRINT_DEBUG_WU_UPLOAD       // Prints to serial monitor messages related to Weather Underground upload.
//#define PRINT_DEBUG_TS_UPLOAD
//#define PRINT_DEBUG_MYSERVER_UPLOAD
//#define PRINT_DEBUG_VCHECK
//#define PRINT_DEBUG_TCP_SERVER
//#define PRINT_DEBUG_AURIOL
//#define PRINT_DEBUG_BIOS
//#define PRINT_DEBUG_RF_MESSAGES


// ---------------------------------------------------------------------------------------------------
//     End of user configurable options
// ---------------------------------------------------------------------------------------------------
TX Config:
Code:
// --------------------------------------------------------------------------------------
//    WeatherDuino Pro2 Universal TX - Version: 6.0_b007
//           Start of user configurable options
// --------------------------------------------------------------------------------------


// --------------------------------------------------------------------------------------
//   Define ID and TX unit number
// --------------------------------------------------------------------------------------
#define Station_ID  0xA1    // Must be equal to your RX Unit (Value from 0x00 to 0xFF)  
#define Unit_ID        0    // If you use only one TX unit define it as Unit_ID = 0
                           // For a second TX unit, define it as Unit_ID = 1

// --------------------------------------------------------------------------------------
//   Define type of Temperature / Humidity sensor used as Sensor 0 and / or Sensor 1
// --------------------------------------------------------------------------------------
#define TH_SENSOR0  1      // [SENSOR 0] - 0 for SHT2x sensor, 1 for SHT31 sensor, 2 for HTU21 sensor, 9 for Not Used
#define TH_SENSOR1  9      // [SENSOR 1] - 0 for SHT1x sensor, 1 for DHT22 sensor, 9 for Not Used


// --------------------------------------------------------------------------------------
//   Define which Temp / Hum sensor controls the fan, and threshold values
// --------------------------------------------------------------------------------------
#define FANCONTROL_SENSOR  0      // 0 for Sensor 0, 1 for Sensor 1 (which sensor is used to control the RS Fan)
const int fanOn_HiTemp  = 32;     // RS Fan turn on when outside temperature is >= than this value (ºC)
const int fanOn_LowTemp =  2;     // RS Fan turn on when outside temperature is <= than this value (ºC)
const int fanOn_LowWind =  1;     // RS Fan turn on when Wind Average is <= than this value (m/s)


// --------------------------------------------------------------------------------------
//   Define type of Wind Speed sensor. See below for allowed types
// --------------------------------------------------------------------------------------
/*
--- Fine Offset Anemometers ---
Use 1O for standard FO anemometers
Use 11 for FO anemometer modified with 1 hall effect sensor

--- Inspeed Anemometers ---
Use 20 for Inspeed Vortex, digital 8 pulse revolution anemometer
Use 21 for Inspeed Vortex, hall efect sensor
Use 22 for Inspeed Vortex, read switch sensor

--- Davis Anemometers ---
Use 30 for Davis 6410, 7911 anemometer

--- Novalynx Anemometers ---
Use 40 for Novalynx, model 200-WS-02F

--- Environmental Measurements Limited ---
Use 50 for EML, model WSD1

--- Didcot Instrument Company ---
Use 60 for DIDCOT, model DWR205

--- Vector Instruments ---
Use 70 for Vector Instruments model A100LK
Use 71 for Vector Instruments model A100L2
Use 72 for Vector Instruments model A100R
*/
#define WINDSPEED_SENSORTYPE 10             // SEE INFO ABOVE!!!


// --------------------------------------------------------------------------------------
//   Define type of Wind Direction sensor
// --------------------------------------------------------------------------------------
/*
--- Fine Offset Wind Vane ---
Use 1O for standard FO wind vane

--- Analogue Wind Vanes ---
Use 20 for any 5V analogue wind vane. See bellow for a list of tested models

- Inspeed E-Vane 2
- Davis 6410
- Novalynx, model 200-WS-02F
- Environmental Measurements Limited, model model WSD1
- DIDCOT, model DWD205
- Almost all 5V analogue wind vanes will work

*/
#define WINDDIR_SENSORTYPE  10  // SEE INFO ABOVE!!!


// --------------------------------------------------------------------------------------
//          Analogue Vane Offset Calibration
// --------------------------------------------------------------------------------------
const int WDir_offs  = 0;   // Usually there is no need to change default value (zero)


// --------------------------------------------------------------------------------------
//   Define Rain Gauge tip boucket value (mm)
// --------------------------------------------------------------------------------------
/*
 Use 0.280 for standard FineOfset rain gauges (Datasheet value = 0.2794)
 Use 0.200 for standard metric Davis rain gauges
 Use 0.254 for standard imperial Davis rain gauges
*/  
#define COLLECTOR_TYPE  0.280  // Please note: Values must be in metric units. Max. resolution: 3 decimal digits
 

// --------------------------------------------------------------------------------------
//   Define type of UV Sensor
// --------------------------------------------------------------------------------------
#define UV_SENSOR  9      // 0= UVM-30A, 1= VEML6075, 9= Not used


// --------------------------------------------------------------------------------------
//   Soil / Leaf Interface Enable Disable
// --------------------------------------------------------------------------------------
#define SOILLEAF_INTERFACE        0    // 0 = Soil Leaf Interface not used, 1 = Enable Soil Leaf Interface
const byte Number_AnalogSensors = 2;   // Up to 4 analog sensors


// --------------------------------------------------------------------------------------
//   Define which data this unit will send. 0 = Not send this data, 1= Send this data
// --------------------------------------------------------------------------------------
#define ID0  1   // Temp/Hum Data
#define ID1  0   // Not Used
#define ID2  1   // Wind data
#define ID3  1   // Rain data
#define ID4  0   // SolRad / UV data
#define ID5  1   // Hardware Status - System Temp, Battery Voltage etc
#define ID7  0   // Send Soil & Leaf Temperature Data
#define ID9  0   // Send Soil & Leaf Moisture / Wetness Data


// *************************************************************************************
//     Hardware Settings
// *************************************************************************************
// Define if the TMP36 sensor is instaled
#define USE_TMP36       1          // 0= Not Instaled, 1= Intalled


// --------------------------------------------------------------------------------------
//   SHT31 I2C Address - Default address will work most of the times!
// --------------------------------------------------------------------------------------
#define SHT31_ADDRESS 0x44           // Default value is 0x44, but it can be changed to 0x45


// --------------------------------------------------------------------------------------
//   Debug
// --------------------------------------------------------------------------------------
#define ENABLE_DEBUG      false
#define DEBUG_ID0         false
#define DEBUG_ID2         false
#define DEBUG_ID3         false
#define DEBUG_ID4         false
#define DEBUG_ID5         false
#define DEBUG_SLINTERFACE false
#define EASYWEATHER_TEST  false


// ---------------------------------------------------------------------------------------------------
//     End of user configurable options
// ---------------------------------------------------------------------------------------------------
One other thing I have just noticed: I am sending weather information to WU just to see if it all works ok ( it does!), but there is always a UV reading, it says 7 just now, neighbouring station is also 7. Is that coming from my station (with no UV module) or do WU do it automatically?
My weather station is https://www.wunderground.com/personal-we...=IBENNETT3, not at all accurate yet, sensors hanging out my kitchen window.
Thanks,
Tom
Reply
#14

Hi Tom,

Thank you for having posted the files. Everything is fine with your config files. After trying to replicate the problem indeed I found a bug on the code which displays the web page. It will be fixed on the next software release. Thank you for having reported the problem.

Regarding the UV data in your WU page, hope WU have not started to insert arbitrary data on the users webpages.

Reply
#15

Thanks for investigating this, I am relieved it is a software bug, I was slightly worried I had done something wrong when constructing the boards.

I will keep an eye on that WU UV reading  - I presume it should be blank as I have no UV sensor attached and that the WeatherDuino is not sending any information

My solar panel and regulator arrived today, just waiting for battery and then I will put up the station properly.

Regards,
Tom
Reply
#16

Hi Tom,

It's confirmed that its a bug in the RX software, which only affects the Solar Rad and UV values shown on the web page when these sensors aren't used. As soon as possible I will release an updated version, maybe in a week or two.
Regarding the UV value on your WU page, seems that it is inserted by WU ( Huh ), perhaps based on values from nearby weather stations.

Reply
#17

My battery has arrived now. I got a  22aH battery and 50W panel, hope it is enough for dark Irish winters.

I have everything out on the edge of the garden with solar panel and battery all hooked up. About 30 or 40 metres from my receiver in the kitchen.

After a little bit of tweaking with aerials and placement, everything is working great. I eventually want to put it out in a field as far away as possible as my house and garden are surrounded by big trees. Luckily I am a farmer, have lots of space.

Anyway, I have some more questions/ observations:

I have run a wire from battery + to the bat terminal on TX board, so that battery voltage can be monitored. I measured the battery voltage with my multimeter as 12.8V, but the RX screen and web interface all report 12.3V, 0.5V of a difference. Is this normal / to be expected?
Do I just mentally add .5V on to whatever the RX says?

I am using SHT31 temp sensors and a BME280 pressure/temp sensor. Do people find they have to use calibration offsets for these or are they fairly accurate as they are? I have my height accurately set in the config. We have a potential heatwave here in Ireland next week and I would love to get accurate measurements of temp. 

Thanks,
Tom
Reply
#18

Hi Tom,

Is good to know that all is up and running. Now, its a great time to upgrade the software of all units with the latest version released yesterday.
It will be good to follow how your solar system will perform during the next winter. Hope you keep us informed. Sharing experiences is very important to all of us.

Quote:I have run a wire from battery + to the bat terminal on TX board, so that battery voltage can be monitored. I measured the battery voltage with my multimeter as 12.8V, but the RX screen and web interface all report 12.3V, 0.5V of a difference. Is this normal / to be expected?
Do I just mentally add .5V on to whatever the RX says?

The precision of the battery voltage reading is mainly influenced by the precision of the R9 and R10 resistors on the TX board. Whenever is possible use metal film 1% resistors. Anyway we should always expect an error of 0.1V to 0.2V, due to errors in the Arduino ADC (Arduino ADC voltage reference is not always precisely 5V).

Quote:I am using SHT31 temp sensors and a BME280 pressure/temp sensor. Do people find they have to use calibration offsets for these or are they fairly accurate as they are? I have my height accurately set in the config. We have a potential heatwave here in Ireland next week and I would love to get accurate measurements of temp.


Personally I don't use any calibration offset in my config.

Regards

Reply
#19

Got a bit of time to fiddle with the weatherduino recently..

Regarding the battery voltage reporting,I noticed that I had used a 3.3kohm instead of a 3 kohm resistor...I have swapped that out for a 3k resistor and the readings are much more as expected, 14.1V during daylight, 13.2 during early night, haven't been awake early enough to know what voltage is at 5 in the morning when sun comes up. It has been running "off grid" for nearly a month now, so all good.

I have attached the RX to a R Pi Zero w running Cumulusmx. The Pi Zero W is so small that I have managed to fit it all in the one box with the RX. I have used a buck regulator from 9v to 5v which comes with a built in micro USB connector for powering the Pi - it is the Geree in the photo. The regulator gets power from the 9v point on the barrel connector - hope that makes sense.
I think it is quite a neat and relatively compact system, only one power line coming in ( and only 1 mains socket needed).

               

I will post some pictures of the TX and solar power and sensor set up tomorrow when I have photos. When I was deciding if and how to build a weatherduino, I found photos very useful. Hopefully my photos might help others.
I must get a UV/solar board. And a leaf/soil interface board. And an Air Quality Monitor. Big Grin This stuff is fairly addictable.

Regards,
Heeby
Reply
#20

Hi Heeby ,

Congratulations! I really like your setup. As much as I know you are the first one using a R Pi Zero for running CumulusMX, resulting in a very compact system.
Thank you sharing your assembling and for having posted the pictures. Indeed, the posted pictures can be very useful to anyone which is building or planning build a similar system.

Once again, congratulations. Its always a pleasure knowing that one more person have a fully working system.


Quote:Regarding the battery voltage reporting,I noticed that I had used a 3.3kohm instead of a 3 kohm resistor...I have swapped that out for a 3k resistor and the readings are much more as expected, 14.1V during daylight, 13.2 during early night, haven't been awake early enough to know what voltage is at 5 in the morning when sun comes up. It has been running "off grid" for nearly a month now, so all good.

Wink
At my location, early in the morning, voltage battery usually is 12.3V to 12.4V during winter, and 12.5 ~ 12.7V on summer.


Quote:Big Grin This stuff is fairly addictable.
Be careful, because it really is.  Cool

Reply




Users browsing this thread: 1 Guest(s)