
BUILDING YOUR OWN WATERWHISPER
If you want to build your own hydrophone and participate in the very important collection of sound data regarding marine sound pollution, this guide will walk you through the process step by step.
Parts needed (and quantity):
-
Raspberry Pi Pico W (1 piece) https://www.electrokit.com/en/product/raspberry-pi-pico-w/
-
ADC-module - ADS1115 16-bit (1 piece) https://www.amazon.se/dp/B07PXFD3BH?psc=1&ref=ppx_yo2ov_dt_b_product_details
-
TRRS 3.5mm Jack Breakout (1 piece) https://mackablar.se/trrs-35-mm-jackstik-till-arduino-4386.html?q=trrs
-
USB breakout board (1 piece) https://www.amazon.se/dp/B07X3VN7KB?psc=1&ref=ppx_yo2ov_dt_b_product_details
-
Wifi-USB Modem MF79U (1 piece) https://www.amazon.se/dp/B08WPXRTRL?psc=1&ref=ppx_yo2ov_dt_b_product_details
-
Solar Power Manager (B) (1 piece) https://www.waveshare.com/solar-power-manager-b.htm
-
Solar panel (1 piece) https://www.biltema.se/bil---mc/elsystem/solpaneler/solpanel-2000045344?gclid=CjwKCAjwscGjBhAXEiwAswQqNN_H1WoUKfG6XsQb_8QPF_NaaCSt3mYtUuGQe3HaHcjOw4Tai8NX7hoCCxEQAvD_BwE
-
Hydrophone from https://jezrileyfrench.co.uk/hydrophones.php (1 piece)
-
SIM-card loaded with cheap 4G-data (1 piece) from your local phone carrier
-
Junction box roughly 130 x 220 x 95 mm (1 piece) https://www.biltema.se/bygg/elinstallationer/eldosor/kopplingsdosa-130-x-220-x-95-mm-2000047449

Figure 1: Wiring scheme for WaterWhisper
Connecting the electronics

01
Gathering supplies
Locate all your parts and a soldering iron. If you have never soldered before, here is a good guide to read before as an introduction: https://www.makerspaces.com/how-to-solder/
Be sure to follow the necessary safety precautions to avoid injuring you or damaging the hardware.
02
Start soldering
Solder two cables to the “Sleeve” and “Tip” terminals on the TRRS 3.5mm Jack Breakout. Make sure to get a good connection and to not short any of the legs by mistakenly connecting two legs with a piece of solder. This goes for all the following soldering steps.


03
ADC-module
Solder 4 cables onto “VDD”, “GND”, “SCL”, and “SDA” respectively on the ADS1115 board.
04
Connect the AUX-breakout with the ADC
​Solder the cable coming from “Tip” on the TRRS 3.5mm Jack Breakout to the A0 pin on ADS1115 board.


05
Soldering the Pico
Solder two cables to VSYS and GND on the Raspberry Pi Pico.
06
USB-breakout board
Attach two cables to the positive and negative terminals on the USB-breakout board


07
Connecting the ADC and Pico
Attach the other end from the cables attached to SCL & SDA on the ADC-module to the GP14 & GP15 on the Raspberry Pi Pico.
08
Connecting the positive cables
​Find the cables connected to the following pins and solder them all together​:​​
-
Positive on the USB Breakout board
-
VSYS on the Raspberry Pi Pico
-
VDD on the ADS1115 board


09
Connecting the negative cables
Find the cables connected to the following pins and solder them together:
-
“GND” on the Raspberry Pi Pico
-
“Negative” on the USB Breakout board
-
“GND” on the ADS115 board
-
“Sleeve” on the TRRS 3.5mm Jack Breakout
10
WiFi-module
Now it is time to connect the Wifi-module. To do this, remove the cover from the top side and insert the SIM-card into the slot. Also write down the SSID and Key for the Wifi, you will need this later. Then put the cover back on and attach the USB connector (male) to the USB-breakout board (female).
_edited.jpg)
.jpg)
11
Electrics done
When you are all done with connecting the electronics togheter it should look something like this.
Programming the Pico
12
Download Thonny
Download and install the latest version of the program Thonny from https://thonny.org/
If you never have used your Pico before you need to load it with MicroPython. To do this, follow ths guide:
https://startingelectronics.org/tutorials/raspberry-PI/easiest-way-to-start-using-a-raspberry-PI-pico/​


13
Coding in Thonny
When you open Thonny it should look something like this. Download the code for the Pico from https://github.com/Sebbe00/Hydrophone and open the file in Thonny.
14
Change the SSID and Password
In the code on line 8 and 9, change SSID and PASSWORD to the values you wrote down in step 10. Remember to have quotation marks around your text, or the code won't run properly.


15
Changing webserver
Next you need to modify where your data should be uploaded to. This is regulated in the “push_data” function.
We would love to store the data on our servers. To be able to do this, please contact us and we will set up a unique URL for you to upload the data to. In your email, please include where you will be collecting the data and the time frame for when the sensor will be deployed.
If you want you can also set up your own webserver to store the data on, but we will not cover how to do that in this guide. Another possibility is to attach a SD-card reader to your sensor and store the data locally, but this is also out of the scope for this guide.
16
Test run the program
After you have made the changes, test run the code by clicking the green play button in the top left corner.
In the window “Shell” you should recive a output similar to the picture attached. Check that you get several lines with ADC Value, Voltage and dB values, and that you get a line reading “Request successful”.
Also connect the hydrophone and make sure the readings go up and down when you tap on the membrane. Ignore the red error-message, this wont happen when the code runs on the Pico alone without being attached to your computer.


17
Saving the file
Save the file by clicking "Save as..." When asked make sure to save it to the Pico itself. Also save it as “main.py”. Any other name will prohibit it from running automatically when you turn your sensor on.
Building the enclosure
18
Preparing the box
Remove two knockout covers on the bottom of the junction box. Decide beforehand if you want the box vertical or horizontal, depending on the location you plan to attach the box.
.jpg)

19
Fitting the first components
Attach the Solar power converter and the WiFi-module with the USB breakout board as the picture shows. If you have opted for another box, you might want to adjust the placement. Preferably use epoxy or some other strong glue, but strong double sided tape might work as well.
20
Start fitting components
Attach the Solar power converter and the WiFi-module with the USB breakout board as the picture shows. If you have opted for another box, you might want to adjust the placement. Preferably use epoxy or some other strong glue, but strong double sided tape might work as well.


21
Waterproofing the outside cables
Make a small insertion in the rubber attachment and pull the hydrophone cord through. Then insert the rubber attachment into the box. Do the same for the solarpanel cable. If the seal around the cable isn't perfect, fill the gap with some SikaFlex or similar compound.
22
Attach the last parts to the box
Attach the ADC-module and Pico to the box. Exact placement isn't that important, but make sure they can't accidentally move and short circuit each other.


23
Taping the cables
Tape over the exposed soldering connections with electrical tape
24
Connect the last cables
Make sure thtat the Solar Power mangager is turned off. Connect one end of the USB cable to the solar power manager and the other end to the Pico.
​
Then connect the postive and negative cables from your solar panel to the input on the solar power manager (The green terminals pictured to the right).
​
Lastly attach the AUX from the hydrophone into the AUX-breakout board.
.jpg)
25
Double check
Double-check that everything is properly connected and that all parts are securely attached. You are now ready to deploy your sensor. Make sure to keep it dry inside the box until you turn the sensor on and attach the lid permanently.


26
Deploying the sensor
Make sure everything is connected right and then your sensor is ready to deploy. To deploy it, attach the box to a buoy and drop the hydrophone into the water. Wait with turning your Solar Power Manager on until it is ready to deploy. When you turn the Solar Power Manager on it will start the Pico and the sensor will start recording and transmitting data.
27
Last checks
​When the whole sensor is deployed check the following things:
-
That it has started transmitting data and that our website is receiving it.
-
That all connections seem to be watertight and that the box is completely closed.
-
Try to check the sensor once every other week and clean the hydrophone from potential algae growth, barnacles etc.

.jpg)
28
Wait for the data
Now it is time to let your sensor run and collect data. If you have configured it for upload to our website you can se continuous updates under the "Data" tab.
Troubleshooting the sensor
Request failed with status code XXX:
If you receive this error message it means that something is wrong with our website and the site is currently unable to receive data. Please wait a few hours and try again later to see if the problem is fixed. If not, reach out to us and we will fix it. Please include the full error message to help our troubleshooting.
Error occurred: {ERROR MESSAGE}
This is a catch all for all errors regarding the hydrophone or ADC-module. It most likely means that the hydrophone/ADC-module has output an unexpected value, but could also stem from different problems. First make sure that all your connections on the hydrophone (including the AUX), ADC-module, and GP14/15 pins on the Pico are fully connected without any interference. If this doesn't solve the problem please contact us for help with troubleshooting. Attach the full error message in your email as well as information about when and how the problem started. .
Error occurred while connecting to Wi-Fi:
If you receive this as an error message when test running your code, an unexpected error has happened during the WiFi-connection process. Please contact us and we will try to help with the troubleshooting process.
Failed to establish a Wi-Fi connection after maximum retries:
If you receive an error message similar to the below picture there is something wrong with your wifi connection. The standard number of connection attempts is 50, and if the Pico still isn’t able to connect to WiFi it will go into “Deep sleep-mode”. This is to conserve energy as well as stop it from getting stuck in a continuous loop. To wake it from “deep sleep-mode” simply cut the power and then turn it on again.
To fix the problem with the Pico being unable to connect, first check that the WiFi-module is lighting up blue. If it isn't, check your connections and make sure that the USB-breakout board is getting power.
If it is lighting up blue, then check that you have entered the correct values for “SSID” and “Password” at the beginning of the code.
If the values are correct but your Pico isn’t connecting, then try to connect the module to a laptop and see if another device (laptop, phone etc) is able to connect to the WiFi-hotspot. If your laptop also is unable to connect to the hotspot, there is a problem with the WiFi-module and it needs replacing.
If you are 100% sure that the “SSID” and “Password” values are right in your code, another device is able to connect to the WiFi-hotspot but the Pico still isn’t able to connect, the problem lies within the Pico itself. Try restarting it several times and if you have no success you might need to replace the Pico.
The website has stopped receiving data from my sensor:
One problem can be that our website is down, or that there currently is a problem with our retrieval server. If this is the case we will update you on our homepage.
There are several other possible reasons for this problem. It can be because your SIM-card has run out of data, the sensor has been damaged in some way, the sensor has run out of battery and the solar panel is unable to charge or something other than this. In any case you will need to retrieve your sensor and do further troubleshooting.
If you have any questions about this, please reach out and we will figure out if the problem lies at our end or at the sensor.
​