Beta 3.1.4 no logging?

I’ve been moving between 3.1 and 3.1.4 (and sometimes corrupting the fonts, etc).
Now I have 3.1 running again but there is no messages coming back to the debug console, not even the standard “sending … to the Electra One”, etc

I tried sending the 'turn logging on string" but that had no effect.

Any thoughts?

In one dump (after switching to a different E1) - I saw some message about corrupt database, could not remove some dangling things?

Alternate thing – the logging started up once I upgraded to the beta 3.1.4, but sending MIDI sysex to it just gives me a long dump of the sysex bytes, never stops, have to kill the browser or unplug the E1.

I will try to replicate it.

I’m fairly convinced that a combination of ‘errors’ in the LUA (things like referencing control IDs that no longer existed) plus switching between 3.1 and 3.1.4 and maybe accidentally starting up 3.1.4 under the ‘app’ URL instead of the ‘beta’ URL all contributed to the corrupt/confused Electra One

Resetting everything back to 3.1 gives me a stable (until I do something stupid) platform with debug logging. Once the preset is more fully debugged, I’ll try a 3.1.4 (or whatever is newest) upgrade and see how it behaves.

I have this issue as well. Or something similar.
But as well on 3.1.
So might be really that my device is not healthy.
I also get a fully corrupted display sometimes by just connecting the e.one.

Anyhow I workaround (windows) this by reconnecting the usb cable when the webapp is active.
Then you see the e1 being detected.
Then you have to send “F0h 00h 21h 45h 7Fh 7Dh 01h 00h F7h” from the midi console.

I’ve managed to ‘corrupt’ both E1’s here. One of them is back and running (with fonts and logging).
One message I see sometimes refers to managing snapshots and unable to reference a dangling file.

I’ve gotten one of the E1s back by reinstalling 3.1, then going into the configuration for the controller, deleting any presets in the list, changing a few routing options, and applying that. The I can reboot, reload the UI sysex file, reboot, and eventually get logging running again. I’ve never had success just sending the logging string.

When the E1 is unhappy, I do not get the standard boot-up sequence with the progress bar. When it’s in a bad state, it immediately displays the last preset I had loaded when I connect it to the computer.

Note that all of this is being done on a Windows 10 PC with Chrome. Last night I switched to Edge just to see if that made a difference. The working E1 continued to be fine. I may try to resurrect the other one (fonts still corrupt) later today.

There is 3.1.5 firmware available on beta. It moves forward work on the changing E1 internal logger. Note, the work on that started in 3.1.1, therefore the logger functionality was affected. That is also the reason why I still keep releases only on beta.

The latest firmware version adds support for controlling the log level, it. means the verbosity of the log messages. The log level can be controlled with the “logger enable / disable” sysex message (see the documentation for details). I also added a new button to the web app. It can be used to set the log level and enable / disable the logger.

An important message to share is that I am still busy with categorizing the individual messages to appropriate levels. There are quite some of them. It will take me a few days to get it right.

I am wondering if pressing the button will help @Flyweight with his issue. Pressing the button always sends logger control sysex message to the controller.

There have been more changes / bug fixes implemented in 3.1.5. I will share info later today.

2 Likes

Martin, with 3.1.5 and my current preset, when I send a sysex file to it, I get this in the debugger (same as 3.1.4)

attached also is the sysex file and a link to the preset

pcm70_00.syx (343 Bytes)

PCM 70

1 Like

after a reboot and loading a different preset, I see this:

16:44:42.751 ---- START ----
16:44:42.761 loadLuaModule: Lua extension file initialized: file=ctrlv2/p000.lua
16:44:42.766 ----- END -----
16:44:42.776 Snapshots::createSnapshotDir: directory created: ctrlv2/snaps/KTqPkjKjeGLboQUblJZx
16:44:42.783 Database::open Database file does not exist: file='ctrlv2/snaps/KTqPkjKjeGLboQUblJZx/snapshot.db'
16:44:42.790 ElectraApp::createSnapshotDatabase: creating db file ctrlv2/snaps/KTqPkjKjeGLboQUblJZx/snapshot.db
16:44:42.793 Database::create: cannot remove dangling file
16:44:42.799 switchPage: Page switched: page=1, controlSetId=0
16:44:42.806 App initialisation completed
1 Like

ok, it was able to fix the logging of sysex bytes in a few minutes. I had hard time, however, to get the preset working with the SysEx message you sent to me.

I guess you had to have troubles with that too.

The preset returns variable fmtstr on line 452, it should be actually fmtStr. fmtstr is not declared and therefore null. The null then breaks the formatting in the C++ firmware code results in undefined behaviour.

451      if (value < frqMin) then
452         return fmtStr
453      end

I will upload 3.1.6 to beta in an hour. I will check if I could add Strict Lua to the E1 Lua interpreter. Strict Lua would report this as an error.

I will ping you when updated firmware is available.

1 Like

Thank you for taking the time to dig into that.

I must say that (in this case) with 100+ lines of LUA code, typos (especially case or transposing 2 letters) often bites me.

Sometimes it’s obvious and other times I just miss it even looking 2 or 3 times.

The other thing I am battling is that I have to support both OS 2 and OS 3 inside the PCM 70. I think they kept the sysex the same, but some ranges may be different, etc. So, it’s been more tedious than planned going through various combinations and trying to make some sense of the code needed.

I should have warned you before opening that preset that you might need some Advil before/during/and after looking at it.

Again - thanks for the extra set of eyes and the update to the OS.

2 Likes

yeah, I totally understand. I will see what I can do about that. Adding strict Lua checking should definitely help.

The updated firmware is available on beta now. Pls give it a try. Thx!

I’ve been messing with it a bit.
Logging still completely drops out on me from time to time and then I can’t send a preset to the E1.
I see leftover Chrome or Edge browser instances sitting in task manager.
I think they are still hanging on to the HID device.

There’s something in particular about this preset that really messes with the E1.
Not sure if it’s using slot number to do things mixed with control IDs and maybe trying to update values of hidden controls or ???

I’ll try commenting out all the formatting first then work row by row to see if I can see what’s happening to cause all these lockups.

I don’t necessarily think it’s the E1 OS, I think it’s more the way I’m trying to do things.