Hello everyone! Today we’re proud to announce an updated release of the BlueROV2’s core software, which includes ArduSub, Companion, QGroundControl. This is our second big software update, and this time it can be performed without opening the electronics enclosure!
Notable changes in this update are:
Ability to display camera tilt angle, lights level, tether turns and more in QGC
Allow selecting a custom image to display in the QGC ui in place of the ‘ArduSub’ logo
Many other various bugfixes, feature additions, and improvements, reference the release notes below for a comprehensive list of changes
We’ve done a lot of work to get this point and special credit goes to Jacob and Daniel, our primary Blue Robotics software developers. We strongly encourage all BlueROV2 users to upgrade to this newest software update. Please visit the full forum topic for update instructions.
Today we have a very special new product announcement. We’re partnering with Water Linked, a Norwegian company, and announcing the release of a revolutionarily low-cost Underwater GPS system. This new product, the Water Linked Underwater GPS Developer Kit combines a traditional GPS receiver and compass with an acoustic positioning system to provide positioning information underwater. We think this technology will be revolutionary to how we use ROVs.
We’re partnering with Water Linked as their first and only distributor for this system, and it will also be supported out of the box in ArduSub and the BlueROV2.
The Water Linked positioning uses something called Short Baseline (SBL) acoustic positioning. Basically, the ROV has locator beacon that sends out an acoustic pulse. Near the surface, there are four receiver hydrophones lowered into the water. The hydrophones listen for the pulse from the locator beacon and use difference in the time-of-arrival to each receiver to triangulate the ROV’s position. SBL systems, compared to the USBL systems more often used on ROVs, have the advantage of working well in shallow water and noisy acoustic environments, such as in a fish cage.
Once the position is known relative to the receivers, the global position can be found by adding that to the position obtained by a GPS receiver. The Water Linked Underwater GPS system does that part internally so that it can provide the actual global position of the ROV as it’s output.
Why It’s Important
The addition of position information when operating an ROV or other marine robotic vehicle is a big change. It means that photos from inspections can be geotagged, targets with known coordinates can be found easily, and ROV can even be programmed to do autonomous actions, such as holding position in a current or following a set of GPS waypoints.
The Water Linked Underwater GPS Developer Kit
Today were launching the Underwater GPS system in a kit that includes all of the required hardware. The software is in a functional state already, but will be improved quite a bit over the next few months. That includes the addition of a well-documented API, performance improvements, and added features. The system includes everything you need to get started – check out the individual product pages for more details, datasheets, and info.
Orders can be placed today but please note that the first systems won’t ship until about June 15th of this year.
Hello everyone, we’re pleased to announce that the ArduSub project has merged with ArduPilot! This is a momentous occasion for the ArduSub project, with our two main developers, Jacob and Rusty, both becoming members of the ArduPilot development team. ArduSub is the first new vehicle type since the addition of ArduBoat in 2011, and is the first to take the ArduPilot project underwater!
We’ve been looking forward to seeing this since the start of ArduSub!
There are many benefits of developing ArduSub further as a part of the ArduPilot project:
Our code will always be up to date with the latest library developments and bugfixes.
Our code will regularly undergo a thorough automated validation, including simulated dives and builds for multiple autopilot platforms.
Our build system will be automated, and the latest firmware binary will be automatically updated and made available for download on firmware.ardupilot.org.
Our documentation will be updated and migrated to the ArduPilot wiki, and our vehicle parameters will be documented and automatically updated when our code changes.
Our contributions to the code will also receive peer reviews from the world-class team of developers of the ArduPilot team.
Further, ArduSub development and the latest ArduSub code will now be found in the ArduPilot repository. ArduPilot and ArduSub are currently undergoing a rapid development process, and we expect to have a new stable release in April with some great new features and support for additional hardware!
Thanks for joining us on this development. If you’re interested in contributing to the ArduSub project, let us know!
ArduSub is the software at the heart of the BlueROV2. It’s based on the solid foundation of the ArduPilot code, which has been under development for years. ArduSub is open-source, fully featured, and growing rapidly.
Today we want to share some in-progress news that’s been in the works for a long time: we’re working on merging the ArduSub code into the main ArduPilot repository at github.com/ardupilot/ardupilot. What does mean? Well, up to this point, ArduSub has been developed in our own “branch” of the ArduPilot project. By merging into the main project, we’ll join the list of official ArduPilot vehicle types: ArduPlane, ArduCopter, and ArduRover. We’ll continue developing and maintain the code ourselves, but we’ll be assisted by the awesome developers at the ArduPilot organization. This is also allowed us to always be up to date with the latest features, improvements, and bugfixes contributed by the many maintainers.
For those of you interested in lots of details, here’s the text of the pull request, which explains a lot of the work we’ve done on ArduSub in the past year:
ArduSub has been in development for just over a year. In that time, we have come a long way. It started by simply copying the ArduCopter directory and poking around to see what we needed to change in order to make our vehicle move around underwater. Once we had accomplished that, and as we became accustomed to the extensive codebase, we progressed by increasing and improving functionality. We had our first stable release right at the end of 2016. We versioned the release as 3.4, in line with where we picked up from Copter. We are currently working on 3.5-dev.
We ship our BlueROV2 running ArduSub on a Pixhawk, and the response from professionals in the marine industry has been overwhelmingly positive. In addition to the BlueROV2, we’ve designed ArduSub to be very flexible, and we have DIY ROV users around the world with different ROV designs and motor configurations. ArduSub is thoroughly documented at ArduSub.com, and we have a very active ArduSub Gitter Channel.
From ArduCopter to ArduSub
The first hurdle was in figuring out how to make our vehicle actually move around underwater. The original development platform, the BlueROV1, has 6DOF, and while it can pitch and roll, it does not need to do so in order to translate in the x and y axes. Our solution was to subclass AP_MotorsMatrix with AP_Motors6DOF, overriding add_motor_raw to include the forward and lateral DOF that multicopters lack.
The second hurdle was acheiving the tantalizing prospect of holding depth with a positive or negatively buoyant vehicle. The onboard barometer is in a sealed compartment, and the pressure will obviously not correspond with altitude. The Bar30 pressure sensor, incorporates the MS5837 waterproof pressure sensor from Measurement Specialties, the same people who brought you the familiar MS5611. This sensor has almost exactly the same interface as the MS5611, which was a welcomed coincidence in the very early stages of development, when we were still learning how everything in ardupilot worked. We use the MS5611 driver to drive the external MS5837, and added a few members to the AP_Baro class in order to distinguish between an ‘air’ barometer and a ‘water’ barometer. Fortunately for us (and thanks to you guys), there was already support for multiple barometers and an option to set the primary barometer to use with the EKF. We also added a method to the EKF in order to internally set the baro_alt_noise parameter to a low value, because the pressure measurements underwater are very precise.
We have three supported flight modes, Manual (no stabilization), Stabilize, and Depth Hold. We have made progress in implementing more advanced position-enabled modes; we’ve even executed short missions in auto mode. We have also managed to create a working rudimentary model in SITL.
GPS receivers will not work underwater, so we have added an AP_GPS_MAVLINK class in order to support marine industry localization sensors. This class inherits AP_GPS_NMEA, and works by receiving raw NMEA sentence data from the telemetry connection in the form of the GPS_INJECT_DATA message. This was implemented before the AP_GPS_MAV type was added, and there is some overlap in terms of functionality. The advantage of AP_GPS_MAVLINK over AP_GPS_MAV is that the serial data (in the form of NMEA sentences) from a GPS system connected to a topside or companion computer can be sent directly over the MAVLink connection to the vehicle and parsed by the autopilot, with no need to parse the data at the origin before finally formatting the output as a GPS_INPUT MAVLink message. AP_GPS_MAVLINK also eliminates the requirement of reserving a UART for GPS input.
There are a few other minor additions to note:
The AP_JSButton library was added to handle joystick button mapping to various vehicle functions. – It is supported by QGC as well.
PosControl and Fence: added a minimum z limit in order to limit maximum depth
Added a leak detector library
Added a temperature sensor library
ArduSub is used in conjunction with a hard-wired telemetry connection over a tether. This connection is implemented via a RS422 interface directly to the autopilot, or via UDP with MAVProxy running on a companion computer. Pilot input is expected to come over MAVLink via MANUAL_CONTROL messages, and RC input is not supported because RC signals will not penetrate water. Support for ArduSub has been integrated into QGroundControl, and we continue to contribute to QGroundControl in order to improve support for ArduSub as well as other features common to all vehicles.
We have tested ArduSub primarily on the Pixhawk 1, but we have some users on other autopilots including the Navio2 and BBBmini.
Where We’re Headed
ArduSub is being actively developed with a full time developer and several contributors around the world. We plan to continue adding new features and improvements and it’s very important to us to stick with ArduPilot’s original goal of being open source and highly capable. We think that ArduSub is already more capable and extensible than most other ROV control systems.
Hello everyone! Our website was down for maintenance for a few hours last night. In that time, we migrated everything over to a new hosting service with the hope of improving the website speed. I want to share a few details about that for anyone who might be interested.
First of all, some parts of our site are hosted elsewhere already, and they work pretty well. The documentation is hosted on Github and the new forums are hosted by Discourse. You might have noticed that our main site and store has been painfully slow recently. Here’s a screenshot from Pingdom showing the loading time for the store page on our old host (Dreamhost):
21.80 seconds to load the page – only faster than 7% of websites!? Clearly we needed to figure out how to improve that. Last night, we migrated the website to Amazon Web Services (AWS). The results are pretty shocking:
As you can see, there’s an eightfold improvement in loading speed, making us faster than 60% of websites. While that could still be improved, it’s a massive difference from the old host. The website “Performance Grade” didn’t actually change much at at all, rising from 60 to 63. That’s because that score judges how efficiently the website is coded, not where it is hosted. That can be improved by adding features such as server side caching and browser caching. We’ll work on adding that in the future.
Everything seems to be working as it should on the migrated site, but please let us know if anything seems to be broken! If you find any issues, please let us know at firstname.lastname@example.org.
The Kickstarter Make/100 creative initiative focuses on limited editions of 100. Our plan is to build 100 sets of a clear version of the T200 Thruster, perfect for showing off to curious minds, learning about engineering and design, and for making some unique looking underwater projects! It uses all the same parts as the original T200, but with clear polycarbonate plastic and clear urethane jacket (not shown in the video).
Alongside the campaign, we’ll be donating 50 T100 Thrusters to the MATE Center, for middle school and high school robotics teams in need of financial support. We hope you’ll join us as one of our 100 backers!
We also grew as a company, doubling our staff and tripling our facility size to accommodate all of the new products. We increased from five to nearly thirty distributors who are working hard to make sure our products are accessible and well-supported all around the world. We have a lot of new customers and we’re incredibly proud to support hundreds of businesses, schools, and teams – seeing your projects and applications is the most rewarding part for us.
We have no plans of slowing down anytime soon! I want to give you a little taste of what’s to come in 2017.
We have an exciting and fun campaign coming in January that you’ll want to jump on quickly. We’re adding some important facility upgrades here in March, and we’ll have a big product launch in June, fittingly one year after the launch of the BlueROV2. As always, we’ll have new product launches throughout the year – there are a few in particular that we are very excited about!
Hello everyone! With the end of the year approaching we’ve been hard at work getting a few new products ready for release.
SOS Leak Sensor
First up today is a product that’s useful on almost any underwater project: the SOS Leak Sensor. Named after the International Morse Code Distress Signal, the SOS Leak Sensor can detect a small or big leak in your project. It uses a detector circuit built onto the probe host board which can connect to up to 4 probes. The leak sensor probes use a small adhesive-backed sponge to detect just a few drops of water and give you a warning.
The probe host board has header pin connectors to send a simple on/off (high/low) signal to a Pixhawk, Arduino, or other microcontroller. The sensor is already supported in ArduSub and easy to install on the BlueROV2. For more details, check out the SOS Leak Sensor documentation.
Hello everyone! Happy Election Day in the US – make sure you vote!
Today we have a few new products including the first major accessory for the BlueROV2, a payload skid that allows you to integrate large payloads onto the vehicle. We also have a new enclosure mounting clamps that make it easy to securely mount the 3″ and 4″ Series enclosures to the skid and elsewhere.
This payload skid is the ROV equivalent of a pickup truck bed – it provides a bunch of real estate to carry large stuff. That stuff can be just about anything ranging from extra batteries, to experimental sensors, to multibeam sonars. The skid is made of rugged HDPE plastic just like the BlueROV2 and it has mounting holes for up to three 3″ Series enclosures or one 4″ Series enclosure. The skid comes without enclosures so that you can configure it however you’d like!
Four aluminum mounting brackets quickly connect the Payload Skid to the ROV so that it can be installed and removed in the field. Check out the documentation page for more details.
Enclosure Mounting Clamps
Sometimes it isn’t easy to install a round enclosure in a square ROV! That’s the case with the Payload Skid, so we made these Enclosure Mounting Clamps for the 3″ Series and 4″ Series enclosures to make them easy to install in any build. These are perfect for the Payload Skid and the 3″ version is already used to hold the lower battery enclosure on the BlueROV2.
The two identical halves screw together to securely hold onto the enclosure. Mounting holes on the side use M4 screws to hold the enclosure to the Payload Skid or other locations. The result is simple and much more secure than straps or other mounting methods!
That’s all we’ve got today! Stay tuned for more updates later this month!
Last year we asked all of our customers and followers to complete a “product interest survey” to help guide our future plans. It worked out so well that we’re doing it again. If you have a moment, please take our 2nd Annual Product Interest Survey and let us know what you want. It really matters to us and it actually affects what we work on next.
Plus, there’s a $300 Blue Robotics Gift Card in it for some lucky survey respondent!
In the spirit of being an open and transparent company, we want to share some of the results from last year’s survey and show you how we used that info! Continue reading if you’re interested!
The first question addressed the type of vehicle. We got an overwhelming response for “ROV” versus any other marine vehicles.
The applications questions got widely varied results. The most popular answers were “robotics competitions”, “recreation”, “wreck discovery”, “exploration”, and “photography”. With the exception of “robotics competitions”, all of those applications boil down to having a solid ROV with a good camera. “Robotics competitions” requires a wide variety of good products, open and helpful documentation, and lots of flexibility!
As I think we expected, most people are interested in the 25-100m depth range, which has interesting things to see but is still fairly accessible. Too deep for snorkeling but not deep enough that really expensive equipment or boats are required. The rest of the data forms a nearly-perfect bell curve. We’ve made sure that every component we design is capable of at least 100m but when possible we try to design for much deeper.
Sensors, Components, and Systems
The last two questions have really driven our product development. As you’ll see on the results below, we’ve addressed many of the requested sensors and most of the requested components. As far as sensors go, cameras and pressure/depth sensors were the clear winners. We’ve addressed both of those in the Bar30 Pressure/Depth Sensor and in a few different camera options.
The most requested components were watertight enclosures and underwater connectors. Almost everything we listed in this question got at least 50% positive responses, which is why we’ve made products for nearly everything on this list! And don’t worry, we plan to have underwater connectors eventually as well!
We hope this information is informative, interesting, and shows you that we’re really focused on meeting our customer’s needs. Please take a chance to answer this year’s survey!