Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
pro2_compact_receiver [2019/05/05 19:11]
werk_ag [Custom Box for the WeatherDuino Pro2 Compact receiver]
pro2_compact_receiver [2020/05/03 04:08] (current)
werk_ag [Settings for the 4 Day Forecast]
Line 5: Line 5:
 ===== Overview ===== ===== Overview =====
  
-The WeatherDuino Pro2 Compact was announced in May 2018 as the latest member of the family of WeatherDuino receivers.\\ +The WeatherDuino Pro2 Compact was announced in May 2018 as the latest member of the family of WeatherDuino receivers. It is supplied as a fully assembled and tested unit. Everything ​except the RF antenna ​is included: TFT, Atmospheric Pressure sensor, Indoor Temperature / Humidity sensor, ​Real Time clock, SMA antenna connector. It is compatible ​with all existing WeatherDuino Transmitter units operating at 433Mhz. 
-It is supplied as a fully assembled and tested unit. Everything is included: TFT, Atmospheric Pressure sensor, Indoor Temperature / Humidity sensor, ​etc.\\ + 
-It is compatible ​will all existing WeatherDuino Transmitter units operating at 433Mhz.\\ +The WeatherDuino Pro2 Compact receiver is not intended to be a replacement for the Pro2 PLUS receiver, with which it shares most of its functions. The main goal was to provide a solution for those who want to build a WeatherDuino weather station, but prefer to concentrate their efforts on constructing the Transmitter unit. The Pro 2 Compact will also be a quick and cheap upgrade option for users of the older Pro2 receiver, which doesn'​t have some of the capabilities of the newer receivers (Wi-Fi, support for Air Quality data, TFT colour display, among others). 
-The WeatherDuino Pro2 Compact receiver is not intended to be a replacement for the Pro2 PLUS receiver, with which it shares most of its functions. The main goal was to provide a solution for those who want to build a WeatherDuino weather station, but prefer to concentrate their efforts on constructing the Transmitter unit. The Pro 2 Compact will also be a quick and cheap upgrade option for users of the older Pro2 receiver, which doesn'​t have some of the capabilities of the newer receivers (Wifi, support for Air Quality data, TFT colour display, among others).+ 
 +The Pro2 Compact uses a 32-bit Tensilica L106 microcontroller running at 80Mhz, making it the fastest of all the WeatherDuino receivers. 
 + 
 +Navigation through the several data screens is simply achieved using the touch screen. A touch on the right-hand side advances to the next data screen; a touch on the left-hand side returns to the previous data screen. There is also a menu screen which allows direct and quick navigation to any of the other data screens. 
  
-The Pro2 Compact uses a 32-bit Tensilica L106 microcontroller running at 80Mhz, which makes it the fastest of all the WeatherDuino receivers.\\ 
-Navigation through the several data screens is simply achieved using the touch screen. A touch on the right-hand side advances to the next data screen; a touch on the left-hand side returns to the previous data screen. There is also a menu screen which allows direct and quick navigation to any of the other data screens.\\ 
-\\ 
 You can see it in action on the short video below. Notice how fast it refreshes the data screens! You can see it in action on the short video below. Notice how fast it refreshes the data screens!
  
 {{https://​www.meteocercal.info/​forum/​videos/​Pro2_Compact_Video01.mp4|}} {{https://​www.meteocercal.info/​forum/​videos/​Pro2_Compact_Video01.mp4|}}
-\\ 
-NOTE: This video was done from an unit running an older software, current software uses smooth fonts and new icons giving a much better look to all data screens. 
  
  
-===== Principal ​characteristics of the Pro2 Compact receiver =====+NOTE: The current software uses smooth fonts and new icons giving improved clarity and better visual appearance. 
 + 
 + 
 +===== Main characteristics of the Pro2 Compact receiver =====
  
   * 2.8" Touch-sensitive color TFT display   * 2.8" Touch-sensitive color TFT display
   * Integrated Atmospheric Pressure and Temperature / Humidity sensors (latest Bosch BME280).   * Integrated Atmospheric Pressure and Temperature / Humidity sensors (latest Bosch BME280).
-  * WiFi capability (amongst other things, this allows direct upload to WU without the need to have a permanent connection to a PC or Raspberry Pi - 'Stand alone' Mode). +  * Wi-Fi capability (amongst other things, this allows direct upload to WU without the need to have a permanent connection to a PC or Raspberry Pi - 'Stand alone' Mode). 
-  * Four day weather ​forecast for a user defined location or based on a defined WU weather station (obviously can be your own WU station)+  * Weather ​forecast for the next twelve hours
-  * Broadcast ​Data to any number of 4Pro Wireless Display units by WiFi, which is faster than RF and allows better reception of RF data packets from the Transmitter units.+  * Broadcast ​data to any number of 4Pro Wireless Display units by Wi-Fi, which is faster than RFand allows better reception of RF data packets from the Transmitter units.
   * Sync system time with NTP servers.   * Sync system time with NTP servers.
   * Over The Air (OTA) software upgrades. No need to remove or disconnect the USB cable.   * Over The Air (OTA) software upgrades. No need to remove or disconnect the USB cable.
Line 43: Line 45:
  
 |{{  :​wiki:​pro2_compact_graphics_web640.jpg?​direct&​320 ​ |pro2plus_overview_04.jpg}} ​ |  {{  :​wiki:​ajc2741_web.jpg?​direct&​320x214 ​ |weatherduinopro2plus_rx_v130_revb_assembled_style.jpg}} ​ |{{  :​wiki:​pro2_compact_aqm_web640.jpg?​direct&​320 ​ |pro2plus_overview_03.jpg}} ​ | |{{  :​wiki:​pro2_compact_graphics_web640.jpg?​direct&​320 ​ |pro2plus_overview_04.jpg}} ​ |  {{  :​wiki:​ajc2741_web.jpg?​direct&​320x214 ​ |weatherduinopro2plus_rx_v130_revb_assembled_style.jpg}} ​ |{{  :​wiki:​pro2_compact_aqm_web640.jpg?​direct&​320 ​ |pro2plus_overview_03.jpg}} ​ |
 +
 +\\
 +
  
 ===== Installing and Configuring the software ===== ===== Installing and Configuring the software =====
  
-For testing ​purposes, all units are supplied already ​programmed with the latest ​software ​version, however, ​the end user should always reprogram each unit with their own personalized settings, including:+As part of pre-delivery ​testing, all units are programmed with the latest version ​of the WeatherDuino software, however, ​users need to configure some items specific to their installation and should also check that other options are appropriate, including:
  
-  * ID and password of your WiFi access point +  * SSID and password of your Wi-Fi access point 
-  * location to be used for the four day forecast +  * location to be used for the OpenWeather ​forecast 
-  * and many other details, related to your own specific system.+  * other configurable options (see below)
  
-<WRAP round tip 75%> If you are a newcomer to the system you should start by reading some general information about: [[:​programming_weatherduino_devices|]], ​\\ +<WRAP round tip 75%> If you are a newcomer to the system you should start by reading some general information about: [[:​programming_weatherduino_devices|]],​ otherwise continue reading. </​WRAP>​
-otherwise continue reading. </​WRAP>​+
  
 At this point we are assuming that you already have all the required Arduino libraries installed. \\ After loading the Pro2 Compact software in the Arduino IDE, the first thing that should always be done is reviewing all user configurable options. Click on the Config_Option.h tab, all user configurable options are here. At this point we are assuming that you already have all the required Arduino libraries installed. \\ After loading the Pro2 Compact software in the Arduino IDE, the first thing that should always be done is reviewing all user configurable options. Click on the Config_Option.h tab, all user configurable options are here.
Line 61: Line 65:
 Here you will define things like your Station_ID, Time Zone, user interface language, and many other things. Review them all, and edit each one to suit your specific system. Each user configurable option includes comments about their use, and available options. Here you will define things like your Station_ID, Time Zone, user interface language, and many other things. Review them all, and edit each one to suit your specific system. Each user configurable option includes comments about their use, and available options.
  
-After having reviewed and editing all the user configurable settings, click on the Credentials.h tab. This is where your credentials to access some services are stored. For example, if you have enabled the direct upload to Wunderground option, you need to provide your access details. You can see an example Credentials.h file below. +After having reviewed and editing all the user configurable settings, click on the Credentials.h tab. This is where your credentials to access some services are stored. For example, if you have enabled the direct upload to Wunderground option, you need to provide your access details. You can see an example Credentials.h file below.<​code>​
- +
-<​code>​+
 // //
  ​--------------------------------------------------------------------------------------  ​--------------------------------------------------------------------------------------
Line 72: Line 74:
  
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-//   WiFi Credentials ​+//   WiFi Credentials
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
 #define WIFI_SSID ​       "​xxxxxxxxxxxx" ​             // WiFi Name #define WIFI_SSID ​       "​xxxxxxxxxxxx" ​             // WiFi Name
 #define WIFI_PASSWORD ​   "​xxxxxxxxxxxx" ​             // WiFi Password #define WIFI_PASSWORD ​   "​xxxxxxxxxxxx" ​             // WiFi Password
- 
  
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-//   OTA Settings ​+//   OTA Settings
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
 const char* OTA_DEVICE_ID ​ = "​Pro2C-RX"; ​  // Define a unique ID for each Pro2 Compact RX (used to identify unit for OTA upload) const char* OTA_DEVICE_ID ​ = "​Pro2C-RX"; ​  // Define a unique ID for each Pro2 Compact RX (used to identify unit for OTA upload)
Line 86: Line 87:
  
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-//   Dark Sky API used for 4 Days Forecast+//   OpenWeather ​API used for 12 Hours Forecast
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-// Sign up for an account at Dark Sky, change x'​s ​to your API key +// Sign up for an account at Open Weather ​to get your free API Key. 
-const String api_key ​= "xxxxxxxxxxxx";+const char* OpenWeather_api_key ​= "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
  
  
Line 95: Line 96:
 //   WU Credentials ​ //   WU Credentials ​
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-#define WUNDERGROUND_STATION_ID ​"xxxxxxxxxxxx" ​        // WU Station ID +const char* WU_STATION_ID = "XXXXXXXXX"        // WU Station ID 
-#define WUNDERGROUND_PWD ​       "​xxxxxxxxxxxx" ​        // WU Station Key (It's more secure use Station Key than your WU account passw) +const char* WU_PWD ​       "XXXXXXXXX"        // WU Station Key
-//#define WUNDERGROUND_PWD ​     "​xxxxxxxxxxxx" ​        // Weather Underground password +
 </​code>​ </​code>​
  
-Check if the LOLIN (WeMos) D1 R2 & mini is available in your list of boards (Arduino IDE Tools > Boards). If it isn't, then follow these instructions:​ [[:​programming_weatherduino_devices#​wemos_d1_r2_mini_isn_t_listed_in_my_list_of_available_boards_how_do_i_add_it|LOLIN (WeMos) D1 R2 & mini isn't listed in my list of available boards. How do I add it]]? \\+Check if the LOLIN (WeMos) D1 R2 & mini is available in your list of boards (Arduino IDE Tools > Boards). If it isn't, then follow these instructions:​ [[:​programming_weatherduino_devices#​wemos_d1_r2_mini_isn_t_listed_in_my_list_of_available_boards_how_do_i_add_it|LOLIN (WeMos) D1 R2 & mini isn't listed in my list of available boards. How do I add it]]? 
 Having the LOLIN (WeMos) D1 R2 & mini in the list of boards, select it and choose the COM port. Compile the code and upload, that's all. Having the LOLIN (WeMos) D1 R2 & mini in the list of boards, select it and choose the COM port. Compile the code and upload, that's all.
  
 <WRAP round info 75%> A note for those accustomed to using other WeatherDuino receivers: \\ Unlike all other WeatherDuino Pro2 receivers, the Pro2 Compact receiver doesn'​t have the PROGRAM / RUN switch. \\ Programming / upgrading is normally done via OTA, and in most cases it can be done without having to stop the Weather Software (tested with CumulusMX running on a RaspBerry Pi). </​WRAP>​ <WRAP round info 75%> A note for those accustomed to using other WeatherDuino receivers: \\ Unlike all other WeatherDuino Pro2 receivers, the Pro2 Compact receiver doesn'​t have the PROGRAM / RUN switch. \\ Programming / upgrading is normally done via OTA, and in most cases it can be done without having to stop the Weather Software (tested with CumulusMX running on a RaspBerry Pi). </​WRAP>​
  
-===== Settings for the 4 Day Forecast ===== 
  
-In order to use the 4 Day Forecast, you need to have a Dark Sky API key. If you don't have one, get it for free here: https://darksky.net/dev +===== Settings for the 12 Hours Forecast ===== 
-\\+ 
 +In order to use the 12 Hours Forecast, you need to have a OpenWeather ​API key. If you don't have one, get it for free here: [[https://openweathermap.org/api|https://​openweathermap.org/​api]]\\ 
 +Choose the free 5 day / 3 hour Forecast.\\
 Once you have your API key, insert it in the Credentials.h file: Once you have your API key, insert it in the Credentials.h file:
  
 <​code>​ <​code>​
 +
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-//   Dark Sky API used for 4 Days Forecast+//   OpenWeather ​API used for 12 Hours Forecast
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-// Sign up for an account at Dark Sky, change x'​s ​to your API key +// Sign up for an account at Open Weather ​to get your free API Key. 
-const String api_key ​= "xxxxxxxxxxxx";+const char* OpenWeather_api_key ​= "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; 
 </​code>​ </​code>​
  
-There is no need to set anything else to get the correct ​4 days forecast for your location.\\+There is no need to set anything else to get the correct ​twelve hours forecast for your location.\\
 Just make sure you have correctly placed your location on the Config_Option.h\\ Just make sure you have correctly placed your location on the Config_Option.h\\
  
Line 134: Line 137:
 //   ​LONGITUDE:​ 180.000 to -180.000 (negative for West)  //   ​LONGITUDE:​ 180.000 to -180.000 (negative for West) 
 // -------------------------------------------------------------------------------------- // --------------------------------------------------------------------------------------
-#define LATITUDE ​     ​39.22350 ​   // Put here your Station Latitude (up to 5 decimal places, don't use less than 4 decimal places) +#define LATITUDE ​     ​36.22350 ​   // Put here your Station Latitude (up to 5 decimal places, don't use less than 4 decimal places) 
-#define LONGITUDE ​    -8.99650 ​   // Put here your Station Longitude (up to 5 decimal places, don't use less than 4 decimal places)+#define LONGITUDE ​    -7.99650 ​   // Put here your Station Longitude (up to 5 decimal places, don't use less than 4 decimal places)
 #define ELEVATION ​    ​124 ​        // Put here your Station height above sea level in Meters (no decimal places) #define ELEVATION ​    ​124 ​        // Put here your Station height above sea level in Meters (no decimal places)
 </​code>​ </​code>​
Line 143: Line 146:
 ===== USB Programing ===== ===== USB Programing =====
  
-When you are to program a new unitor when the software upgrade ​requires updating ​the files stored on the SPIFFS memory, ​programing should be done by USB.\\ +To program a new unit or perform a software upgrade ​you need to use the USB connection to update ​the files stored on the SPIFFS memory, ​as described ​here: [[:​programming_weatherduino_devices#​lolin_wemos_d1_r2_mini_how_to_upload_files_to_the_spiffs_memory|LOLIN (WeMos) D1 R2 & mini. How to upload files to the SPIFFS memory]]? \\
-For more info about how to upload files to the SPIFFS memory see here: [[:​programming_weatherduino_devices#​lolin_wemos_d1_r2_mini_how_to_upload_files_to_the_spiffs_memory|LOLIN (WeMos) D1 R2 & mini. How to upload files to the SPIFFS memory]]? \\+
  
 ===== Over The Air (OTA) Programing ===== ===== Over The Air (OTA) Programing =====
  
-On first use, the WeatherDuino Pro2 Compact ​receivert ​should be programmed using the USB cable, after that it can be upgraded / programmed by OTA, unless the upgrade requires updating files stored on the SPIFFS memory (which can only be done by USB connection). This info is given on each software version.\\+On first use, the WeatherDuino Pro2 Compact ​receiver ​should be programmed using the USB cable. After that it can be upgraded / programmed by OTA, unless the upgrade requires updating files stored on the SPIFFS memory (which can only be done by USB connection). This info is given in each software version. 
 For checking the requirements for OTA to work, please refer to this article: [[:​programming_weatherduino_devices#​ota_programming|OTA programming]] For checking the requirements for OTA to work, please refer to this article: [[:​programming_weatherduino_devices#​ota_programming|OTA programming]]
  
Line 155: Line 158:
 ===== Initialization Sequence ===== ===== Initialization Sequence =====
  
-The first time a new receiver runs, it needs to perform a special initialization sequence.\\ +The first time a new receiver runs, it needs to perform a special initialization sequence. This initialization sequence ends after the receiver has received at least one data packet from each of the three main sensors (Temperature / Humidity, Wind and Rain). ​During ​the initialization process ​the screen will show three letters (**T-W-R**) that will change from Red to Green once the corresponding data packet has been received.
-This initialization sequence ends only after the receiver has received at least one data packet from each of the three main sensors (Temperature / Humidity, Wind and Rain).\\ +
-In the middle of the initialization, ​screen, you will see three letters (**T-W-R**) that will change from Red to Green once the corresponding data packet has been received.+
  
-From the above, it is evident that if you don't have a Transmitter unit already working and transmitting data, the receiver will stay forever in the initialization sequence.\\ +From the above, it is evident that if you don't have a Transmitter unit already working and transmitting data, the receiver will stay forever in the initialization sequence. This is why we recommend to anyone that is starting to build a WeatherDuino weather station, to always start by assembling the Transmitter unit first.
-This is why we recommend to anyone that is starting to build a WeatherDuino weather station, to always start by assembling the Transmitter unit first.+
  
-On subsequent restarts, the receiver also will remain in the initialization screen, until it receives data from the three main sensors referred above.\\ +On subsequent restarts, the receiver also will remain in the initialization screen, until it receives data from the three main sensors referred above. 
-Once the initialization sequence completes, the system is ready to communicate with your preferred weather software.\\+ 
 +Once the initialization sequence completes, the system is ready to communicate with your preferred weather software.
  
  
Line 169: Line 170:
  
 If the webserver is enabled in Config_Options,​ just open your browser and type the IP address of the receiver followed by: /weather.\\ If the webserver is enabled in Config_Options,​ just open your browser and type the IP address of the receiver followed by: /weather.\\
-Example: IP_Address/​weather"+Example: IP_Address/​weather
  
  
 ===== Navigating between data screens ===== ===== Navigating between data screens =====
  
-All Weatherduino devices equipped with a 2.8" ​TTF screen use the same navigational scheme.\\ +All Weatherduino devices equipped with a 2.8" ​TFT screen use the same navigational scheme.\\ 
-The order of each of the data screen can be defined by the user on the Config_Options\\+The order of each of the data screen can be defined by the user in the Config_Options\\
 \\ \\
 {{:​wiki:​navigation.jpg?​nolink|}} {{:​wiki:​navigation.jpg?​nolink|}}
Line 197: Line 198:
 ===== Custom Box for the WeatherDuino Pro2 Compact receiver ===== ===== Custom Box for the WeatherDuino Pro2 Compact receiver =====
  
-{{:wiki:​pro2compact_case2.jpg?400|pro2compact_case2.jpg}}{{:​wiki:​pro2compact_case.jpg?400|pro2compact_case.jpg}}+{{https://wiki.weatherduino.com//​lib/​plugins/​ckgedit/​fckeditor/​userfiles/​image/​wiki/​pro2c_newenclosure01.jpg?direct&​400x306|pro2compact_case2.jpg}}{{https://wiki.weatherduino.com//​lib/​plugins/​ckgedit/​fckeditor/​userfiles/​image/​wiki/​pro2c_newenclosure02.jpg?direct&​610x306|pro2compact_case.jpg}}
  
 A member of the WeatherDuino Team (Jarek from Poland) has designed a custom case for the WeatherDuino Pro2 Compact receiver.\\ A member of the WeatherDuino Team (Jarek from Poland) has designed a custom case for the WeatherDuino Pro2 Compact receiver.\\
-Anyone with access to a 3D printer can print it, or alternatively order it through any of the several 3D print services available online\\ +Anyone with access to a 3D printer can print it, or alternatively order it through any of the several 3D print services available online
-The required files are freely available ​here: [[https://​www.thingiverse.com/​thing:​3210539|https://​www.thingiverse.com/​thing:​3210539]]+ 
 +The required files are freely available ​at Thingiverse 
 + 
 +New Version: [[https://​www.thingiverse.com/​thing:​4161865|https://​www.thingiverse.com/​thing:​4161865]] 
 + 
 +Old Version: [[https://​www.thingiverse.com/​thing:​3210539|https://​www.thingiverse.com/​thing:​3210539]]
  
 If you don't have a 3D printer, you can order your case directly from online 3D printing services like [[https://​www.3dhubs.com|3Dhubs]]. If you don't have a 3D printer, you can order your case directly from online 3D printing services like [[https://​www.3dhubs.com|3Dhubs]].
Print/export
QR Code
QR Code pro2_compact_receiver (generated for current page)