Forum Replies Created
Very cool Benjamin. Thanks for sharing!
Any of the channels on the Modem-M64 will work at close range, when getting closer to the range limit (200m) the choice of channel matters.
Channel 1 has a bit lower signal strength which gives shorter range
Channel 2-3 has the strongest signal (and is attenuated least in salt water) which is why they are recommended.
Channel 4 is slightly non-linear, it should work but probably has shorter range and might be more unpredictable.
Channel 6-7 are good but will be attenuated more in salt-water than channels 2-3 which means shorter range.
I’m guessing that any of the channels will work fine at 60-80m, so try to find the channel that gives you the least interference.
Great to hear that you are happy with the performance of Underwater GPS.
The coordinate system used is WGS 84 (the same as GPS). According to Wikipedia the EPSG number is EPSG:4326.
Check that you have connected all wires correctly and that you are using the correct serial port.
A good way of checking if you are able to communicate with the modem is to connect via a serial terminal like PuTYY (More info here). Use baud rate 115200. Once connected you can type “wcv” + Enter and you should get a response from the modem if everything is working correctly. Then you can retry using with the Python library.
Does the depth actually update in QGroundControl?
If the depth is correctly updated in QGC I suggest you try to connect to the script on the companion computer by running
screen -r wldriver. This script should print out what it is sending, so you should be able to see if it receives the data correctly and if sending works without error messages.
(ref https://github.com/bluerobotics/companion/blob/master/.companion.rc#L25 )
What do you want to achieve? Are you trying to control a BlueROV2 using a Modem-M64?
We have made an example of controlling the BlueROV2 using a joystick directly (Not using QGroundControl).
Code is available on github:
It is not very practical to control the BlueROV2 sending joystick data over an acoustic modem since you don’t have enough bandwidth for sending video back and there is some latency.
A better use of the Modem-M64 would be to send waypoints to an autonomous underwater vehicle (AUV)/autonomous BlueROV2.
As far as I know waypoints are not supported by the ArduSub software at this point. Contact Blue Robotics directly for the status on that support.
No problem! Unfortunately we don’t have any examples using C available. If you would be willing to share the code you implement (on github or similar) I’m sure others would be thankful.
Yes, you can use the same as the table.
Your example is almost correct, you need to include a newline too. So you would write: Serial.print(“wcv\n”)
We haven’t tested the Python library on MicroPython, so I have no idea if it will actually work.
The Python library has some fancy functionality which might not be needed in your application.
You can actually communicate using the modems by typing the commands in a serial terminal directly.
If you type the protocol example commands manually you should be able to get communication going:
Implementing the basic communication functionality should be fairly straight forward.
I suggest ignoring the checksum to simplify the code (the checksum can be used to detect bit errors on UART but is not required)
Setting configuration (channel, role) is persistent so you can set that manually in advance of using the modems.
So the what you need to get the basic functionality working is:
– Implement sending data. Ie. sending ‘wcq,8,’ then exactly 8 data bytes and then newline (‘\n’)
– Implement reading packets back. Ie checking that the line you receive starts with ‘wrp,8,’. The next 8 bytes are the payload)
Full protocol documentation is here:
The Underwater GPS does not need an internet connection to work, so the positioning will work perfectly when offline.
We use OpenStreetMap in the map view. This map will only be able to show the tiles that have already been loaded (ie are cached in your browser) and not load new tiles when offline.
This means that to show map when offline you need to save the tiles manually to the cache before going out on a mission:
Go to the area that you will operate in: use the mouse to move around the map, zoom to a different zoom level and repeat for all relevant zoom levels to let the tiles be cached by the browser. (This needs to be done on the computer/browser that you are going to use on the mission).
(Yes we agree: It would be a great future addition to be able to select an area and download all tiles automatically for offline use)
Thanks for the feedback Justin!
NMEA input directly on the board without a computer is something we want to support in the future.
By testing the application above and giving us feedback you can help us make this a reality.
Sounds like you are not seeing the upgrader but a cached version of the web gui. You probably need to try to refresh the page or browse in “private mode” (see notes in the right side of step 5 in the manual).
If you are still having issues after trying the page in incognito mode, please contact us on support and send a screenshot of what you are seeing.
Thanks clarifying and thanks for the feedback!
Do you use different setups/ships in your use? If so, this feature is probably useful even if the configuration is keep through updates.
I’m thinking that we’ll probably make the configuration persistent when upgrading in the future, but we’ll evaluate both options.