Possible ProffieOS 7.7 + v3 bug? Cannot run anything on Serial Monitor nor access WebUSB

Tried 2 different v3.9 boards (both from Tritium and both work on 6.9). Ran both Arduino 2.1.3 as well as 1.8.13. Running the same test config on 6.9 works fine on Serial Monitor and WebUSB. Everything else works fine (so far that I’ve seen). But on 7.7, there is basically nothing happening on the serial monitor (just blank). WebUSB also does not load.

Config

That sounds like some sort of buffer overflow somewhere.
I will try it and see if I get the same issue.
Can you tell me the exact settings you are using in Arduino → Tools?

Also, I assume you’re version 3.6.0 of the arduino-proffieboard plugin?

1 Like

For my first try, I was not able to reproduce the problem.

1 Like

Board: Proffieboard v3
USB: Serial + WebUSB
DOSFS: SDCard (SDIO Default Speed) (Also tried High Speed)
CPU: 80 Mhz
Optimize: Smallest Code
Programmer: STM32 Bootloader

And yep, version 3.6.0. Also trying Adding Serial + WebUSB + Mass Storage, board does not show up.

I just tested with a Tritium v3.9 board.
ProffieOS 6.7 serial monitor is good.
ProffieOS 7.7 serial monitor is blank.
ProffieOS 7.x master, serial monitor is good.

1 Like

Interesting.
Did you do a single test of each, or multiple?
(Trying to rule out random chance effects.)

Multiple attempts on multiple boards on my end for what it’s worth. I did try 7.x master and the serial monitor does work on both boards.

I have a theory, now to see if I can prove it…

(I assume you mean “github master”, not “7.x master” since 7.x and master are separate branches)

Yes apologies. github master

So far no luck.
It just works for me.
I did notice you have KEEP_SAVEFILES_WHEN_PROGRAMMING in your config file, which could potentially be causing problems. ProffieOS 6.9 would probably ignore the savefiles from ProffieOS 7.x though, since they don’t really look like save files.

I also looked through the differences between 7.7 and the github master, and there isn’t a whole lot, and none of them seem like they should affect the serial monitor.

My theory is that there is a bug somewhere which touches memory out of bounds, maybe in the serial code itself. But of course it could be something completely different.

So when the serial monitor doesn’t work, does anything else work? Does the LED pulse or blink?

These results were using a board straight out of the box, no SD card.

Didn’t have any ini or tmp files on the SD cards tested. Removed the line from my config file but still the same issues. Also tried no SD card like Brian. Same results.

LED’s pulse in a sawtooth wave on 6.9. On 7.7, it pulses until you enter serial monitor or when Windows loads up the SD card’s content, at which point it just turns straight solid.

Hmm, so I do seem to have found a problem, but I’m not sure if it’s the same problem…

Basically, it seems that if I use mass storage, and there is no sd card in the board, it crashes, which causes the port to disappear.

That means it’s crashing or freezing.

So, I wonder, did you mean that “Serial + WebUSB” had a worked, but “Serial + WebUSB + Mass Storage” didn’t? (Or neither worked?)

Neither “serial+webUSB” nor “Serial + WebUSB + Mass Storage” worked for serial monitor. With Mass Storage, Windows doesn’t even load up the SD card’s content.

Tried it in windows, but I still haven’t found anything that resembles this problem.
I do see problems when mass storage is on, and there is no SD card in the board.
Other than that it seems fine.

In fact, it seems weirdly too fine.
Somehow I can access the SD card from the serial monitor with the dir command AND also browse the content of the sd card from windows, which seems weird. Normally I would think I would have to eject the drive before I can list the contents from inside the serial monitor…

Just to try things out, I tried on my Mac and no dice there. WebUSB won’t load, Serial monitor is blank, and solid LED light. USPS finally found where they shipped my black v3 so I can test it on that though I doubt the results will be different.

I appreciate the additional testing.
It’s just weird that I haven’t been able to reproduce it.

Could you maybe create a backup of your program and send it to me:

Maybe it will help me reproduce the problem?
(Although it shouldn’t because it should be identical.)

@profezzorn I’ve just recieved a bunch of Tritium V3.9. Which cases do you want me to test?