I’m currently working on a Spotter Buoy and Dev Kit to be deployed this June and I have some questions regarding how to get data from a Raspberry Pi Camera Module 3 (starting with pictures, but preferably videos) stored on a Raspberry Pi Zero 2W SD card (that will be wired to the Dev Kit board or Mote) to the Spotter Ebox to be sent via satellite or cellular to an Aqualink data platfrom (Monitoring Athenian School Pool | Aqualink Dashboard). Many Aqualink sites include livestream video specifically, and I was wondering if that would be possible through possibly using the Ebox’s satellite or cellular connectivity to stream video feed from the RPi cam directly to a youtube livestream that can later be embedded into the Aqualink site.
Please let me know if a livestream would even be possible. I’m happy to try to answer any questions and talk more about what I’ve been doing. I would really appreciate any advice!
Hi @clarak! That is an awesome Idea, but here are a few challenges that will prevent video for now. Images on the other hand are totally do-able and there are already several example projects on the forum! Here are the links for them:
With regards to video streaming, right now the Spotter buoy is designed for lower data rates via both cellular and satellite than what can support a video stream. Because of this, streaming video is currently not possible. However, if you wanted to go above and beyond you could build your own intermediate node that could perhaps live inside the spotter buoy and connect to wifi (if you are just going to have this in the pool), or another higher bandwidth telemetry option.
Hope this helps and perhaps inspires some ideas! Happy to answer any other questions!
I’ll also need a Palau SIM card (this buoy & camera will eventually be deployed in Palau) for this build.
The camera will be about 5m underwater, and I was wondering if you, or anyone else reading this, thought this might be possible or see any holes. The idea is to have the RPi and camera at this 5m depth, but tether the HAT to the pi through long cables that will be wound against the buoy cable. At this point, the plan is no longer to go through any cellular/satellite connection capabilities that the spotter has, but rather to create a separate connection for the pi.
I’m also using this platform called ZeroTier, which appears to be able to do what I need and link devices across different networks as if they were in the same area. This way, I was thinking I could reach the pi camera’s livestream (I can livestream from the pi to my computer using CamUI: GitHub - monkeymademe/CamUI: CamUI is a WebUI for the Picamera2 Library for the Raspberry Pi · GitHub, but they have to be on the same network) as if both devices are on the same network, when they are actually over 1000 miles apart.
I’m curious to see what anyone thinks of this idea, if there’s been something done like it before, or if it would even be possible.
Hi @clarak! I think your idea if feasible, but I would recommend 2 pi’s instead of tethering the HAT to the Pi through long cables.
I’d recommend this for a few reasons. First, the HAT talks to the Pi via UART and this would be unreliable over 5 meters, and would require a rather slow baud rate for it to ework, thus limiting your throughput and potentially being a severe bottle neck for the streaming. Second, tethering extra wires through the Spotter could lead to some unintended leaks and poses a risk to the buoys durability. Lastly you can use the already existing Smart mooring cable and be able to talk over Bristlemouth at up to 10Mb/s*!
* the pi will need to stream the data to a mote and then the mote can forward it on the Brisltemouth network, and this will likely be limited to 2Mbaud. We have tested this and it works, higher baud rates may be possible, but not yet confirmed.
I would advise using a mote + pi camera module down at 5 meters and have it streaming data to another mote + pi that lives in the Spotter Hull that provides your higher throughput cellular connection. One cool thing we have added recently to the Bristlemouth eco-system if the ability for a Pi connected over UART to a mote to be a full Bristlemouth node. So that means the Pi can publish to the Bristlemouth network just like a mote can. Check out this repo GitHub - bristlemouth/bm_sbc: Run Bristlemouth processes on linux with serial comms to a mote · GitHub and let me know if you have any questions on how to set this up or get your data flowing from pi → mote → spotter. Similarly take a look at the native_serial_bridge example app which is still in a PR here to run on the mote: Feat/uart sbc by towynlin · Pull Request #378 · bristlemouth/bm_protocol · GitHub .
These two things will allow you to run Bristlemouth on a Pi, and have the UART between the Pi and Mote act as a Bristlemouth port.
A potential limiting factor is power. The Spotter can only provide 7W power. So you will need to make sure the cell modem does not draw too much current. Similarly, over all power consumption/duration may be limited. There are ways to lower a Pi’s power consumption, such as turning off wifi, or lowering certain clocks that you might want to do. You may also want to consider turning the streaming off if Spotters battery gets too low, or duty cycling power to the Bristlemouth network to increase the duration. Happy to brainstorm more here if you want.
Let me know if you have any follow up questions! Happy to help!