Sorry I haven't posted in a while - I suddenly got very busy at my 'real' job designing/building some smart buoys, but things have started to let up for the time being. I promise, I'll try to keep posting more regularly in here - exploring the ocean is important, and I'm nowhere near done!
Now for the hardware stuff. I had a major breakthrough this month on a new add-on I've had in mind for more than a year now - a wifi controlled ROV payload platform. This is a major upgrade to any ROV, because it lets you outfit your sub with controllable gear, WITHOUT having to install any new wire penetrations. If your payload carries its own battery and charging circuit (as mine does), it also means you can carry custom payloads without any sap on your ROV's main power source.
I saw this idea floated around on the OpenROV forums a couple years ago. And when I attempted to do this myself, I quickly learned why it hadn't come to fruition! Setting up a free-standing WiFi network, AND getting the geometry just right to transmit a signal through a medium as unforgiving as saltwater is, well... difficult. BUT - I finally have a version of this that works, at least for my experimental purposes. And I think it's a major upgrade to our ROVs. That's because it lets me control and pull data from almost any small arduino project using the Model C's onboard WiFi chip, and an ESP12E board.
I used the following components in my experimental build:
The WiFi Platform
ESP12E Board by NodeMCU - this is based around the Arduino Nano, and is essentially the same board (as far as normies like me are concerned), with one awesome upgrade: it comes with a built-in ESP8266 WiFi chip. This is what I use to set up a standalone network underwater, and send data to and from the Model C's raspberry pi.
Cresi Dry Box - Cresi is an Italian Scuba gear company, and they make dry boxes to store your goodies while you dive (money, phone, anything you don't want the cops to find while you're gone diving, etc.) I used the smallest drybox they sell, which was a great size to house the ESP12E and battery. It's still a bit bigger than I'd like, but it does the job well. Also a really reliable seal.
3D Printed Payload Electronics Cradle - designed by me
3D Printed Forward Support Strut with Dry Box Mount - also designed by me
Micro USB Charging Circuit - this is an incredibly convenient circuit - very surprised I haven't seen this used too often! Once a battery is connected, just plug in a micro USB charging cable. Light switches from red to green when your battery is full. Also only costs about $1.20 each on Amazon.
1000mAh, 3.7V Lipo - lots of capacity for my purposes.
Light up push button - to toggle my WiFi payload on and off
G1.4 Analog Pressure Sensor - this is intended for fuel/chemical uses, but it was some pretty straightforward physics to convert the pressure readings to depth (my Astrophysics degree came in handy here).
DS18B20 Temperature Probe - This is a decent little probe that comes with a fantastic Arduino Library by the people at Dallas Sensors. Have no idea how their SW works, but it works very well and is easy to implement.
I assembled all this hardware by bolting/strapping it to the payload electronics cradle below. This keeps the ESP12E, battery, charging circuit, and pushbutton in a position that's easy to move and remove from the dry box. The dry box itself is mounted on a modified forward support strut, which gets bolted in place on the Model C's forward weights. The finished setup fits between the ROV's rails, and buoyant force pushes up towards the ROV's electronics sphere.
A Finished WiFi Payload Palatform
Power and signal wires from the external Temp. and Pressure probes enter the dry box through a small hole dremmeled through the side. I potted both sides of the entry with a healthy dose of epoxy. The wires connect to the ESP12E with 4-pin wire harness. This is easy to disconnect for maintenance.
Once it seemed ready to dive, I charged the setup using my usual Android charging cord:
First, I connect the sensor wires to the ESP12E wire harnesses. Then I turn on the WiFi module using the pushbutton, and seal it in the drybox. Next, I turn on the ROV, which connects automatically to the drybox's WiFi network.
Finished WiFi payload, cruising between some fronds of California Giant Kelp
Then I set up the ROV as usual. Only this time, I run a customized version of the Blue Dot App that displays the temperature and depth readings. I'll pose a quick overview of the software, along with the software itself. On a basic level, the software uses sockets to relay data from the sensors to the app's dashboard:
On this dive, I took the ROV to a depth of around 10-15 feet. While my depth readings were a bit squirrely, that issue was actually because I made an unrelated mistake scaling the pressure readings to depth values. On the other hand, temperature came through with almost no noise or offset, and even agreed with that day's Surfline report!
Data transmission itself worked beautifully - all numbers were transmitted from the ESP8266 chip, and received by the ROV's wifi chip throughout the dive. In the upcoming video, you can actually see the readings refresh continuously no matter the depth.
I'll be the first to say this is very much a prototype, but I really do think it can take DIY ROV's to the next level. With well-documented software, this removes all the hardware modifications that usually come with ROV payloads.
Next on our menu is trying this setup with some new payloads. I'm thinking absolutely a robotic arm and scoop. I've also had the (perhaps misguided) idea of a torpedo launcher... 😏
Once I get enough practice with this system, and create an actual "ecosystem" based around this thing, we might have a new product on our hands. But to make this happen a bit sooner and better it might be worth open sourcing some of this. At BDROV, we've been considering selling STLs for the ROV for like ~$30-$40 per copy. While it'd be nice to post them for free, we really do rely on the income from purchases to keep this going-especially these days. So I'm trying very hard to find a balance between encouraging open ocean exploration and keeping Blue Dot sustainable. Tag your thoughts and ideas for new payloads below!
P.S. video version of this coming soon to YouTube - I'll share it here for my loyal members.