Sunday, December 29, 2019

Arduino Pro-Mini with 900MHz LoRa on board for environmental monitoring

Recently I started playing with LoRa modules for sending telemetry around. Last time I purchased a 433Mhz module and wired it up to an Arduino Nano Pro board but now I've found a board that has both the Arduino and the radio module on the same board. This is the 900Mhz version.


I'm using a temperature, humidity and air pressure sensor that is designed for the M5Stack system, but is easy to use on its own. The transmit side samples the environment and sends a packet with plain text containing the measurements.


One problem I ran in to was that the transmit side would re-boot when transmitting - the USB power isn't enough to handle the current on transmit. The solution is to lower the transmit power or attach a LiPo battery to the board. I turned the power down to 2dBm (from the default of 17).

Even on this very low power the packets can be reliably be received around my home block.


Here it is in action.


The code is simple and as always, my apologies for how it gets mangled by Blogger.

#include "DHT12.h"
//#include //The DHT12 uses I2C comunication.
#include "Adafruit_Sensor.h"
#include "Adafruit_BMP280.h"
#include "SPI.h"
#include "LoRa.h"

DHT12 dht12; //Preset scale CELSIUS and ID 0x5c.
Adafruit_BMP280 bme;

void setup() {
  // initialize both serial ports:
  Serial.begin(9600);
  Wire.begin();
 
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  Serial.println("Setting up LoRa...");
    if (!LoRa.begin(915E6)) {
      Serial.println("Starting LoRa failed!");
      while (1);
    }
    LoRa.setTxPower(2);
    Serial.println("LoRa ok.");
 
    Serial.println(F("ENV Unit(DHT12 and BMP280) test..."));

    while (!bme.begin(0x76)){
      Serial.println("Could not find a valid BMP280 sensor, check wiring!");
    }
    Serial.println("Env sensor ok");
}

void loop() {
    float tmp = dht12.readTemperature();
    float hum = dht12.readHumidity();
    float pressure = bme.readPressure();

    Serial.println("Starting LoRa packet");
    LoRa.beginPacket();
    LoRa.print("Temperature: ");
    LoRa.println(tmp);
    LoRa.print("Humidity:");
    LoRa.println(hum);
    LoRa.print("Pressure:");
    LoRa.println(pressure);
    LoRa.endPacket();
 
    Serial.print("Temperature:");
    Serial.println(tmp);
    Serial.print("Humidity:");
    Serial.println(hum);
    Serial.print("Pressure:");
    Serial.println(pressure);
    Serial.println();
    delay(1000);
}

Australian bush fires mapped

As you might have read, (particularly for international readers), the bush fires this summer in Australia are unprecedented. At the time of writing, more than 1,000 homes have been lost.

Waking in the morning either smelling wood smoke, or seeing the sun obscured by smoke makes me head to one of the maps showing where the fires are.

The most popular source is the Rural Fire Service's Fires Near Me site and app which looks like this.


There are other sites with good information such as the ArcGIS fire map which shows hot spots. This is interesting because the CSIRO is using infra-red data from satellites to map hotspots (which may or may not be from fires).


GeoScience Australia also has Sentinel Hotspots map.


To see smoke, we can use the Bureau of Meteorology's Sat-View site. This works even better if you play the animation.


Another good one is zoom earth.



When the smoke is really bad it turns up on the BOM rain radar site.


Here's some tourists taking a selfie in front of the Sydney Opera House.

(It's there very faintly).

Friday, December 13, 2019

Australia - still calling 80 years later

This morning on ABC Radio National, Geraldine Doogue's Saturday Extra featured a fascinating panel discussion about what became Radio Australia - which recently celebrated its 80th birthday.


Photo by Mary Anne Waldren.

The panel includes:

Jemima Garrett, journalist and co-founder of Supporters of Australian Broadcasting in Asia and the Pacific

Ian McIntosh, veteran broadcast journalist, news executive and media consultant

David Hua, head of International Strategy at the ABC

Herve Lemahieu, Director of the Asian Power and Diplomacy Programme, Lowy Institute.

Kean Wong, Journalist and author (calling in from Malaysia)

You can listen here.

Saturday, December 07, 2019

WSPR Watch is back

There's a new version in the App Store that corrects the problem we've been having. I'm now working on improvements to the handling of data from PSKReporter and the Reverse Beacon Network.

WSPRnet has been a bit unreliable lately but the latest version of WSPRwatch will now correctly show if the network request times out. I set the timeout to 30 seconds.

Thanks to everyone who wrote in via the app with feedback and suggestions.


Thursday, December 05, 2019

WSPR Watch is down

My free iOS app, WSPR Watch, is a convenient way to display data from WSPRnet.org and a few other ham radio sites. The app stopped working last night probably because something changed in the way the site works. I emulate a browser and for some reason this has stopped working.

I'm sorry about this, it was always on the cards. I'm working on a fix and will get it out as soon as I figure out this little puzzle.