This week I investigated how to connect a microcontroller to a laptop wirelessly. The requirements for this connection include streaming live video and transmitting a signal from a keyboard press. I discovered that bluetooth would not be suitable for our needs because bluetooth does not have enough bandwidth to stream live video. So, I looked for a microcontroller that connected to WiFi. The most suitable processor for our needs seems to be a Raspberry Pi. They are affordable, have WiFi connection, and have a large system of python libraries that can be used to set up live stream video and store photographs. It also has a large number of GPIO pins that can connect to our motors and pulley system for moving the boat and raising and lowering the camera. In terms of the camera, I decided that it would make the most sense to use a Raspberry Pi compatible camera, because the software integration would be much smoother. There were two kinds of cameras I investigated. First, I noticed that they make an AI camera that has space for neural networks that have been pre built or uploaded by the user. This camera was $70. Another camera I found suitable was the Raspberry Pi Camera 3. It boasts 12 MP resolution and a video recording of 50 fps. It also has an autofocus feature that I thought would be helpful to make coral more clear in photographs. I found out that the length of the connector between the Raspberry Pi 4 and camera is 24”, our goal depth for the camera. With the Raspberry Pi 5, the connector length is only 19”. This would present a problem if we needed to use a Raspberry Pi 5 because we would not be able to meet our depth goal. I shared all of these findings with my group in our meeting on Friday and we decided to ask for the Raspberry Pi 4 8 GB from the ECE inventory. This will allow us to decide if the processing speed of the Raspberry Pi 4 is sufficient for our use case.
Once I decided that the Raspberry Pi system would be ideal for our use, I looked into how we would connect the computer to the raspberry pi and set up the live stream video. I found a nice tutorial on YouTube that I will try when we get our Raspberry Pi and camera.
I also started to investigate how we can control the motors using the raspberry pi. I found out that it has 40 GPIO pins that can output about 3 volts of power. The motors will pull more current than the raspberry pi is rated for, and so we cannot power the motors using the pi itself. We will need to power the motors using external batteries, and then use the IO pins only to control the connection between the motor and battery. I found a motor driver part that we can use to bridge between the motor and the raspberry pi. A key pressed input will be transferred to the raspberry pi using a server (SSH) connection, and control two motors. To turn right, the left motor will receive the on signal. To turn left, the right motor will receive the on signal. To go forward, they both will turn on. I asked to order the converter and the motor set with propeller blades.
An upcoming challenge I am anticipating is controlling the temperature of the raspberry pi. Given how much we are demanding of it, we will need a cooling attachment and possibly multiple raspberry pi’s, one for the video stream and the other for movement of the boat. Next week, I hope to figure out what materials we need to order to build the boat, and watch more tutorials about how to set up the live stream.
![](http://course.ece.cmu.edu/~ece500/projects/s25-teamc6/wp-content/uploads/sites/356/2025/02/Screenshot-2025-02-08-at-12.48.30 PM-1-300x241.png)