MySQM Pro Build (beta)

This article explains how to build a MySQMPro, a project by Robert Brown that he kindly published on GitHub for free. Thank you so much, Robert, for letting all this info free to the public. The original project can be found here.

I have almost any knowlege about electronics, so I basically followed Robert’s instructions, whith very minor modifications to be adapted to my needs.

The goal of this project was to be able to measure the darkness of sky, but also to use the extra functionalities of the original project to be used as a «safety monitor» connected to Sequence Generator Pro, to abort the sequence and send me an alarm, mainly in case of rain. Apart of this, the external design should be as small as possible.

The following image shows the result:

This build has the following functionalities:

  1. SQM
  2. Sky State: Clear – Partly Cloudy – Cloudy
  3. Rain State: Yes/No
  4. Ambient Temperature
  5. Humidity
  6. Pressure
  7. USB Connection for power and/or data transfer
  8. Status Screen


As told, this build is based on the Robert Brown project. There are different ways to build the electronics. One is to buy a dedicated PCB from Aisler, but I chose to make the PCB from a stripboard, following the above schematic and layout:

This electronics need the following main components:

  1. Arduino Nano: A very small, and cheap, Arduino microcontroller.
  2. TSL237: The main light sensor, same that uses the Unihedron SQM Meter. It is important to note that this DIY project doesn’t has the same accuracy as the commercial solutions.
  3. LDR: Lux sensor used to determine the amount of exposure taken by the TSL237.
  4. TSL2561: Another light sensor. As far as I know, this specific build could avoid it, but as I’m not expert on electronics, I preferred to follow the original instructions from Robert Brown.
  5. MLX90614: An IR sensor to measure the sky temperature and calculate the presence of clouds.
  6. BME280: A multi sensor that reads temperature, humidity, and barometric pressure.
  7. Rain Sensor: A sensor that detects water droplets, for rain detection.
  8. OLED 0.96″: A small screen to display the measurements taken by the different sensors.

This components are really cheap, being able to buy them for about 20-25€.


The GitHub project comes with its corresponding firmware. Once the components are wired, it can be uploaded to the Arduino to test the functionalities of the different sensors. In addition there are some parameters that should be adjusted to achieve accurate measurements. Instructions to do this tasks can be found on the documentation of the project.

I also made some minor modifications on the code, mainly to change the way the data is displayed on the screen.


I designed a case for the electronics, looking for minimal volume, in order to make this device as portable as possible.

Light sensors, as well as the IR sensor and the Rain sensor have to be placed upwards, while the BME280 (Temperature, humidity, pressure) is better to be placed on the side of the case, to avoid dew to fall inside it. The display was placed as far as possible from the light sensors in order to avoid stray light to reach them.

The TSL237 needs a special treatment, as is the ultimate responsible to deliver the SQM measurements. It needs to receive light from a lens, through a IR cut filter, and it is very important to avoid any stray light. To achive this, a special enclosure was designed.

Components for the TSL237 enclosure

The holder 1 keeps the lens protected form scratches, it has a shield that allows a 20º FOV view from the lens and also keeps it centered. The lens was modified to allow the sensor to be in focus. The holder 2 and 3 creates an enclosure for the TSL237 and the filter is placed in front of it.

The sensor surroundings were painted with black, again to avoid stray light.

Then it was placed between the holders.

TSL237 placement on holder2. (The sensor was not painted in black yet in this image)
TSL237 placement on holder2. Front View

The external case was 3D printed. As it is a beta construction, no specific supports were designed for the components and they were simply glued to the case.

Once all the components are attached, the case can be closed and the device is finished.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de

Estás comentando usando tu cuenta de Salir /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s