Servers by jDrones

Mapping a lake with ArduPilot


(rmackay9) #21

I’ve created an issue to cover the request to add a new MAP control mode.

(Robert Lange) #22

Hi rmackay9,
I really like your video and the boat to build.
As I’m very new in this topic I could need a hand on it :slight_smile:
I need to build a boat like yours to map my lake (963ha) better as we do it with our dive boat right now.
I also use ReefMaster to create the depth map of the lake.
Could you give me a list of products I need to buy to build the boat?
I come from the IT (so should be able to figure out what to do) but have zero clue of ArduPilot etc pp.
Thanks for helping me out.


(rmackay9) #23

Hi Robert,

Sorry for the slow response. We have some boats on the “Rover” wiki reference frame section but this mapping boat isn’t included.

Some of the parts are:

It should be possible to simply order the boat from EAMS Lab because I’m planning on ordering at least 3 from them for an upcoming project. They are about $1800 not including the echologger or shipping. Anyway, I can put you in touch with Glenn from EAMS Lab if you like. Full disclosure, they are the main sponsor of my ArduPilot development but absolutely no pressure to buy from them. They mostly cater to making robotic solutions for big companies in Japan.

(Robert Lange) #24

Hi Buddy,
Thanks for getting back to me.
I was in touch with the company behind the ECT400. Had to step back from it for now as the price as I need it for 100mts range) quite high. Blue robotics parts are able to get in Germany but takes like 4 weeks or so. For now I bought a boat people use here to feed fishies.
So far so good. I’m struggeling a bit with the pixhawk to get all the motors armed and do what I wanna do :slight_smile:
Thanks for helping mate!
Means a lot.

(Olav Aamaas) #25

Hi! I’ve been using Ardupilot for some time to support my fishing “bait boat”. Very happy with the result. And the latest work done with the echologger basically solved the last of my problems. Well, almost. Cause I’m struggling…
I have not bought a echologger. I use a standard analog Lowrance transducer. And then digitize the analog signals to NMEA 0183 by using a Actisense DST (200). I’ve followed the advice and set serial2_protocol to 9 and the serial2_baud to 4 (the DST use 4800 baud). RNGFND attributes are set to type = 17 for NMEA, MIN_CM to 30 and MAX_CM to 1000.
In Mission Planner I’ve selected “Sonar range” to be part of the “Quick” and can see the depth displayed. Was REALLY happy when I could read the depth in MP!!!

Today, I hooked up a Deeper device on the boat for comparison: And: The Deeper depth and the built in transducer shown as “Sonar range” in Mission planner show the same depth. Perfect!

So everything is fine. Except after scanning a water today, the DPTH is NOT logged. I’ve tried more than once…

When I import the dataflash logs, the DPTH is NOT available. I’m using Ardurover 3.4.2 and MP build 1.3.58. With no logs available, production of a depth map in Reefmaster is not possible. I’ve been mapping a water twice today and got a map by using the logs from the Deeper’s CSV files. Afterwards, the boat has been sitting in a bucket of water this evening. But I’m still not getting what I’ve done wrong. Also - having to rely on logs rather that to script the received depths into a CSV file on the PC / Android device is very time consuming. But one step at a time - cause at the moment I don’t have anything but the live depth in the MP GUI…

Advice on how to troubleshoot will be highly appreciated!

(rmackay9) #26

Hi Olav,

Txs for the report. I think the problem is the RNGFND_ORIENT parameter should be set to 25 (i.e. down). I’ve added this to the wiki so hopefully the next person won’t hit this problem. sorry about missing that in the docs!

(Olav Aamaas) #27

Thanks, rmackay9. I added the orientation, and then the DPTH was finally available in the log.

As for features, it would also be very nice to get the temperature. Not for logging, but to display real time in the “quick” area along with the depth. The thought of a “map mode” is also of interest to ease the preparations for a mapping session.

Also read that you might get into capturing the “backscatter” data to review after the mapping. Any progress on that? I guess the “backscatter” data are analog signals, voltage levels are also adjustable it seems. Wouldn’t it then be possible just to hook up two xbees and to send the signals to the PC on shore? Having the option to see “backscatter” data displayed in the echologger SW in real time would be real nice!

(rmackay9) #28


Glad it’s working now.

No progress on getting the backscatter data but it’s getting higher in the to-do list so we will get there eventually. I’m not sure what “echologger SW” refers to but in any case, it’s more likely that we would need to create a new message to send the data to the ground station and then ask the ground station developer to create a viewing screen. It’s a good idea and I will put it on the to-do list but I can’t promise when it will be done. My current plan is to push forward on getting the backscatter data and that getting “side scan” data for really detailed underwater mapping. It’s all open source though so if more developers show up we can get more done faster.

(stevenette) #29

Hey Randy,

We spoke a while back about integrating the DST 800 to the autopilot, and after great frustration, I put off the project for a while. I see you have been busy eh? This is a great resource! I am on the 4th version of my boat currently, and I have a couple of questions.

  1. Do you see any issue with the boogie board in terms of stability of measurements? My first boat was a cat, my second boat was a trimaran, my 3rd boat was a “submarine” that floated just above the surface, and my 4th iteration is some combination of the above. Do you have any suggestions or tips?

  2. Have you tried any other depth sensors since this post? I am racking my head on the airmar DT 800. I have tried all kinds of 12V +/- inverter kits from sparkfun, down to 5V down to 3V. 0-12, -12-+12 etc. I can’t figure it out for the life of me. I would love to buy one and send it to you if you can incorporate it into the design??? I tried calling and they wanted $4150 for the ETC400!!! I emailed the link you gave, but no reply yet.

  3. Manual mode… I have a frysky taranis X9D and I can’t get it to work at all! I went through every online video and manual to connect with the pixhawk, but the programming is incredibly illogical to me. What kind of transmitter do you use? I also have a little spektrum DX2E that I can control the boat with, but only when connected directly to the ESC. I can’t connect this transmitter/radio to the Pixhawk. Do you know a way I can connect this transmitter instead?

Sorry for the rant/digressions. I love the help you have provided to public! Mapping my local lakes has been a project of mine for years now, and I am so so so close to having exactly what I have dreamt of. Thanks you much!

(David Boulanger) #30

You may be able to use a ppm encoder with the spextrum. That’s what I use although I’m using an aircraft receiver and not surface. I have also never heard from the company that makes the ect400. I’m currently using a Lowrance unit.

(rmackay9) #31

Hi Steve,

So it looks like the DST 800 uses NMEA 2000 which upon some further investigation is actually nothing like NMEA 0183, it’s CAN! I don’t know why I thought it was NMEA 0183 which is what the new driver (used for the ECT400) supports. There are a decent number of echosounders out there that use NMEA 0183 so that would be the easiest way forward.

… still, we can add support for NMEA 2000 but it’s a completely different level of complexity. It’s probably at least a couple of weeks of solid work to add support because it’s a bit out of my area of expertise. I think I’d better hold off on accepting the offer of the DST 800 until I’ve raised the courage to tackle this. I will do it but I better not promise when…

I use Futaba transmitters…

(Olav Aamaas) #32

I emailed Echologger directly (address on their web site). Got a response just hours later with attached PDFs according to my requests. They actually got a couple of interesting models (dual frequencies), and some additional form factors. I think their products are very interesting - but prices start at USD 2700… Ops! Kind of out of my league I’m afraid…

As for alternatives: I’ve used a fully analog transducer (Lowrance HST-WSBL 83/200). It is not “smart” at all, and you simply cannot attach a battery directly and expect it to work. But the Actisence DST-2 (in matching 200 kHz variant) can be connected to a battery and then “drive” it. I found some pictures and short descriptions of Airmar and Lowrance transducer pinouts with function (depth +/-/shield, temp +/- etc) and cable color. Then cut the cable off the transducer. Verified pinouts and colors by testing. And hooked it into the DST-2. The DST-2 can then digitize analog readings into NMEA 0183 depth, speed and temperature (hence “DST”), and offers an RS-232 and a 5V serial output to read it off. After figuring out that the Pixhawk was compatible with 5V serial, I finally attached DST-2 serial directly to the Pixhawk Telemetry 2 (ground to ground, Rx to Tx and Tx to Rx). And voila :slight_smile:

(rmackay9) #33

OK, thanks for that info. I didn’t realise the ECT400 was so pricey! I like the sensor but at that price we need other lower cost options and I’m happy to help in whatever way I can with that. Some ways I think I can help are:

  • add support for the DT800 and other echosounders using the NMEA 2000 protocol
  • help document other working setups on the wiki. I know at least one person has already sent me some info but if others have details on working setups, just post it here and I’ll add it to the wiki. What we probably need are links to stores which sell the parts and connection diagrams or pictures showing where wires get connected.

(Olav Aamaas) #34

OK. Here’s my contribution on how to set up an “alternative solution”, ie: Digitize readings from an (old) analog transducer into NMEA0183

Equipment needed:

  • Analog transducer
    Example uses a Lowrance HST-WSBL 83/200 kHz (transom mount transducer)
    Documentation hard to find
    Fairly cheap (USD 60 on, Nov 2018)
  • Digitizing gear
    Example uses Actisence DST-2 (200 kHz, matching transducer, other frequencies available)
    Good documentation available on:
    Moderately priced (USD 195 on, Nov 2018)

The key of this solution is the DST-2. You connect it to a power source (10-28V input accepted, I use a 4S Lipo), and then it can drive an analog transducer, read off the analog result and translate depth, speed and temperature in NMEA0183 format. For the transducer I used, only depth and temperature are available.

Installation of the DST-2 is super easy. User manual (pages 7-9) clearly describes how to connect a power source, the transducer and how to tap off the serial data.

If you have or acquire a transducer with well documented pinouts, the complete setup is quick. My HST-WSBL was not “well documented”, but solved with some trial and error. I found that the following Airmar pinout of 91-849 rev 01, (available at was correct. Cable coloring to pin# was then figured out by means of a multi meter after I cut the cable:

Since the HST-WSBL transducer lacks a speed sensor, only pins 1 and 4-7 are relevant. Wires to be connected to the DST-2’s “right hand side”, like this:

On the left-hand side of the DST-2 you will find the connections for power input and serial & RS-232 output. The easiest is to use the 5V serial output and connect it directly to the telemetry port of the pixhawk (tx, rx and a common ground). Read the DST-2 docs for yourself, here’s the wiring I got working:

Set up Serial and Range Finder parameters as in the general description, with exception of the baud rate:
SERIAL2_BAUD = 4 (4800 baud)

(Olav Aamaas) #35

Forgot to mention one important thing: The DST-2 provides one NMEA0183 reading per second. More than enough to draw up a bathymetric map, provided the boat does not drive too fast…

(rmackay9) #36


Thanks very much for that. I’ve created the wiki page and a link called “Underwater Sonar (Analog)” should appear near the bottom of the Optional Hardware/RangeFinder wiki page within a few minutes of this post. Think it looks OK? any suggestions on improvements?

(Kikislater) #37

Looks like an interesting option !
What’s the advantage/inconvenient between analog transducer like Lowrance HST-WSBL and the echosounder like Echologger ECT400 ?

It seems that Tinley make some similar kind of product about conversion : but more expensive

(rmackay9) #38


The ECT400 has a much more narrow beam (5deg vs 22deg) so I think the ECT400 is probably better for underwater mapping at least in cases where the objective is a detailed map. The big advantage of the new setup is the cost. The ECT400 is about 10x more expensive (a few thousand dollars instead of a few hundred).

By the way, I will start a new discussion in the Rover forum asking people if there are other underwater sonar that we should add support for.

(Olav Aamaas) #39

Very nice! One detail to correct

  • Baud rate of the actisense device is 4600

And also: I have not been able to find a specification of minimum depth for reliable readings for this Lowrance transducer. Someone told me 0.5m, but I think it is better so I set it to 30 cm.

I will post some suggestions for transducers in the mentioned thread.

(rmackay9) #40

@oaamaas, thanks for that. Took me a while but I finally updated the wiki to correct the baud mistake, thanks!