GalaxyRVR continuously disconnecting from app. Pretty much unusable

iPhone 18.x. I don’t think this is necessarily a “phone” issue, but it might be the phone software that’s disconnecting. I can open an HTTP connection to the ESP32 with no problem and I’m prompted with the OTA upgrade page.

1 Like

Me ocurrió lo mismo con mi Rover, comencé revisando la carga de la batería, después añadí una antena externa al Esp32 ( cambiando el resistor de posición) y finalmente descubrí el problema, en el teléfono que usas para conectar al RVR, debes hacerle olvidar todas las demás SSDI que tengas y sus contraseñas, porque de lo contrario tú teléfono se quiere conectar con otra red que tenga internet y por eso se desconecta.
Espero que se entienda, no hablo inglés

1 Like

No worries. We love Google translate! That solution did not work for me because I’m not connecting directly to the rover as an AP (but that does fail also). I’m connecting over my home wifi network and it does not drop packets. It just disconnects the app. I am always able to ping the ESP32.

We’d like to check if your issue has been resolved. If it has, could you kindly share the solution that worked for you? This will help us improve our troubleshooting process for future cases.

If the problem persists, we may need to send you a replacement ESP32 module to see if that resolves the issue. Please contact service@sunfounder.com to provide your address.

It is not resolved I’ve just been very busy with work. I’ll send an email to service.

Please try switching between AP mode and STA mode, then re-upload the galaxy-rvr.ino code using the IDE, and reconnect via the APP to check the results.

If the repeated disconnections persist, we recommend visiting the ESP32-CAM OTA update page and trying different channels multiple times. Press the reset button to restart the device, then reconnect via the APP to check its performance.

If the issue still cannot be resolved, please contact service@sunfounder.com to request a replacement ESP32 module to see if that resolves the problem.

I’m sorry, but I have tried all these steps over and over so many times now. It is not helping.
I work in IT servicing hundreds of people in Azure/AWS/ESX environments - so I’m pretty darn good with technology, and also an avid Arduino hobbyist/builder in my free time. These steps do not solve the problem. Also, I live in a very rural area with no neighbors or other wifi signals. I have one access point in my home and only 2.4ghz is enabled on a single SSID and channel so there is little chance of interference from neighbors.
I will try it all one more time after which it will sadly sit on a shelf because my time is more valuable than this.

Wrote galaxy-rvr.ino again. Tested all steps. no change…just random disconnects.

Output from upload:

FQBN: arduino:avr:uno
Using board ‘uno’ from platform in folder: C:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Using core ‘arduino’ from platform in folder: C:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6

Detecting libraries used…
C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp -o nul
Alternatives for SoftPWM.h: [SoftPWM@1.0.1]
ResolveLibrary(SoftPWM.h)
→ candidates: [SoftPWM@1.0.1]
C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp -o nul
Alternatives for SunFounder_AI_Camera.h: [SunFounder AI Camera@1.1.1]
ResolveLibrary(SunFounder_AI_Camera.h)
→ candidates: [SunFounder AI Camera@1.1.1]
C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera\src C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp -o nul
Alternatives for ArduinoJson.h: [ArduinoJson@7.4.0]
ResolveLibrary(ArduinoJson.h)
→ candidates: [ArduinoJson@7.4.0]
C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera\src -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\ArduinoJson\src C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp -o nul
Using cached library dependencies for file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\car_control.cpp
Using cached library dependencies for file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ir_obstacle.cpp
Using cached library dependencies for file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\rgb.cpp
Using cached library dependencies for file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\soft_servo.cpp
Using cached library dependencies for file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ultrasonic.cpp
Using cached library dependencies for file: C:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM\SoftPWM.cpp
Using cached library dependencies for file: C:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera\src\SunFounder_AI_Camera.cpp
Generating function prototypes…
C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera\src -IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\ArduinoJson\src C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp -o C:\Users\user274\AppData\Local\Temp\2555312221\sketch_merged.cpp
C:\Users\user274\AppData\Local\Arduino15\packages\builtin\tools\ctags\5.8-arduino11/ctags -u --language-force=c++ -f - --c+±kinds=svpf --fields=KSTtzns --line-directives C:\Users\user274\AppData\Local\Temp\2555312221\sketch_merged.cpp

Compiling sketch…
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++” -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR “-IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino” “-IC:\Users\user274\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard” “-IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM” “-IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera\src” “-IC:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\ArduinoJson\src” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp” -o “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp.o”
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\car_control.cpp.o
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ir_obstacle.cpp.o
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\soft_servo.cpp.o
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\rgb.cpp.o
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ultrasonic.cpp.o
Compiling libraries…
Compiling library “SoftPWM”
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\libraries\SoftPWM\SoftPWM.cpp.o
Compiling library “SunFounder AI Camera”
Using previously compiled file: C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\libraries\SunFounder_AI_Camera\SunFounder_AI_Camera.cpp.o
Compiling library “ArduinoJson”
Compiling core…
Using precompiled core: C:\Users\user274\AppData\Local\arduino\cores\arduino_avr_uno_1a3981ac10a4d0dae9fb8d4e89673149\core.a
Linking everything together…
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-gcc” -w -Os -g -flto -fuse-linker-plugin -Wl,–gc-sections -mmcu=atmega328p -o “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.elf” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\car_control.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\galaxy-rvr.ino.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ir_obstacle.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\rgb.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\soft_servo.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\sketch\ultrasonic.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\libraries\SoftPWM\SoftPWM.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900\libraries\SunFounder_AI_Camera\SunFounder_AI_Camera.cpp.o” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/..\..\cores\arduino_avr_uno_1a3981ac10a4d0dae9fb8d4e89673149\core.a” “-LC:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900” -lm
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy” -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.elf” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.eep”
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-objcopy” -O ihex -R .eeprom “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.elf” “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex”
Using library SoftPWM at version 1.0.1 in folder: C:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SoftPWM
Using library SunFounder AI Camera at version 1.1.1 in folder: C:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\SunFounder_AI_Camera
Using library ArduinoJson at version 7.4.0 in folder: C:\Users\user274\OneDrive - Contoso\Documents\Arduino\libraries\ArduinoJson
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-size” -A “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.elf”
Sketch uses 15520 bytes (48%) of program storage space. Maximum is 32256 bytes.
Global variables use 1022 bytes (49%) of dynamic memory, leaving 1026 bytes for local variables. Maximum is 2048 bytes.
“C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude” “-CC:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf” -v -patmega328p -carduino “-PCOM3” -b115200 -D “-Uflash:w:C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex:i”

avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

     System wide configuration file is "C:\Users\user274\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

     Using Port                    : COM3
     Using Programmer              : arduino
     Overriding Baud Rate          : 115200
     AVR Part                      : ATmega328P
     Chip Erase delay              : 9000 us
     PAGEL                         : PD7
     BS2                           : PC2
     RESET disposition             : dedicated
     RETRY pulse                   : SCK
     serial program mode           : yes
     parallel program mode         : yes
     Timeout                       : 200
     StabDelay                     : 100
     CmdexeDelay                   : 25
     SyncLoops                     : 32
     ByteDelay                     : 0
     PollIndex                     : 3
     PollValue                     : 0x53
     Memory Detail                 :

                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
       flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
       lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
       hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
       efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
       lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
       calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

     Programmer Type : Arduino
     Description     : Arduino
     Hardware Version: 3
     Firmware Version: 4.4
     Vtarget         : 0.3 V
     Varef           : 0.3 V
     Oscillator      : 28.800 kHz
     SCK period      : 3.3 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e950f (probably m328p)
avrdude: reading input file “C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex”
avrdude: writing flash (15520 bytes):

Writing | ################################################## | 100% 2.40s

avrdude: 15520 bytes of flash written
avrdude: verifying flash memory against C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex:
avrdude: load data flash data from input file C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex:
avrdude: input file C:\Users\user274\AppData\Local\arduino\sketches\502D08009143218E2AF6F4AE0A90D900/galaxy-rvr.ino.hex contains 15520 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 1.84s

avrdude: verifying …
avrdude: 15520 bytes of flash verified

avrdude done. Thank you.

Is this a good version?

8mb limit for a video?? Seriously?
Here is link to video on my OneDrive.
RVR video of error happening.

Regarding the questions:

  1. AP Channel Selection
    The optimal AP channel depends on your specific environment, so we cannot definitively recommend one channel over others. We suggest testing different channels in your environment to determine which performs best.
  2. Forum Attachments
    Yes, the forum has file size limitations for attachments. Uploading files to OneDrive and sharing the link (as you did) is the perfect solution - great work!
  3. Video Analysis
    We’ve reviewed your video and observed some disconnection issues. Additionally, when your APP successfully connects, the camera feed doesn’t display immediately. Could you please:
  • Click “Stop” and then “Run” again to see if the video feed appears normally?
  1. Hardware Replacement
    We will send you the camera replacement to help resolve the issue.

I’m still not sure this is an issue with the ESP32. I suspect it’s a problem in the phone applications and their web sockets implementation. I haven’t had time to reverse engineer the protocol and just drop this on a simple web based client but that’s going to be my nice take.

As for building the firmware and uploading to the ESP32 thats a whole other problem to contend with because of the various platform and library version issues.

To better assist you, could you please:

  1. Share your current APP version number (screenshot preferred)
  2. Try the following troubleshooting steps:

Step-by-Step Solution:
:small_blue_diamond: Update SunFounder_AI_Camera to v1.1.1
:small_blue_diamond: Upgrade ESP32-CAM firmware:
Firmware Update Guide
:small_blue_diamond: Adjust Wi-Fi channel:
Wi-Fi Channel Change Guide
:small_blue_diamond: Re-upload galaxy-rvr.ino code:

Code Upload Guide

If disconnections persist:
• Downgrade ESP32-CAM firmware to v1.4.0 (attached file)

Should the issue remain unresolved, we’ll arrange a free replacement ESP32 module for you.

Please share your test results – we’re committed to solving this for you!

please download here:ai-camera-firmware-1.4.0.zip - Google Drive