My son and I assembled an ELEGOO Smart Robot Car v4, which includes a wifi camera (ESP32?). The wifi does not appear on any of our 3 phones, all of which are Samsung. However, my laptop can connect and receive video stream from it.
When I connected the controller to my laptop's serial, it returned the following output, which is an indication of diagnostics passing:
:----------------------------:
wifi_name:ELEGOO-xxxxxxxx
:----------------------------:
Starting web server on port: '80'
Starting stream server on port: '81'
Camera Ready! Use 'http://192.168.4.1' to connect
Elegoo-2020...
dhcps: send_offer>>udp_sendto result 0
The wifi uses the 2.4GHz band, and is open/unsecured. I thought maybe these were factors, but I've been unable to find any information that would indicate that Samsung/Android would have problems with either.
The issue is not a factor of any other portion of the car, because I had the same results while it was disconnected from the car.
Any ideas?
Side comment: I was impressed with the quality of the camera. While playing with it on my laptop, it was returning crisp video as high as 1920x1200, I believe. Of course, the higher the resolution, the lower the frame rate. I figured a "toy" camera would maybe go as high as 1024x768.
RESOLVED ... after some late-night sleuthing. It shouldn't have been this hard.
My setup: Linux Mint Debian Edition 5, Arduino IDE 1.8.13
Steps I took to resolve issues I encountered:
Per the document found here: Camera module FAQ.pdf - Google Drive, I downloaded the ESP32_CameraServer arduino source. In step 5 of the document, where it recommends to select esp32 v. 1.0.4, I instead selected 1.0.6. In step 6 of the document, I randomly selected the source in channel 9.
Upon attempt to compile, I got an error that it could not find esp_camera.h. In file included from ...path_to_source.../program for camera module/channel 9/ESP32_CameraServer_AP_20220120/ESP32_CameraServer_AP_20220120.ino:10:0: CameraWebServer_AP.h:12:24: fatal error: esp_camera.h: No such file or directory #include "esp_camera.h" ^ compilation terminated. exit status 1 esp_camera.h: No such file or directory
This was resolved by ensuring all settings detailed in step 8 of the previous document were selected.
Namely: Setting Board = "ESP32 Dev Module", Partition Scheme = "Huge APP (3MB No OTA/1MB SPIFFS)", PSRAM = "Enabled"
Compile error related to python PATH exec: "python": executable file not found in $PATH on Arduino IDE
Resolved following the solution found here: macos - exec: "python": executable file not found in $PATH on Arduino IDE - Stack Overflow
where I needed to execute sed -i -e 's/=python /=python3 /g' ~/Library/Arduino15/packages/esp32/hardware/esp32/*/platform.txt.
Another solution might be to create a symlink: ln -s /usr/bin/python3 /usr/bin/python
And yet another compiler error, related to python: ModuleNotFoundError: No module named ‘serial’. Solution found here: https://forum.arduino.cc/t/modulenotfounderror-no-module-named-serial. In my case, not being a python developer, I had to install pip (sudo apt install pip) before I could execute the solution: sudo pip3 install pyserial.
After all that, my phone was able to connect to the camera, and I could control with the EleRobot app.
Thanks guys. I believe in the sharing of knowledge, so when I solve a problem, I will often share the solution as I applied it.
This is obviously not a rare issue, though I'm sure certain conditions need to be present, such as device types and software revisions. I really wonder how many people have had this issue, and were unable to resolve it due to the technical skills required.