Thread Tools
May 10, 2006, 12:26 PM
Registered User
LukeZ's Avatar
Discussion

Standalone Waypoint Sequencer


I thought this topic might deserve its own thread. There are a few posts over in the RCAP2 thread that kind of got us started on this - around #288.

Currently if you want waypoint functionality you need to buy a commercial, hand-held GPS or the like, which are bulky for UAV/AP/FPV use and may not have all the features one desires for such a task.

Therefore, the question is, what might be involved in creating a microcontroller-based "waypoint sequencer" for use with OEM GPS modules? What would be the list of features it should possess? And what are the various ways in which such a thing might be of use? Obviously it would go well with the RCAP2, but are there other applications?

When I started this thread, Mr. RC-CAM was just about to tell us how hard this project would be , and muc had given us some useful links, which I hope he'll re-post here.


Luke
Sign up now
to remove ads between posts
May 10, 2006, 12:39 PM
Registered User
Mr.RC-CAM's Avatar
Quote:
Mr. RC-CAM was just about to tell us how hard this project would be
Yes, but that hopefully inspires someone to tackle it.

For features, I think you should re-list what you already posted in the mother thread. However, to increase the chance of project survival, it would be best to reduce the list to the bare essentials for now. Perhaps start with something that can support ten waypoints and a minimal user interface. That will allow for field validation of the basic waypoint engine.

Speaking of the user interface, I suggest an Palm Pilot. The early versions are cheap ($50 refurbished), portable, and it appears that decent development tools are freely available.
May 10, 2006, 12:47 PM
Registered User
HI,

I've been following this thread for some time.

I found this site some time ago and bookmarked it.

http://users.libero.it/riccardo.rocca/roboat.htm

Perhaps it would give someone some ideas on coding. He used a Motorola M68HC908GP20 but I'm sure it could be done with a PIC.

Cheers,

- Bob -
May 10, 2006, 12:50 PM
Registered User
LukeZ's Avatar
Possible feature list of a standalone waypoint sequencer:

1. Adjustable waypoint proximity range - to specify how close you need to get to your waypoint in order for it to be considered attained, and sequenced to the next.
2. Selectable arrival or departure sequencing.
3. Selectable one-time-through or repeatable courses.
4. Selectable GPS baud rate in order to be compatible with multiple engines.
5. Triggerable (TTL or RC PWM perhaps) "go-home" feature.
6. Triggerable "pause-and-loiter" feature (and consequently, a "resume" option as well).
7. Plenty of memory for lots of waypoints.
8. Firmware upgradeable through Bootloader.
9. Waypoint-specific instructions: loiter for 10 minutes at waypoint Y, trip an output pin on arrival at waypoint X, etc...

The idea is that waypoint creation would be done on a PC, ideally through some already available, and perhaps free, software (something like Google Earth perhaps). A small Windows utility would upload a text file of these waypoints to the microcontroller through a serial connection. The Windows utility could also be used to manage/configure the options.

In the spirit of keeping it simple, I'd think a serial connection to the PIC/micro should be all that's needed - if someone really wants to use USB, just get an adapter.


Luke
Last edited by LukeZ; May 10, 2006 at 04:41 PM.
May 10, 2006, 12:56 PM
Registered User
LukeZ's Avatar
I suppose we could now all argue about what micro and language should be used, but I'm guessing that will just be the choice of whatever sap decides to take this on.


Luke
May 10, 2006, 12:59 PM
Joel Haasnoot
I think a Palm is an excellent idea, I just have no clue how you would interface it. A Palm device has one wired serial port and one IR port. I'm assuming you would need an output and an input (GPS module), so you might have to do something there... A Palm would be prefect, you could remove the screen and the plastic and have a very light weight programmable device, that would run 20+ hours on AAA batteries.
May 10, 2006, 01:02 PM
Registered User
Mr.RC-CAM's Avatar
Quote:
I found this site some time ago and bookmarked it.
Excellent resource. Plenty of working examples using integer math instead of floating point. That is just what the doctor ordered. Looks like all the hardest/nastiest work is done. The missing puzzle piece is a decently experienced programmer, with plenty of free time, and a desire to share it as open source.

If I was granted one wish: code it in C using a PIC or ATMEL MCU.

Quote:
A Palm device has one wired serial port and one IR port. I'm assuming you would need an output and an input (GPS module), so you might have to do something there...
The Palm would not need to interface to the GPS module. It would only need to be connected to the embedded controller to download new waypoints (then it would be removed). It could be done with the IR, but the RS-232 port is fine too.
May 10, 2006, 01:06 PM
Registered User
LukeZ's Avatar
Quote:
Originally Posted by joelhaasnoot
I think a Palm is an excellent idea, I just have no clue how you would interface it. A Palm device has one wired serial port and one IR port. I'm assuming you would need an output and an input (GPS module), so you might have to do something there... A Palm would be prefect, you could remove the screen and the plastic and have a very light weight programmable device, that would run 20+ hours on AAA batteries.
Several PICs have two USARTs, or in any case, you could bit-bang one to the Palm/PC interface, and use the other one (hardware USART) for connection to the GPS. So I don't think that's a problem.

However, what do you mean by "remove the screen and plastic"? I don't think you'd need to carry your interface aloft - program the device on the ground, then disconnect and let it go. Otherwise then we're not too much different from removing the screen and plastic from our e-Trex or Geckos... Right? Or no?

Luke
May 10, 2006, 01:15 PM
Registered User
LukeZ's Avatar
Quote:
Originally Posted by Mr.RC-CAM
If I was granted one wish: code it in C using a PIC or ATMEL MCU.
If I were to do it, I'd use a PIC18Fxxx and Microchip's free C compiler. This way it truly would be open source, and anyone could edit and re-flash the code without cost. I know most people developing PICs in C use CCS or Hi-Tech, but those are either not free, or else the free version doesn't work with 18F chips (PICC lite for example)...

Luke
May 10, 2006, 01:19 PM
Registered User
Mr.RC-CAM's Avatar
Quote:
Several PICs have two USARTs, or in any case, you could bit-bang one to the Palm/PC interface, and use the other one (hardware USART) for connection to the GPS. So I don't think that's a problem.
It's even easier than that. You only need one serial port on the embedded controller. It can be shared with the GPS module and the occasional host connection. I'm doing that on my GPS OSD project and it works dandy. BTW, if IR was used for the host connectivity, then there are ways to do that without using the serial port.

Quote:
If I were to do it, I'd use a PIC18Fxxx and Microchip's free C compiler.
Sounds good. I can port that to CCS easier than I can write the app.
May 10, 2006, 01:51 PM
Registered User
Steve McBride's Avatar
Will you guys be developing around a particular GPS module? I would assume that by the time it came down to it, you'll need to pick the interface connector for the GPS - or will this be a 'roll your own' circuit?

I'd be happy to loan my Trimble Lassen IQ module, antenna and eval board to someone developing the waypoint engine if needed. I don't use it nearly as much as I had hoped because I sort of need a waypoint engine

http://www.trimble.com/gpsbc_lasseniq.shtml

This unit is only 12 channels, but seems to do a wonderfully accurate job. Has two serial lines on it, both programmable for baud rate and data type (NMEA, lassen's stuff, etc).

I'll be watching this thread closely. Good luck guys.

Steve
May 10, 2006, 03:26 PM
Registered User
CrashingDutchman's Avatar
I think that a standalone board (using PIC) had an advantage over using a palm since incorporating altitude will be easier (?).
May 10, 2006, 03:31 PM
MX
MX
Embedded Systems Engineer
MX's Avatar
Sounds like you guys misunderstood the Palm idea. The Palm would be the user interface to configure and enter the waypoints to a board that contained some microprocessor that actually does the waypoint distance and direction calculations.

MX
May 10, 2006, 03:42 PM
Registered User
LukeZ's Avatar
Quote:
Originally Posted by MX
Sounds like you guys misunderstood the Palm idea. The Palm would be the user interface to configure and enter the waypoints to a board that contained some microprocessor that actually does the waypoint distance and direction calculations.

MX
Right - I don't see a Palm as necessary to any of this, just another tool to download waypoints on to the PIC.

Luke
May 10, 2006, 04:25 PM
Registered User
Mr.RC-CAM's Avatar
Quote:
I don't see a Palm as necessary to any of this, just another tool to download waypoints on to the PIC.
Definitely not needed at this point. But later on, a cheap (and useful) user interface would be needed. Rather than carry a laptop to the field, something less expensive would be nice. Hence, the Palm idea.

Frankly, I would set my initial design goals down a couple of notches for now. I would be VERY impressed if someone posted a PIC18Fxxxx based waypoint engine design that utilized a low parts count board, that could determine bearing and distance to a route with a half dozen waypoints, and that included a simple user interface using a serial port connected PC. That alone is a huge project. It would be very easy to expand it from there (open source it).

I've seen several project ideas on the forum that slowly died because the design goals became too ambitious too soon. Baby steps, as they say. It would be nice to see this project really happen.