ProffieOS 7.7 Beta (done)

Also; what version of the arduino-proffieboard plugin do you have?

Thanks Prof. :slight_smile:

Arduino plugin is 3.6.0. (That is the latest one, isn’t it? Or is there a newer one now?).

And yes, sorry, forgot about the Prop. It’s basically a slightly modded SA22C setup, as there are a couple of button combos I like to swap over. Here’s the Prop file:

But I’ll also go through and peel out some of the presets to make it smaller. I’ll also test it with the standard Prop to see a) if it fits in the memory and b) if it has any effect on the issue. (I can’t imagine it would, but yes, let’s eliminate it from the enquiry).

Will report back… :slight_smile:

So you’re a toddler?

1 Like

So do I need to do something special to trigger this problem?
Because it’s not doing it for me.

Here’s what I did:

  1. removed the CONFIG_PROP_SECTION
  2. removed all presets except the first and the last one, both for the blade and no_blade
  3. Swap bladePin and blade3Pin since I have nepixels hooked up to bladePin, but not blade3Pin
  4. Swap bladePowerPin1 and bladePowerPin3 since my neopixels are powered by LED1
  5. Compile and install with latest from github (which should be the same as 7.5)

Result: Blue dot is moving back and forth with no issues.

Since I cannot (so far) reproduce this problem, maybe we can just do a bisect on it instead.

You could start by trying ProffieOS 7.1/2/3/4 to see if we can figure out exactly when the problem started occurring.

If that’s not enough, I can show you how to try each individual checkin on github to find where the problem started.

1 Like

Hmmmm. Odd.

I just tried peeling out the last half dozen presets for both blade in and blade out (to make some space), then loaded 7.5 using the standard saber.h prop file. I’m still getting the issue, albeit it does seem less severe. I’m finding if I light the blade then shut it off, I get the random flickers for perhaps 10 or 15 seconds, then it seems to settle down.

Something to do with Data3 perhaps? (Yes, I do have a 330 ohm resistor across it, but it splits after the resistor, then the splits go to the two strips).

The only other thing to note is that despite the strips sharing both positive and negative with the main blade connector, the issue doesn’t show on the blade connector at all.

Forgive my ignorance as I’m sure this is obvious, but I can only find the latest 7.5 OS to download, or else the 6.9 and earlier official releases.
How do I access 7.1/2/3/4?

I guess that would be an indication that the problem is on the data pin, not the power pin(s).

Here you go:

https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.0.zip
https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.1.zip
https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.2.zip
https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.3.zip
https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.4.zip
https://fredrik.hubbe.net/lightsaber/ProffieOS-v7.5.zip

1 Like

Silly question; have you checked the serial monitor to see if it says something helpful?

Like, maybe these events are clashes or something?
Or, maybe there is something that happens after 15 seconds, and the serial monitor actually says what it is?

It gets weirder! I tried connecting the board and powering with the battery at the same time to see the serial monitor and I couldn’t reproduce the problem. But the moment I disconnected the USB and went back to battery alone, the problem was back.

Is it possible there’s some kind of static issue on the data line and the USB is grounding and dissipating it? And if so, how would different OSs affect it?

I’ll also try the various versions of 7.x tomorrow when I have a bit more time.

The case continues…

Could be a voltage issue.
Although, the booster is supposed to solve any such issues…
Have you tried charging the battery?

Or a clock issue, but that’s supposed to be fixed too…

The battery is brand new (KeepPower) and fully charged (full bars on the OLED).

The only thing I’ve done different to the norm is put the kill switch across the entire battery negative rather than a spur from batt positive. (There’s not much wiring space in this chassis, and this made the wiring much easier). But I can’t believe that would cause voltage issues for a few accents. And if it did, surely it would do it regardless of which OS I use?

Anyway I’m out and about until later today, but I will go through and test each 7.x version when I get back, including re-downloading 7.5. I guess it’s possible my 7.5 has got corrupted maybe (although it’s only been available for a few days, so it’s not like it’s been kicking around on my hard drive for long) but I’ll test every avenue and report back tonight. :slight_smile:

Test Results

OK, I’ve spent the afternoon in the Sabersense Lab, and can confirm the following test results:

  • ProffieOS 7.5 - my prop - Fault present, pretty bad.

  • ProffieOS 7.5 - default prop - Fault present but not quite as bad, seems to settle.

  • ProffieOS 7.4 - my prop - Fault present, pretty bad.

  • ProffieOS 7.4 - default prop - Fault present but not quite as bad, seems to settle.

  • ProffieOS 7.3 - my prop - Fault present, pretty bad.

  • ProffieOS 7.3 - default prop - Fault present but not quite as bad, seems to settle then gets worse again.

  • ProffieOS 7.2 - my prop - Worst yet. A few flickers, cylon effect randomly stalling, then froze completely and LEDs on other strip (which had been previously fault free) froze full white. I’m guessing this was the clock issue that must have been fixed between ProffieOS 7.2 and ProffieOS 7.3?
    Tried the same test with USB connected and battery power, and still got the stalling but not the full white from the other strips. Powered down, disconnected and tried again without USB connection, and this time I didn’t get the stalling but I did get the total freeze again.

  • ProffieOS 7.2 - default prop - cylon animation never got started - just two of the four LEDs stayed lit, then had full freeze white again on the other strips.

  • ProffieOS 7.1 - my prop - Pretty much as ProffieOS 7.2. Front strips didn’t light at all at first, then lit blue without animating, then various colours appeared, again all static, then froze with longer rear strips at full white again.

  • ProffieOS 7.1 - default prop - This time front strips didn’t light at all, and eventually the longer rear strips froze full white.

  • ProffieOS 7.0 - my prop - First boot front strips didn’t light at all, even with blade lit. Finally one led showed green. After reboot seemed to work OK, although I did spot one tiny flicker. Then eventually the whole thing froze white again.
    Could all this possibly be a data connection, I thought? I waggled things but nothing changed and the joint and wire look flawless, So I don’t believe it’s that.

  • ProffieOS 7.0 - default prop - This was looking promising until everything suddenly froze full white again.

So it looks like I was wrong about ProffieOS 7.0 being OK. So I downloaded a clean ProffieOS 6.9, added my prop and config and gave it a go. The only thing I had to alter in the config was boot volume which wasn’t a thing in ProffieOS 6.x.

  • ProffieOS 6.9 - my prop - no fault found.

Just for good measure, I went back and loaded ProffieOS 7.5 again without disturbing the hilt. The flickering was back. Went back to ProffieOS 6.9 for a second time. If I had to talk nano-scope level, on the flick of the kill switch on the first ProffieOS 6.9 boot, I saw one of the four LEDs flick red and another flick green. This was both for a nano-second and I assume was probably caused by the SD card writing the global .ini / .tmp file for the first time (I always delete all those files between uploads). After that I couldn’t recreate any fault at all, and subsequent boots were all flawless.

So the problem appears to be somewhere between ProffieOS 6.9 and ProffieOS 7.0. The freezing full white I think we can safely say was the clock issue that was sorted a couple of weeks ago. So just the flickering to nail down. :confused:

(P.S. Let me know if you want me to start a new thread for this).

It’s definitely time to start a new thread for this.
Also, if you’re up for doing a few more tests (9 to be precise) we should be able to figure out exactly when this problem started, instructions follows:

  1. Make a copy of this spreadsheet: ProffieOS 6.x - 7.0 problem finder helper - Google Sheets
  2. Pick a line, close to the middle
  3. change the “outcome” from “?” to “testing” (so you remember which one you’re working on.)
  4. Click the download link on that line, it will download a ProffieOS zip file.
  5. Unzip the file, you’ll end up with a directory structure sort of like: ProffieOS-2ba20bfece467ab310d9aaa63f8884cf504aaf1e/ ProffieOS-2ba20bfece467ab310d9aaa63f8884cf504aaf1e/ProffieOS.ino
  6. Rename the middle directory to just ProffieOS, so you get: ProffieOS-2ba20bfece467ab310d9aaa63f8884cf504aaf1e/ProffieOS/ProffieOS.ino
  7. Open up the ProffieOS.ino file in Arduino, configure, compile and test.
  8. If it doesn’t compile, change the outcome to “compile error”, then go to the line above or below in the spreadsheet, then start over from step 3.
  9. If the fault is present, change the outcome to “faulty”
  10. If the fault is not present, change the outcome to “fine”.
  11. Find the area between the last “faulty” and the first “fine”, then select the line in the middle between them, then goto step 3.

After following these instructions 9 times (more if there are compile errors) you should end up with two lines next to each other, one that says “fine” and one that says “faulty”, and and that time, share the spreadsheet and post the link here, or in a new thread, and then I should be able to figure out exactly what’s going on.

Sorry for making this so much work, hopefully 9 tests is not too much.

1 Like

No problem Prof, I’m on it! :+1:
Have made a start and will report back on a new thread once I’ve found the relevant line(s).
:slight_smile:

Sincere thanks as always for helping to track these gremlins. :slight_smile:

Ok, created a 7.6 zip file.
Same as 7.5, but with a bugfix for a race condition in clock control which would cause pixels to flicker when the saber is off.

And in case someone is wondering why 7.x has gone all the way to 7.6 and no official release yet: Testing is still slow. I try to test something every day, but without more help it’s still going to take a while.

1 Like

The elimination of the race condition also fixed the monitor disconnect issues I was having.

Most excellent dude!