CE432 Robotics II
Lab 3: Video Streaming Web Server and Robot Car
Name: Audra Benally

Email: albenally1@fortlewis.edu

1. Title: Video Streaming Web Server and Robot Car (Module 4 on Rui's Textbook)

2. Introduction: In this lab we followed several video streaming tutorials in Rui's ESP32-CAM textbook. One big goal of the lab was to build a working remote control robot car using the given parts. Another goal was to design a PCB in Eagle to replace the PCB board that will be used to wire up the robot car in this lab.

3. Materials and Methods:
        Materials:

                     - ESP32-CAM
                 - Computer
                 - Various connector wires
                 - Soldering Station
                 - Tutorial References
                 - Robot Car kit
                 - Various screws and nuts
        Methods:
             Follow the given tutorials from the ESP32-CAM textbook and learn how to video stream using the ESP32-CAM. Then utilise the soldering stations and tools in the lab to wire up and connect the robot car to the ESP32-CAM microcontroller. Then create a PCB  to replace the prototype PCB board used to wire everything together.

4. Results:

       Task 1:
   
             Figure 1. Video streaming

       Task 2:
   
             Figure 2. Video streaming with BMP180 sensor readings. The Altitude still hadn't come up after about 10 minutes. Sensor was taking altitude readings though.

       Task 3:
    Video Link: https://youtu.be/4SYrjc5pliU
             Video 1. The Robot Car in action.

   
             Figure 3. Finished Robot Car.

   

                Figure 4. Front of Robot Car.

   
                Figure 5. Upside down camera video from Robot Car.

       Task 4:
    Video Link: https://youtu.be/RmcNu9XxU0U
             Video 1. The PCB Robot Car in action.


   

   

   



5. Discussion
    For this lab the video streaming tutorials were very straightforward and easy to follow. I hadn't gotten all my soldering done by the time the lab was due so I am turning this lab in a day late. I was able to get the car to work and move around using the online buttons. Unfortunately I wasn't able to get the camera to rotate. I had issues like this in the past (coding issues) and was hoping to avoid it by mounting the camera on its side. I put it on the wrong side though and the image ended up being upside down. I tried to follow the rotation example in Rui's textbook from
page 142 where the code made a button that would rotate the picture. I started on the PCB board but haven't gotten very far. It has been awhile since I've used the Eagle software so it's pretty slow progress. This was a really fun lab though. I wish I was able to start on it earlier but unfortunately my semester so far has been crazy and unpredictable. Also, my code is labeled "T3code.txt" in my Tutorial 3 folder.