IoT Kits

These assembly and programming instructions are for IoT Kits© purchased after May 2018. Legacy instructions are at http://w4krl.com/solar-powered-weather-station/

Follow the basic steps in this order:

  1. Prepare the Arduino IDE software. This includes adding the ESP8266 core.
  2. Open a ThingSpeak account.
  3. Download the IoT Kits firmware for your kit.
  4. Upload the firmware to the D1 Mini microcontroller that is included in your weather station kit. The firmware is already installed in the APRS Remote Display Kit so do not upload any software to it.
  5. Follow the Quick Assembly instructions for your kit. Use a good soldering iron and good quality solder. Inspect your work.
  6. Enjoy using your kit.

Prepare the Arduino IDE

  1. Download and install the Arduino Integrated Development Environment (IDE) on your PC. The latest version is 1.8.5 at www.arduino.cc/en/Main/Software. They will ask for a contribution but you can select “Just download”.
  2. Start the Arduino IDE and open File | Preferences. Check “Display Line Numbers” and “Enable Code Folding”.
  3. Add the ESP8266 core with the instructions in steps 1 & 2 below. For reference see https://github.com/esp8266/Arduino Watch this video: https://www.youtube.com/watch?v=7St5Ra21Cpw
    1. Enter http://arduino.esp8266.com/stable/package_esp8266com_index.json into “Additional Board Manager URLs” field. You can copy from this web page and paste into the IDE to avoid typing errors. Close the Preferences dialog.
    2. In the IDE, open Boards Manager from the Tools | Board menu and install esp8266 platform. You can find it quickly by typing ESP8266 in the search field. Click Close when done.
  4. From the Tools | Board menu, select WeMos D1 R2 & mini as you microprocessor.
  5. Plug in a Micro USB cable to the D1 Mini and your computer.  It should install a COM port. Set menu item Tools | Port to the COM port of your D1 Mini.
  6. Test the IDE by running the Blink example:
    1. Open menu item File | Examples. Look in the section “Examples for WeMos D1 R2 and mini” Find ESP8266 then Blink. Open the Blink sketch.
    2. Upload the sketch to your D1 Mini by clicking the Upload button or Control + U.
    3. The LED on the D1 Mini will flash every two seconds.
  7. Add the following libraries to the IDE using instructions at https://www.arduino.cc/en/guide/libraries:
    1. BME280 by Tyler Glenn – use Sketch | Include Library | Manage Libraries… Search for BME280
    2. BH1750 – download from  https://github.com/claws/BH1750 Install with Sketch | Include Library | Add .ZIP Library…

Open a ThingSpeak account

  1. Open thingspeak.com in your browser.
  2. Click “Sign Up”.
  3. You must first create a MathWorks account. Follow the instructions on the web page.
  4. Click Create Channel.
  5. Choose a channel name and description.
  6. Enter field definitions as shown in the table below and check the box beside each field.
  7. Check Public.
  8. Elevation = your elevation in meters.
  9. Check Show Location.
  10. Latitude = your latitude in decimal degrees. Positive for north.
  11. Longitude = your longitude in decimal degrees. Negative for west.
  12. Check Show Status.
  13. Click on Save Channel.
  14. Click on the API Keys tab and record your API Keys and ChanneID.
ThingSpeak Field Definitions
Field 1Temperature °C
Field 2Humidity
Field 3Station Pressure
Field 4Sea Level Pressure
Field 5Light Intensity
Field 6Cell Voltage
Field 7RSSI
Field 8Temperature °F

Download IoT Kits© Firmware

There are two versions of the firmware depending on the features you want and whether you are a licensed amateur radio operator.

For Non-Licensed Users

This is also for license holders who do not want to use the APRS features. This firmware sends your weather information to a ThingSpeak account. See instructions for opening a free ThingSpeak account.

Firmware DownloadD1M-WX1_IoT_Delta2018-06-05

For Licensed Amateur Radio Operators

This version sends your weather information to your ThingSpeak account and to APRS-IS. You must obtain an APRS passcode at https://apps.magicbug.co.uk/passcode/ . You must also determine your geographic location in APRS format for latitude and longitude.

Firmware Download: D1M-WX1_IoT-APRS_Delta20180524

Use Windows File Explorer to unzip this file. It contains a folder D1M-WX1_IoT-APRS_Delta. Copy the folder to your Arduino folder. This is the located in your Documents folder.

In the Arduino IDE, open the D1M-WX1_IoT-APRS_Delta sketch. It has two tabs: D1M-WX1_IoT-APRS_Delta, and config.h. Click on the config.h tab and enter your station’s information. The config.h file contains instructions for doing this.

You may now upload the firmware to the D1 Mini but it will not operate until the weather station is assembled.

Quick Assembly Instructions

D1M-WX1 Solar Powered Weather Station

Single Board Kit

  1.  Assemble the board starting with the lowest components and work up: Resistor, 2 slide switches, socket for the PANEL, headers for CELL (2p), I2C (4p), LOCAL (2p), TP4056 (4 x 1p), female sockets for the D1 Mini, BH-1750, and BME280.
  2. Solder the headers to the underside of the BME280. The pins should be on the opposite side of the board with the small silver can (the sensor).
  3. Solder the headers to the underside of the BH1750. The pins should be on the opposite side of the board with the text BH1750.
  4. Solder the headers to the underside of the D1 Mini. The pins should be on the opposite side of the board with the small silver can labeled WiFi.
  5. Place the breakout boards in their respective sockets. Solder the TP4056 to the header pins (no socket). Place the shorting shunt on the LOCAL pins.
  6. Install screws and spacers at the four corners.
  7. Set switch SW1 to OFF, SW2 to PROG.
  8. Solder the leads from the XH-2P connector to the back of the solar panel. OBSERVE THE POLARITY: RED to +, BLACK to -.
  9. Insert the LiPo cell connector onto the CELL pins. NOTE WELL!!! OBSERVE THE POLARITY!!! Red is positive (+), black is negative (unmarked).
  10. Insert a mini USB cable into the TP4056 connector. The orange LED should light to indicate the cell is being charged. The blue LED will light when charged. Turn switch SW1 to ON.
  11. Remove the Mini USB cable after the cell is charged. Connect it to the D1 Mini socket.
  12. Open the D1M-WX1 weather station firmware in the Arduino IDE. Set switch SW2 to PROG. Upload the firmware to the D1 Mini. Set SW2 to RUN.
  13. Open the Serial Monitor. You should see information flowing from the weather station. It is now ready to install.
Single Board Weather Station

Single Board Weather Station

D1S-WX1 Solar Powered Weather Station

Stacked Shield Version

Use the photos as guides. The orientation of the breakout boards and LiPo cell connections are critically important.

Use good quality small gauge rosin-core solder. Keep the iron tip clean and tinned.

Solar Charger Shield D1S-LiSo

  1. Refer to the photo. <To Be Added> Assemble the board starting with the lowest components and working up.
    1. Resistor R1
    2. Slide switch
    3. XH-2P Socket for PANEL. Observe orientation.
    4. Male header for CELL (2p). Short tails go through the board.
    5. Headers pins for TP4056 (4 x 1p). Place short tails through the board.
    6. Female sockets (2) for D1 Mini.
  2. Solder the TP4056 to the header pins (no socket). Observe the orientation of the Micro USB connector.
  3. Solder one pin of each of the 8-pin female headers (2) for the D1 Mini shield. Square them up if needed and solder the remaining points.
  4. Solder the leads from the XH-2P connector to the back of the solar panel. OBSERVE THE POLARITY: RED to +, BLACK to -.
  5. Set switch RUN.
  6. Insert the LiPo cell connector onto the CELL pins. NOTE WELL!!! OBSERVE THE POLARITY!!! Red is positive (+), black is negative (unmarked).

D1S-WX1 Sensor Shield

  1. Insert the 4-pin female header at the BME280 location. Solder one pin. Square up the header if needed and solder the remaining points.
  2. Insert the 5-pin female header at the BH1750 location. Solder one pin. Square up the header if needed and solder the remaining points.
  3. Set the BME280 on the 4-pin male header with the sensor pointing up. Solder one pin. Square up the header if needed. Solder the remaining pins.
  4. Set the BH1750 on the 5-pin male header with the sensor pointing up. Solder one pin. Square up the header if needed. Solder the remaining pins.
  5. Set the board on two males headers. Solder one pin of each on the top side of the board. Square up if needed and solder the remaining pins.
  6. Insert the BME280 and BH1750 in the sockets.

D1 Mini Assembly

  1. Place the pass-through connectors on the headers of the sensor shield to keep the connectors square.
  2. Solder the long tails of the pass-through headers (2) to the underside of the D1 Mini. Refer to the photo for the orientation of the headers.

Final Assembly

  1. Place the D1 Mini onto the charger shield so that both Mini USB connectors are on the same side.
  2. Place the sensor shield onto the D1 Mini with the BH1750 above the Mini USB connector of the D1 Mini.
  3. Set the switch on the charger board to the position opposite RUN. Connect a Micro USB cable between your computer and the D1 Mini. Upload either the IoT or IoT-APRS weather station firmware.
  4. Solder the leads from the XH-2P connector to the back of the solar panel. OBSERVE THE POLARITY: RED to +, BLACK to -.
  5. Insert the LiPo cell connector onto the CELL pins. NOTE WELL!!! OBSERVE THE POLARITY!!! Red is positive (+), black is negative (unmarked).
  6. Set the switch to RUN.

APRS Remote Display

The remote display is a companion kit to the APRS weather station. It will receive weather and telemetry information from your weather station over the APRS-IS system. A version using an IoT service is in development for people not holding an Amateur Radio license.

Assemble the Kit:

  1. Press the female headers with the short pins onto the pins of the display then set the D1 Mini onto the short header pins. This way everything will be nice and square.
  2. Make sure the silver 8266 “can” is on the side that faces the underside of the display.
  3. Solder the pads on the reverse side of the D1 Mini to the headers.
  4. Cut the wire in half and skin the ends. Bend hooks in one end of each wire and solder the hooked ends to the pushbutton terminals. Solder the other ends to the GND and D1 pads on the underside of the TFT display as shown in the photo.
  5. Make sure the D1 Mini is in the correct orientation for the display: RST to RST, TX to TX, etc.
  6. Supply power to the display from a common USB adapter and Mini USB cable.
  7. You can put the display inside the box supplied with the kit. Cut a hole for the Mini USB connector with an Exacto knife and drill a 5/16-inch hole for the pushbutton. Make sure there is space under the display and beside the D1 Mini to mount the button. Wrap the button terminals with a bit of electrical tape to prevent shorting with the display or D1 Mini.
  8. Micahel’s carries a small wooden box with a glass window in the lid. It would make a nice enclosure for the kit.

Pushbutton Connections

Headers set on display

D1 Mini ready to solder

Configuring your APRS Remote Display Kit:

  1. The firmware is preinstalled. All you need do is send it your weather station information and logon credentials for your Wi-Fi.
  2. You must be near a 2.4 GHz Wi-Fi router and know the SSID and password.
  3. You must have a Wi-Fi capable laptop or smartphone.
  4. Watch this video before entering the following data: https://youtu.be/CUsSSeeXmW4 IMPORTANT CHANGE: Use ET instead of EST. The device recognizes ET, CT, MT, PT, AKT, and HT.
  5. Since you have a working weather station, use may use your station’s SSID or you can use my station as suggested W4KRL-15. You will need to enter the following information:
    1. Your Wi-Fi SSID
    2. Your Wi-Fi password
    3. Your callsign with an unused SSID from 1 to 16. For example W4KRL-15
    4. Your APRS-IS passcode. https://apps.magicbug.co.uk/passcode/
    5. The callsign of your IoT Kits weather station: W4KRL-15
    6. Enter the filter for your station: b/W4KRL-*
    7. Save the configuration.
  6. The screen changes every five seconds. The weather and telemetry will appear within 5 minutes.
  7. If you have an APRS-enabled transmitter you can send a short text message to the kit using the unit’s SSID. The message will stay on the display until you press the button.

If the unit cannot connect to Wi-Fi it will go into configure mode as indicated by rapidly flashing LED on the D1 Mini.

If you want to change the time zone or other parameters, you can force configuration mode by pressing the D1 Mini reset button twice within two seconds.

Firmware Download: D1S-Remote-Display2018-06-05

Permanent link to this article: https://w4krl.com/iot-kits/