Recent Posts

Pages: [1] 2 3 ... 10
SQM-LU / Controlling SQM-LU with an Arduino/compatible
« Last post by admin on March 24, 2019, 10:59:24 pm »
Here is an example of connecting the SQM-LU (or SQM-LU-DL) to an Arduino compatible single board computer.

The Arduino compatible computer I used was the Teensy 3.2 which is availabke for about $19.80USD.

A USB host interface is required that the SQM-LU can be plugged into. I used the USB Host Shield V2.0 mini for about $4.85USD available from here:

The USB Host shield 2.0 is documented here:

The software library is located here:

Here is the schematic (PDF):

Here is the wiring diagram:

This is the code that I used:
Code: [Select]
#include <cdcftdi.h>
#include <usbhub.h>

#include "pgmstrings.h"

// Satisfy the IDE, which needs to see the include statment in the ino too.
#ifdef dobogusinclude
#include <spi4teensy3.h>
#include <SPI.h>

class FTDIAsync : public FTDIAsyncOper
    uint8_t OnInit(FTDI *pftdi);

uint8_t FTDIAsync::OnInit(FTDI *pftdi)
    uint8_t rcode = 0;

    rcode = pftdi->SetBaudRate(115200);

    if (rcode)
        ErrorMessage<uint8_t>(PSTR("SetBaudRate"), rcode);
        return rcode;
    rcode = pftdi->SetFlowControl(FTDI_SIO_DISABLE_FLOW_CTRL);

    if (rcode)
        ErrorMessage<uint8_t>(PSTR("SetFlowControl"), rcode);

    return rcode;

USB              Usb;
//USBHub         Hub(&Usb);
FTDIAsync        FtdiAsync;
FTDI             Ftdi(&Usb, &FtdiAsync);

void setup() {
  Serial.begin( 115200 );
  #if !defined(__MIPSEL__)
    while (!Serial); // Wait for serial port to connect - used on Leonardo, Teensy and other boards with built-in USB CDC serial connection

  Serial.println("USB Host starting up...");

  if (Usb.Init() == -1)
      Serial.println("OSC did not start.");
void loop()

    if( Usb.getUsbTaskState() == USB_STATE_RUNNING ) {
        uint8_t  rcode;
        char strbuf[] = "rx\r";
        rcode = Ftdi.SndData(strlen(strbuf), (uint8_t*)strbuf);
        if (rcode){
                  ErrorMessage<uint8_t>(PSTR("SndData"), rcode);
        delay(1000); //Wait a while for SQM to respond.
        uint8_t  buf[64];
        for (uint8_t i=0; i<64; i++)
            buf[i] = 0;
        uint16_t rcvd = 64;
        rcode = Ftdi.RcvData(&rcvd, buf);
              if (rcode && rcode != hrNAK)
            ErrorMessage<uint8_t>(PSTR("Ret"), rcode);
              if (rcvd > 2)

This is the output on the Arduino serial monitor:
Code: [Select]
USB Host starting up...
r, 09.37m,0000015912Hz,0000000000c,0000000.000s, 020.6C,D
r, 09.37m,0000015909Hz,0000000000c,0000000.000s, 020.6C,D
r, 09.37m,0000015909Hz,0000000000c,0000000.000s, 020.6C,D
r, 09.37m,0000015909Hz,0000000000c,0000000.000s, 020.6C,D

Some interesting troubleshooting notes are here:

General Discussion / Calibrating camera to produce SQM results
« Last post by admin on March 08, 2019, 01:28:18 am »
Here is a paper by Zoltán KOLLÁTH, and Anita DÖMÉNY  which provided detailed steps to calibrate an all sky image from a camera to produce mag/arcsec^2, similar to SQM meters:

An example image produced by Andrew Cool from Yadlamalka Australia
General Discussion / Re: 2019 Lunar eclipse
« Last post by admin on January 25, 2019, 03:23:50 pm »
More detailed setup notes are in this PDF including sky brightness plots made with the new UDM GoTo control.
General Discussion / 2019 Lunar eclipse
« Last post by admin on January 22, 2019, 04:03:40 pm »
Here is a pretty neat SQM plot of the recent lunar eclipse recorded by Michael McKeag out in the desert east of Borrego Springs California:

Click for closeup.

This plot was manually annotated from a a UDM plot.
SQM-LU / SQMDroid for SQM-LU
« Last post by admin on August 04, 2018, 09:55:10 pm »
Thomas Hänel has written SQMDroid, an Android OS program that reads data from the SQM-LU meter. Thomas and his father Andreas presented SQMDroid and their findings at ALAN 2016 in Cluj, PDF here

The mobile Android device must be OTG (On The Go) compatible, and have an (well calibrated) orientation sensor to be used in the vector or NixNox mode.

The software is as-is, and it must be installed separately (not Google Play store), apk here.

SQMDroid has been used quite often with different Android smartphones, tablets (mainly Samsung) without problems.

A kind person has written an ASCOM driver which should work for the SQM-LU, SQM-LR, and SQM-LE. It is available from here:
Connected meters (SQM-LE/LU/LR/DL) / Re: GPS integration
« Last post by admin on May 08, 2018, 07:43:12 pm »
Unihedron sells a bracket for mounting the SQM connected metes to a car window for travelling readings:

As well, the Unihedron Device Manager software (UDM) now comes with a tool that converts the .dat (data-logging files) to .kml files used by GoogleEarth so that the following map image (with legend) can be created:

Connected meters (SQM-LE/LU/LR/DL) / Re: GPS integration
« Last post by admin on April 12, 2018, 05:38:43 pm »
I've been informed that there is a Bluetooth enabled GPS (Dual XGPS160) which also works well on a Mac with UDM.

Here is a link to that the Dual XGPS160:

Connected meters (SQM-LE/LU/LR/DL) / Re: GPS integration
« Last post by admin on March 05, 2018, 06:04:10 pm »
Another GPS mapping system:
  "Road Runner"
  Report by Daniel Rosa Infantes of Sociedad Malagueña de Astronomía, 2011:
Connected meters (SQM-LE/LU/LR/DL) / Re: SQM-LE Multiple connections
« Last post by admin on February 22, 2018, 03:12:00 pm »
Is it possible to have multiple connections of UDM to a SQL-LE?

It is possible, but the SQM-LE can only handle one connection request at a time or there will be no answer to requests. This would work if UDM was just used to take occasional manual readings.

What are the gotchas of doing this?

If you are doing continuous logging on both UDMs connected to one SQM-LE, then there will likely be times when the SQM-LE can only answer one UDM and data will be lost.

If you want this for the purpose of a reliability in case one computer crashes, then you might be able to set a smaller trigger frequency at prime number timings, for example, one UDM set to trigger every 61 seconds, and the other every 67 seconds.  There would be some overlap, but there would still be lots of readings to work with.
Pages: [1] 2 3 ... 10