ESP-DSC: Making it work

So my initial testing of an ESP-12E showed that it couldn’t reliably keep up with two 10K PPR encoders (40K count). I discussed this project a great deal with my fellow astronomers on CloudyNights. After doing a lot more research and testing I’ve determined that the ESP8266 even when running at 160Mhz just can’t keep up with two 10K PPR encoders.

However, I was able to verify that it works just fine with two 2500 PPR (10K count) encoders. The issue is clearly a case of the ESP8266 just cant handle large numbers of interrupts occurring at or nearly at the same time. I was able to test this in the field using my Apertura AD12 telescope and my Orion 12.5mm illuminated reticule eye piece which provides 40x magnification and a mere 0.33deg FOV in my scope.

I connected to the WiFi access point created by the ESP-DSC with my iPad and started up Sky Safari Pro, selected “Basic Encoder System” and told it to “connect”. Sky Safari correctly detected my encoders were 10,000 count, but my first test was a total bust- no matter how I moved the scope in altitude, the aiming reticule in Sky Safari kept going “up”. Turned out I had a small bug in my code! A quick re-flash of the ESP8266 and I was good to go.

I first aligned on Pollux in Gemini and then Alkaid in the Big Dipper- both were nice and high in sky and far apart which should hopefully provide good results. Due to the relatively high horizons in my backyard, significant light pollution and since this was just a test of accuracy I decided to target rather bright objects so I could easily calculate the amount of error in the system. And because I was lazy, I kept in the Orion 12.5mm with its 0.33deg FOV.

My testing method was as follows:

  1. Select a target and only looking at Sky Safari, I would point the scope
  2. Then I would look through the scope and try to find the object
  3. Once I found it, I would center it in the eye piece
  4. Then I’d look again in Sky Safari and use the aiming reticule rings to estimate the amount of error

I then went looking for Arcturus, Jupiter, Alphard, Regulus, Algieba, Procyon and Castor. To be honest, I don’t think any were in the FOV when I looked in Step #2. But considering the fact that this is a mass produced scope & mount and a tiny FOV that’s not surprising at all. The good news is that all but one object was within about 0.50FOV and the only outlier was within about 0.66FOV- which means this would be plenty good enough to place the object in your field of view for most scopes with your typical wide angle eye piece! And again, that’s with a mass produced dob with a particle board mount! Of course in the real world I’d be using something like my Explore Scientific 30mm EP which has a FOV of 1.62 deg in my scope when looking for objects- so the 0.66 deg accuracy would give plenty of buffer.

I also designed and printed a nice little case for the PCB:

Anyways, I’m happy to say that ESP-DSC v1.0 finally works! My next step is to design a v2.0 board which can support higher resolution encoders.