Working on the sensor package

I’ve been working on the sensor package for my sky meter and have some a test bed up and running.As usual these things are bundle of wires on a breadboard until they get properly designed into a case and circuit board.

Breadboard with sensor package prototype

With a bit of micropython programming, I’ve got all the sensors to play nice together.

Using the dev enviroment that I have setup (Thonny running on a Pi4)

I’ve got the following information to show up.

  • Date & Time in UTC (From GPS)
  • Number of satalites (From GPS)
  • Latitude, Longitude and Altitude (From GPS)
  • Temperature, Pressure (hPa), Humidity, Dew point (From BME280)
  • Lux (from VEML7700)
  • SQM reading (from tsl2591)
  • Sky Temperature, Ambient Temp (from GY-906)
  • Power Voltage, Battery %, Pico temperature (from the Pico itself)

Currently, I’m using a standard Pico H, to do this, but have a Pico W, which means that Wifi is available. In addition, in the jumble of wires, there is an SD Card reader as well, so it’s possible to save all the data off to SD Card. I’ve still got to write that part of the software.

There’s also a .96″ display, which I’ve added, this will give the the option of being able to check on the device whilst it’s running, I’m going to add some buttons to this, so that I can make some basic adjustments on the fly without needing to bring the device in to make any adjustments. I’ve got options here of being able to use the SD card to store some basic settings, such as calibration info for the SQM meter (so that I can adjust this without needing to hook up to a computer and recompile all the time)

It would also be nice to be able to have display the sensor readings, on screen, and flip between screens that will let me see sensor details, SD Card details or power details. Of course being able to blank the screen when I’m not actively using it. Not to mention the aforementioned settings adjustments.

The sky temperature works. It’s currently clear outside, and the IR sensor is reading -13. Considering that the breadboard was sat on the window ledge at the time is great news. This proves that it will work.

However, as the GY-906 has a 90 degreed field of view, this results in it not being as sensetive as it could be. I’ve ordered another version of this, which has a narrow field of view, which should be better suited for measuring sky temperature). I think it’ll be good to have both the wide angle and narrow angle readings, as this can help to give warning of broken clouds/obstructed view and another reading for conditions overhead. This does mean that I may need to make use of the Pico’s second I2C interface.

Power for this package is going to be provided by a Lithium battery, and a Lipo Shim that I got from Pimoroni. This will mean that I can have a power button, and can charge the battery using the Pico’s USB port. It will also mean that should there be a power cut, the Pico can detect this scenario. I might record the charging state in the data as well.