Conventional Submarines - ArduRover

I was thinking about how to make something like a pitot tube but without having a large tube sticking out, what about something like this for the dynamic port and a a flush outlet for the static port, all that is needed is a pressure difference between the ports.

another idea I had was that a submarine is kind of shaped like a pitot tube, what about a port on the nose of it and one on the side?

another idea I had was using one of these flexible film resistors, the idea was that by placing it in the water it should bend more the faster it goes.

Here is food for thought:
In some machines a flow-meter is used to measure flow of water & quantity.
Why not have a small entry on the nose and exit towards the rear.= The faster you go the more flow is created through the flow-meter. = more pulses / second.

Something like those:


This one is even more basic:


Unfortunately my U-Boot hasn’t seen any water in decades.
But I did use a adjustable pressure switch mounted inside with an opening at the bottom.
Back then just regular RC-control system so I used a resistor connected in parallel to the trim-pot inside regular servos. This resistor was connected only when pressure switch switched at around 1.5m depth and forced submarine up. But by keeping RC control in diving position it essentially stayed at a depth of between 0.8 to 1.5m (somewhat up and down but not visible unless really clean water).
Another resistor was connected to a water sensor in case of internal leakage. This triggered full surfacing of sub until water was removed.


I have something similar programmed into opentx using the recevier RSSI, so that if the signal gets low it will start to pitch up and in theory it should dive to the edge of the RC range and no further.

I have seen sensors similar to that on real boats where it was just a little paddle wheel sticking out the side of the hull that was turned by passing water. you could just cut one of those sensors in half and have it sticking out the hull.


Yes, in a boat it would work that way. But unfortunately not on a submarine as it may not turn at all once fully submerged. …unless some channels are created to direct the flow of water around that water wheel.
Given that some of those sensors just need a 5mm hose it would be easier having a small pipe (copper,stainless steel,brass,…) penetrating the hull front and back and rest attached to flow-meter via hose. Low cost and very effective as some of those sensors work done to the ml level.

PS: Love your work you’ve done over the years. Appears you are someone like me - Thinking outside the box.

1 Like

Earlier is this thread, @iampete reported adding support for NMEA water speed sensors, calling out DST800 specifically.

You will need two sensors, one i2c multiplexer and an arduino. I bought a pitot tube on Ali. The sensors are sealed by themselves. I use this sensor on the boat.

This sensor has two modifications, analog and digital. And it’s pretty big on its own.

@McKey - the MS5837 has several advantages includig its small size - do you get an exact speed output from your pitot tube setup - and if so how exactely is speed calculated from the pressure difference? I guess you need to calibrate it at least once, correct? I would appreciate your advice and / or some pics.

You are right, the speed is calculated by the pressure difference; Calibration occurs automatically by atmospheric pressure when turned on (that is, from the beginning I turn on the boat on the shore, and then I launch it)
I’m on a business trip right now, so I don’t have any pictures with me.
I think the margin of error is about 15%. I tested on the river, measured how fast the ball floats from the pinpong, and made coefficients so that the values correspond.
I also think that the holes in my pitot tube are too small.

1 Like

@McKey thats a very interesting solution - just recently I got myself one of these sensors for measuring diving depth - it would be great if you were able to share the details later once its convenient for you to do so - does your setup provide you with data on diving depth as well?

I have ordered an i2c airspeed sensor to test as a water speed sensor but wont arrive for a couple of weeks. Im going to set it up to test on my ardurover tugboat using some small water pickups.

The i2c airspeed sensor has arrived, im going to set it up on my southampton tug to test it once the pickups arrive.


Tested, how are you doing?

I havent had it in the water yet. Its been getting a full rewire as i upgraded it to a h743 board. I have just used some brass tube to make a pickup, the one i ordered was just too big and one part was aliminium so it wouldnt braze, if it works im going to cut this one down so its less protruding and shaped more like the one i ordered…

I have a PX4 FLOW sensor coming, its getting installed on the bottom of the boat to test if it can hold position, I already have a downwards facing sonar on the bottom of the boat to measure the distance to the ground. in theory it should work on a submarine as long as you can see the bottom. its getting installed next to my downward facing FPV camera so i can see what the optical flow can see…

Then we are waiting for the tests. I refused this type, now I’m doing it on a different principle. I think @iter will also be interested.


Tests are also needed :smile:

1 Like

I have enclosed an i2c MS5611 and have it working with inav for testing depth. If it goes well then it might be worth a test with arduplane. I havent had a chance to test my tug with its pitot tube as the ponds have been iced over.


Greetings to all submariners. Now it’s my turn to puzzle over the issue of integrating ms5837 into my submarine. Tell me how you solved the issue with choosing the firmware? Which one did you choose: ardurower or arduplane? Our boats are very similar, the tasks and associated difficulties are also similar. floating models are quite flawed in ardupilot.