Jump to content

  •  

CNers have asked about a donation box for Cloudy Nights over the years, so here you go. Donation is not required by any means, so please enjoy your stay.

Photo

Homebrew Celestron-compatible GPS

  • Please log in to reply
110 replies to this topic

#1 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 21 February 2017 - 07:09 PM

The GPS unit inside my CPC mount looks simple enough: a GPS receiver plus an auxiliary board containing what looks like a microcontroller, presumably to translate the NMEA output from the GPS to the packet format the mount expects.

 

The external GPS device for the CGEM mount also looks equally simple.

 

This got me thinking: can a Celestron-compatible GPS be constructed using readily-available parts? A GPS board such as the uBlox NEO-6M can be bought from Amazon for about $18. An Arduino nano clone costs about $5.

 

Has anyone done this already?



#2 syscore

syscore

    Aurora

  • *****
  • Posts: 4,711
  • Joined: 07 Sep 2015
  • Loc: Space Coast, Florida

Posted 21 February 2017 - 07:17 PM

This applies to the GEM mounts...

 

Celestron (like other mounts as well) uses a distributed architecture where each device listens to a common serial (TTL Level) bus and replies to commands that contain the device's address (I forget the address of the GPS). In any event, that is all you have to simulate. Listen to the bus, when the device address is the GPS, interpret the command (a polling request for GPS coordinates no doubt) and respond appropriately.

 

Btw, that is why these devices, including the hand controller, can be plugged into any HC or AUX port. The RA and DEC motor controllers are also on the same bus, with different addresses. All devices hear the traffic for all of the other devices.

 

I suspect that the CPC mount uses the same design, where the GPS board is a separate device, and connected to the TTL serial bus.



#3 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 22 February 2017 - 04:39 AM

The idea is definitely nice :)

 

But what kind of bus is there? I2C, Can? I2C can be used directly from Arduino, for Can special adapter imho needed.

 

And TTL logic can be 3.3 or 5V also.

 

If closeup of the PCB is available, it may be easier to say, whats exactly used.


Edited by DVE, 22 February 2017 - 02:11 PM.


#4 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 22 February 2017 - 04:58 PM

I found a document that details how the devices are connected to the bus. There's no I2C involved; it's just simple TTL serial. Here's the document: http://www.paquettef...Commands_10.pdf

 

Basically, there are up to 4 devices listening to a common TX bus: the two AUX ports, the hand controller, and the PC port. All devices listen for packets with their destination address in it. Each device that needs to transmit data back to the CPU has a dedicated RX line, which is handy because it avoids contention on the bus.

 

The document I linked has details about the packet format.

 

Looks like a nifty project to work on. I already have GPS modules for the CPC and CGEM, but I think it would be a nice addition to the community. Someone with a little soldering and programming know-how can make a compatible GPS to replace one that may have broken in their mount.

 

If I have time, I'd like to do the same for the Meade LX200GPS. The GPS module it uses is awful.



#5 syscore

syscore

    Aurora

  • *****
  • Posts: 4,711
  • Joined: 07 Sep 2015
  • Loc: Space Coast, Florida

Posted 22 February 2017 - 05:39 PM

Btw, the PC port is RS-232, not TTL. At least on the CGE Pro (and CGE). Still the same protocol. It allows a PC to connect directly to the bus, although the PC would need to be running software that communicates at the bus level. Such as NexRemote (which emulates a hand controller) and the motor controller update utility (MCUpdate). The PC port might be a good port to experiment with, since you could do all the prototyping on the PC.



#6 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 22 February 2017 - 06:58 PM

The PC port might be a good port to experiment with, since you could do all the prototyping on the PC.

I was wondering about that. By the time the data gets to the PC serial port, has the other traffic on the bus been stripped out?



#7 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 22 February 2017 - 07:53 PM

I found a document that details how the devices are connected to the bus. There's no I2C involved; it's just simple TTL serial. Here's the document: http://www.paquettef...Commands_10.pdf

 

Cool info, thanks.

In this topic http://www.cloudynig...-serial-to-ttl/ was written that standard 5V TTL is used. So, any Arduino board can be attached.

 

Edit: this article http://www.instructa...er/step2/step2/ describes that rs232 but not ttl are using, so the convertor chip may be needed.

 

Thing, I don't understand yet: for instance, there is a command GPS_GET_LAT described. But there is no command GPS_SET_LAT.

And btw, gps itself is not so important, if user is not travelling to thousands of miles. But even adding real-time module to the scope will be very useful (and the cost is 10$ on Ebay for Arduino + DS1307 + clock battery).


Edited by DVE, 22 February 2017 - 08:17 PM.


#8 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 22 February 2017 - 08:02 PM

I've found more commands here: http://www.celestron...tarcommprot.pdf

 

There are set time and location commands also. Looks like, can be easy implemented on any Arduino board.

 

Cool info about connection also: http://www.cloudynig...ooth-interface/


Edited by DVE, 22 February 2017 - 08:38 PM.


#9 syscore

syscore

    Aurora

  • *****
  • Posts: 4,711
  • Joined: 07 Sep 2015
  • Loc: Space Coast, Florida

Posted 22 February 2017 - 08:09 PM

 

The PC port might be a good port to experiment with, since you could do all the prototyping on the PC.

I was wondering about that. By the time the data gets to the PC serial port, has the other traffic on the bus been stripped out?

 

No, because if it were, then NexRemote wouldn't work. It is equivalent (at the emulated firmware level) to an actual HC. And it would need to see all the traffic in order to communicate with the other devices.

 

And I have sniffed it before.


Edited by syscore, 22 February 2017 - 08:09 PM.


#10 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 23 February 2017 - 03:27 AM

How standard Celestron GPS is working?

If it shares the same port as hand control - maybe HC ask with the GPS_GET_LAT/GPS_GET_LON message, and cpu in gps module answer for it? 



#11 syscore

syscore

    Aurora

  • *****
  • Posts: 4,711
  • Joined: 07 Sep 2015
  • Loc: Space Coast, Florida

Posted 23 February 2017 - 10:21 AM

Yes, that is basically it. The HC sends out the GET command, and the GPS answers. It also uses the GPS time to set the real time clock at the beginning as well. In fact, that was my reason for buying it, so that I didn't have to set the time.


Edited by syscore, 23 February 2017 - 10:22 AM.


#12 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 23 February 2017 - 11:02 AM

Thanks.

 

I have a Celestron WiFi module and its a pity that it cannot do the same - send coordinates and time to HC. Maybe in a hardware it can (looks like its some kind of ip/serial bridge), but no software for it.



#13 Noah4x4

Noah4x4

    Soyuz

  • *****
  • Posts: 3,611
  • Joined: 07 Apr 2016
  • Loc: Colchester UK

Posted 23 February 2017 - 11:53 AM

 

If using WiFi with SkyPortal or SkySafari surely the APP will supply location, date, time etc?  

 

I believe it is only Windows APPs that don't? When I am using Starsense for Auto-alignment it works, so surely Skyxxxxxx also does for a SkyAlign or Manual Align?

 

Admittedly, if a WiFi only tablet then 'location' must be manually prior set in SkySafari, but it will be remembered (just like with HC); but unless the  tablet's  battery has died, it will remember real time date/time from the last time it connected to the Internet. With these two APPs and WiFi, surely GPS is redundant? 

 

But I believe you can use SkySafari for alignment then a Windows APP for control if the latter is connected via the HC. But SkySafari is great (but not a Windows APP).


Edited by Noah4x4, 23 February 2017 - 11:54 AM.


#14 DVE

DVE

    Sputnik

  • -----
  • Posts: 33
  • Joined: 22 Oct 2016
  • Loc: Amsterdam, Netherlands

Posted 23 February 2017 - 01:01 PM

Yes, when you're using Android app, you don't need to enter time and place - it taking automatically from the app. WiFi-module works like Hand Control, but the pity is, that both cannot be used at the same time.

 

I am not sure that WIndows software for Celestron WiFi is available (but didn't check it a lot though).


Edited by DVE, 23 February 2017 - 01:04 PM.


#15 Geo.

Geo.

    Vendor - Nexstar Parts

  • *****
  • Vendors
  • Posts: 5,373
  • Joined: 01 Oct 2008
  • Loc: Upstate NY

Posted 23 February 2017 - 01:04 PM

After the first Nexstar 5/8 models, all the Celestron mount electronics pretty much followed the Nexstar 8/11 GPS design. The 8/11GPS had a pretty serious serial connection board where all the mounts clients were brought together with the hand controller/server. Since then the connections have been reduced by more electronics The Nexstar 4/5SE and SLT even have a PIC12F508 microprocessor to carry some of the communications load.

 

Although Meade has a patent on using a serial network to control astro mounts, I doubt it can be enforced against a serious competitor. After all computer networks have been around since 1944 and industrial control systems have been in use since 1959.



#16 syscore

syscore

    Aurora

  • *****
  • Posts: 4,711
  • Joined: 07 Sep 2015
  • Loc: Space Coast, Florida

Posted 23 February 2017 - 01:36 PM

Meade did in fact sue Celestron several years ago over this in 2003 and they settled in 2004.

 

http://articles.lati...iness/fi-rup9.8

 

Celestron paid Meade $100 or 8% of net revenue per mount. I am not sure for how long.

 

Edit: Sorry, that was another lawsuit, not over the distributed network approach, but over the automatic leveling.


Edited by syscore, 23 February 2017 - 01:40 PM.


#17 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 23 February 2017 - 01:36 PM

I have a couple of uBlox NEO-6M GPS modules and Arduino Pro Mini clones on order. I also have some NodeMCU ESP8266 boards sitting around. Certainly they could interface with the GPS, but I wonder if there's something I could do with its WiFi capabilities, too.



#18 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 13 March 2017 - 01:51 AM

GPS modules and Arduino clones have arrived. Working on the software now.



#19 Brian Risley

Brian Risley

    Soyuz

  • *****
  • Posts: 3,929
  • Joined: 04 Sep 2006
  • Loc: SW Florida

Posted 13 March 2017 - 09:33 PM

I would be interested if this is an inexpensive thing to do.  We have a CPC-1100 that has a whacked out GPS that is 18 years ahead.  (Time/location are fine, date is goofy, possibly the 10 bit week counter interval. )

Brian



#20 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 13 March 2017 - 11:43 PM

Cost so far:

 

uBlox NEO-6M GPS module: $16

Arduino Pro Mini clone: $2.65

CP2102 TTL Serial to USB adapter: $3

 

I will have to fashion some kind of mounting harness, possibly re-using the existing metal bracket from the original GPS unit.

 

My goal is to also produce a SkySync-compatible unit for mounts that don't have a built-in GPS, such as the CGEM.



#21 CodeBlind

CodeBlind

    Mariner 2

  • -----
  • Posts: 270
  • Joined: 02 Feb 2017
  • Loc: New Mexico, USA

Posted 14 March 2017 - 08:38 AM

What a great idea, I hope things go smoothly for you!

If you're able to get this working, are you planning on making some kind of tutorial? I have an Orion Atlas Pro that I've been curious about trying something like this with. I don't know if the CGEM mounts use the same control software as the Orions, but I imagine they're similar. Would love to hear more about your experiences.

#22 BarryBrown

BarryBrown

    Ranger 4

  • *****
  • topic starter
  • Posts: 366
  • Joined: 30 Jun 2014
  • Loc: Sacramento

Posted 14 March 2017 - 12:41 PM

I'm posting everything on GitHub:

 

https://github.com/bebrown/nexstar_gps


  • Ab Umbra Lumen and MiroM like this

#23 CodeBlind

CodeBlind

    Mariner 2

  • -----
  • Posts: 270
  • Joined: 02 Feb 2017
  • Loc: New Mexico, USA

Posted 14 March 2017 - 01:34 PM

Awesome, I'll check it out!

#24 DavidOrDave

DavidOrDave

    Explorer 1

  • -----
  • Posts: 98
  • Joined: 13 Jun 2016
  • Loc: Keene, NY. USA

Posted 31 March 2017 - 08:45 AM

Greetings,

 

I looked into replacement GPS units when mine had failed eight months into the warranty. I loathed the thought of packing up my scope and returning it to Celestron.

 

I eventually fixed my GPS unit myself (replaced $3.00 super-capacitor) but I was considering replacing the GPS module leading up to that.

 

I balked at the price of the Celestron replacement, I think it was $130, and I thought that they're making a killing on what probably is only worth 10's of dollars nowadays and that there was probably some standard unit that would work in it's place.

 

The old nexstar GPS 11 schematics and materials I found on the web talked about a motorola unit that uses a small lithium battery for backup and I looked at a lot of potential candidate replacements for the GPS module. But what they're using now is a GPS module made and designed in Taiwan that uses a super-capacitor for backup.

 

I don't know how compatible the communications protocols are between units. I know there's the standard NMEA, but I don't know for sure if or how they're using that. Then, there's that interface board between the GPS and the rest of the system. What is it doing and how is it affecting the communications? That's about where I lost interest in delving in deeper to the protocols.

 

I searched and found what I think is the identical unit from a Taiwan supplier  but they're sold only to OEM's and cannot be bought singly. I got a quote for a sample order with a minimum quantity of five for $30 each. I would have bought one to try, but not five.

 

As an aside, when I was probing around on the serial bus for GPS communications between the GPS interface board, the GPS unit, and the rest of the system, I disconnected one of the serial connectors on the GPS interface board (I wanted to see which way the data was flowing). After that I got boot 008 messages from the hand controller and could not recover even after reconnecting the interface board!

 

It didn't surprise me that things stopped working when the interface board was disconnected, but it did surprise me that the hand controller didn't recover when communications was re-established!!! I thought I had toasted something.

 

I eventually recovered by re-flashing firmware on the HC but that's another story. Then I replaced the super capacitor and my GPS has worked well ever since.

 

I applaud your goal of learning more about how this works. Please keep us updated!


  • miamichillin99, Gbaxendale and daslolo like this

#25 Philip J. Fry

Philip J. Fry

    Lift Off

  • -----
  • Posts: 9
  • Joined: 20 Jul 2015
  • Loc: Nepean, ON Canada

Posted 10 April 2018 - 11:24 PM

I'm posting everything on GitHub:

 

https://github.com/bebrown/nexstar_gps

Barry,

 

How did it go? Any luck? The link doesn't seem to be working anymore...




CNers have asked about a donation box for Cloudy Nights over the years, so here you go. Donation is not required by any means, so please enjoy your stay.


Recent Topics






Cloudy Nights LLC
Cloudy Nights Sponsor: Astronomics