You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The 6.1 SDK will cause a soft reboot after a while. It only seems to be caused once the RC phone is paired to the DS phone. I can force run opmodes via FTC-Dashboard completely fine when the connection between the RC and DS is severed. But, once I make that connection, within a minute or two, regardless of whether an opmode is running and regardless of whether the phone is plugged into an expansion hub or not (I am using phones + expansion hub, not a control hub), the phone will soft reboot. It is definitely a soft reboot because the tcpip server still lives after the reboot. Plus the reboot is much faster than a normal one.
(#60 is unrelated)I believe issue #60 is actually related to this. The behavior they describe is exactly the same as mine. However, the match logs they provide have no indication that anything actually crashes. Most likely because the OS has killed the app's logcat monitor(i have no clue what im talking about). The log I posted has the same error as #60, "unexpected exception thrown during lynx communication" but that's only because I ran an opmode in that sample. The app will crash regardless of whether an opmode is running or not.
Behavior is completely normal on 6.0. Behavior is still prevalent in a fresh clone of 6.1. Behavior is still relevant if I keep the FtcRobotControllerActivity the same as 6.0 so it's an internal SDK specific problem.
Video uses FTC-Dashboard just to demonstrate that you can still run opmodes. The app does still crash with a completely fresh installation. No dashboard dependency. No new opmodes. Etc.
Further clarification: They're e5 plays. However, #60 seems to be a control hub so I'm assuming it's not device dependent.
Wow. That video left my mouth open. Thanks for taking the time to make that.
A hunch from a quick look at the logs is that it might be related to sound playing. Can you please turn off sounds in the RC settings and try again? Please provide logs from that run as well, if it still crashes.
I'm curious why you think this is related to #60. That user was reporting intermittent crashes during an OpMode run, but you're reporting consistent crashes on DS connect.
I did notice that the DeadSystemException was preceded by the "did not receive expected priority boost on time" but that didn't really surface anything on google. The crash still occurs with the sound off. It seems that it still attempts to play the sounds. Just at 0 volume.
However, a blank app with the same compileSdkVersion, minSdkVersion, targetSdkVersion, and buildToolsVersion runs fine. So some other build config in the app SDK is causing it. I am not knowledgeable enough to figure that out 🤷
Workaround:
In the RC app settings, turn off "2.4 GHz WiFi warning"
wifiManager.is5GHzBandSupported() by itself works just fine, but it is invoked in every iteration of RecvLoopRunnable.run() [when robot attempts to refresh telemetry] and overloads internal system buffer:
Activity
Windwoes commentedon Jan 6, 2021
Would it be possible to provide a video of said behavior?
NoahBres commentedon Jan 6, 2021
https://drive.google.com/file/d/1ufhvSyGSilHeCMRR6J-8My_pzS_xUA5X/view?usp=sharing
Video uses FTC-Dashboard just to demonstrate that you can still run opmodes. The app does still crash with a completely fresh installation. No dashboard dependency. No new opmodes. Etc.
Further clarification: They're e5 plays. However, #60 seems to be a control hub so I'm assuming it's not device dependent.
NoahBres commentedon Jan 6, 2021
Model: e5 play
Android version: 8.0.0
Build number: OCP27.91-157
ItsHarper commentedon Jan 6, 2021
Wow. That video left my mouth open. Thanks for taking the time to make that.
A hunch from a quick look at the logs is that it might be related to sound playing. Can you please turn off sounds in the RC settings and try again? Please provide logs from that run as well, if it still crashes.
ItsHarper commentedon Jan 6, 2021
I'm curious why you think this is related to #60. That user was reporting intermittent crashes during an OpMode run, but you're reporting consistent crashes on DS connect.
NoahBres commentedon Jan 6, 2021
I did notice that the DeadSystemException was preceded by the "did not receive expected priority boost on time" but that didn't really surface anything on google. The crash still occurs with the sound off. It seems that it still attempts to play the sounds. Just at 0 volume.
https://gist.github.com/NoahBres/2e2b0cd3b3365a71ea7a8d7b6caf643a
ItsHarper commentedon Jan 6, 2021
@NoahBres Ooh. Please try turning off the 5 GHz warning in the RC settings and see if that works around the issue.
NoahBres commentedon Jan 6, 2021
That does prevent the crashing!
Windwoes commentedon Jan 6, 2021
Yeah, this is the smoking gun then
ItsHarper commentedon Jan 6, 2021
Did you turn off sounds, the warning, or both?
Edit: oh, I missed your other message
NoahBres commentedon Jan 6, 2021
Turned the sound back on. It works fine! Turning the 5GHz warning off seemed to prevent the crashes.
smartynenko commentedon Jan 6, 2021
Same here. Turning off 5Ghz warning fixed the issue. Only happens on Moto E5 RC after DS connection.
[-]6.1 Causes a soft reboot[/-][+]6.1 Causes a soft reboot on the E5 Play[/+]NoahBres commentedon Jan 8, 2021
I know y'all have this all figured out already internally but just in case anyone stumbles upon this issue and was curious:
The app causes an OS soft reboot on the E5 when this particular line is called:
https://github.com/OpenFTC/OpenRC-Turbo/blob/b75e0f8da4925c077c6c6e5d9d119676ebba2c56/RobotCore/src/main/java/org/firstinspires/ftc/robotcore/internal/network/WifiUtil.java#L173
wifiManager.is5GHzBandSupported(). Anything that callsisFeatureSupported()(internal function) in the WifiManager seems to crash. https://android.googlesource.com/platform/frameworks/base/+/refs/heads/oreo-release/wifi/java/android/net/wifi/WifiManager.javaHowever, a blank app with the same
compileSdkVersion,minSdkVersion,targetSdkVersion, andbuildToolsVersionruns fine. So some other build config in the app SDK is causing it. I am not knowledgeable enough to figure that out 🤷Workaround:
In the RC app settings, turn off "2.4 GHz WiFi warning"
smartynenko commentedon Jan 8, 2021
wifiManager.is5GHzBandSupported()by itself works just fine, but it is invoked in every iteration ofRecvLoopRunnable.run()[when robot attempts to refresh telemetry] and overloads internal system buffer:A/zygote: indirect_reference_table.cc:306] JNI ERROR (app bug): weak global reference table overflow (max=51200)Adding 100 ms delay fixes the issue, but probably creates some other downstream issues.
Do we need to check 5GHz support in every loop iteration or it can be done once and stored in a variable?
ItsHarper commentedon Jan 30, 2021
This issue will be fixed in the next version of the Robot Controller app.
Windwoes commentedon Feb 23, 2021
SDK v6.2 has been released, which fixes this issue.
Fix bad numerical derivative (fixes #79)