I’ve been trying to implement code to switch the data displayed on the controller LCD screen based upon a button press to switch context.
I currently have a simple example attached which allows you to cycle through a couple display formats if you press ‘Button Down’ on the control, I seem to not get any response from the method Screen.clearScreen() when I invoke it,
The Attached sample has no motors or sensors defined and writes static data, but as you cycle through the displays, you’ll see when you get back to showing the first screen, the residual characters from other displays are still showing. so the clear screen method does not work the way I expected it to,
Any suggestions? am I doing something wrong? or missing something?
a. It seems you’re missing the build file in that download
b. It would be much easier to select all(Ctrl + A), copy(Ctrl + C), then paste(Ctrl + V) it in here.
I was able to download → extract and build on my other computer, but I don’t have the robot there. I used the export function on purpose as it is supposed to capture all the necessary files.
The project I ‘simplified’ from has an external ‘shared code’ .cpp and .h files for code I want to write once and use in multiple applications. so I’m not sure copy paste would be as easy as it may sound.
No, clear screen is messed up. Part of the problem is that the controller uses proportional text, 20 spaces doesn’t cover 20 characters of other types, but there are also bugs in that area that need addressing. I’ll see what we can do about it for the next vexos release.
Hm, we tested this pretty well, but not with your code.
Just to confirm, you updated to vexos 1.0.12 and also tethered the controller and allowed that to update. Installed the latest VEXcode Pro (2.0.2) released today, rebuilt the project and downloaded to the V5 brain. After doing that you still see some residual text on the controller screen when using clearScreen() ?
Yes, indeed once I updated the Brain and Controller the fix resolves the issue. I did not initially update the devices, I just downloaded and re-installed the VexPro S/W. Since I didn’t notice any warnings the Firmware needed an update I didn’t even think of it till you pointed it out.
So out of date firmware has surprised me at least once before, is there a recommended method to ensure we are up to date. I.e. should I always connect the Brain via USB after a VexPro Update to ensure the F/W is the latest? and if the Brain F/W is updated I think it’s always been my process to connect all my smart devices that update. At least the Brain alerts you if you plug in a device off the self that missed an update .
I usually just have my controller plugged into the USB on the PC when programming / playing with the rig I have, I don’t normally attach the brain directly to the PC.
Kevin, that’s something we need to improve. It’s disabled because we don’t want to try and do an update wirelessly due to the time it would take, but we should at least indicate an update is available.