V4.0 testing [was V3.7]

the 4.0 upgrades migrates the data (and its location) to the new 4.0 format. What you can do is to take a copy of the SD card before the upgrading. You can do that by starting a bootloader, enabling the USB storage and copying all the files to your computer. Then, when you want to downgrade follow these steps:

  1. downgrade to 3.6.1
  2. open bootloader / enable USB storage
  3. copy the 3.6.1 files back
  4. restart

for reference there is a pristine clean SD card data for v3.6.1 and v4.0.0:

2 Likes

Hi @moss,

does it boot when you downgrade back to 3.6.1?

HI @martin good to hear from you again.

I have loaded 4.0.0g, and tested my VCVRack2 preset (publicly available in the library). Unfortunately I have experienced freezes and hangs where the normal reset didnt work (loading animation completed but my preset didnt start - see log below) and I had to use the hold top left button power cycle to recover. Is there a change related to presets loading saved state ? The E1 froze after seemingly loading preset data. Maybe you could try opening the VCvRack2 preset, go to page 11, click the Save to E1 button then restart the E1 - see if you see the same freeze.
I will also dig further when I have time.

18:28:43.534 lua: VCV Rack 2 preset initialisation
18:28:43.636 lua: Loading saved settings
18:28:43.644 lua:     {
18:28:43.645 lua:       settingSelectModulesEnabled = true
18:28:43.645 lua:       settingNextEnabled = false
18:28:43.646 lua:       settingResetEnabled = false
18:28:43.646 lua:       settingPageNavEnabled = true
18:28:43.646 lua:       settingRackEnabled = true
18:28:43.647 lua:       settingDoubleTapEnabled = true
18:28:43.647 lua:       settingPrevEnabled = false
18:28:43.648 lua:       settingApplyEnabled = false
18:28:43.648 lua:       settingReloadMMLEnabled = true
18:28:43.648 lua:     }

Yes, it does. But it lost all settings and I am not sure if it is working properly.

Damn Martin, you’re building a whole new interface layer. That must have been a ton of work. Looks smooth in the video!

As for the Sysex issue, I’ve been holding off since I figured you’ve been very busy, but I have had a fully finished new project I’ve wanted to discuss with you since Januari, which replicates this issue. Let me know if you’re interested, even if just for testing the issue.

2 Likes

That is impressive!

@christianvogel What setup are you using? I’m experiencing slow SysEx send both on

  • Macbook Pro 2020, Intel, MacOs 15.3.1
  • Macbook Pro 2034, Apple M3, MacOs 15.0.1

on an E1 mkII v3.0 directly connected to these hosts

Hi @martin . On 4.0.0g, it seems that toggle buttons are not toggling from on → off. Off → on seems OK, but once on, the toggle button does not change state back to off when pressed again. I have seen this both on my VCVRack2 preset, and the library Repro-5 preset for example.

Hi @martin More digging on the E1 startup freeze I am seeing. I have narrowed it down to calling pages.display(1) from within a preset.onReady() callback, in my VCVRack2 preset when it is opened automatically when the E1 is started.

When I commented out the pages.display(1) statement, the E1 restarts OK. It seems to be repeatable.

If I put the statement back in again, change to another simple preset then restart E1, then re-open the VCVrack2 preset, the pages.display(1) works. So it does seem this is something to do with when the E1 loads the preset on startup as far as I can tell.

This is new buggy behaviour in 4.0.0g compared with 4.0.0c

Hi @jhh , I’m using a 14inch 2021 Macbook M1 Pro. I have not yet tested with the new just released version, my last test was with the 4.0.0c firmware.

I do not have the slow upload issue with the current (3.0) firmware. I am sometimes having some instability where after upload the next uploads are ignored or the Electra freezes. I’ve been working around this by throttling uploads. This is not too common though, and may have been fixed with the work @martin is doing now. However due to the slow uploads I have not been able to test that yet.

Hi (all), I had family stuff to do this weekend. I am going to read what you wrote and review that. Thanks for reporting!

  • pad toggles fixed
  • tackled onReady, there was a race condition. The VCV rack 2 + Orestes is starting okay for me. I will still be looking at it though.
  • the mysterious slow sysex understood after working together with @jhh. It was caused by forwarding of (fast) USB data to (slow) MIDI IO.

Please re-test this version if you have time for that. I tested with it with Ableton, Bitwig, VCV. Seemed to work just fine.

Originally posted firmware-v4.0.0h.srec.zip replaced with firmware-v4.0.0i.srec.zip (2.0 MB). Extra work on the race condition (better feelings here now)

This week is rather busy here. I can be available for a call next week or we can discuss it on the forum.

1 Like

HI @martin Thanks very much for the quick turnaround for 4.0.0i. Installed and re-tested my VCVRack2 preset , looks much better. It seems to have resolved all the issues I reported on 4.0.0g. Toggle buttons now switch between on and off OK. The pages.display(1) works within the onReady callback.

Interestingly, the rendering or processing of a sequence of sysex controlUpdate commands sent into the device (from my OrestesOne VCVRack module when you select a module) seems noticeable slower since 4.0.0c - I can see the controls being updated top-down, left to right - its still fast enough I think, but I never even noticed before.

Looks like the onPotTouch issue I reported previously has re-appeared since 4.0.0c

After re-loading a preset from beta.electra.one, the onPotTouch callback is triggered with multiple potId = 0 calls:

I would appreciate if you could share some info on the new onPotTouchChange callback as I asked here in January. When I try this code, the callback never seems to be triggered (this happened in 4.0.0c, and still seems to happen in 4.0.0i):

function events.onPotTouchChange(potId, controlId, touched)
  log("potId: " .. potId .. ", controlId: " .. controlId .. ", touched: " .. (touched and "yes" or "no"))
  executePotTouchActions(potId, controlId, touched)
end

Thanks & regards

Funny. For me the toggle buttons work less well than in version 3.x of the firmware. They respond erratically: sometimes not toggling. Sometimes toggling very quickly off and then on again.

Also, assigning ‘toggle sensitivity’ to a button doesn’t seem to make much difference. Also it is unclear how it works: is the sensitivity increased only while the button is pressed, or is it a real toggle?

Third, for lists controls, if you are on the first item and turn further left, the value jumps to the last one in the list. Is this configurable somehow? It is nice in certain cases, but I’m not sure I always like this as the standard behaviour.

Also I see erratic ADSR behaviour. When the popup opens, all 4 pots control the first parameter, i.e. Attack. Value updates (sent using sysex command 0x14, 0x0E) also behave weird. The redraw for the first control is larger and above the actual control:

And the other 4 3 controls get string values that are not sent by Ableton

1 Like

I noticed the wrong assignment of the on-screen knobs to physical knobs already. I have it on my todo list. The broken graphics is weird. I will look at that.

The sensitivity of the physical knobs is decreased while the button is pressed. It goes back to normal when released.

it is kind of a probe on what users think about that. I do not know, till this very moment, if I like it or not. Making it a “configuration option” seems to be little bit too much.

Hm… It seems the sensitivity toggle does not make much difference really (which is why I was unsure how it worked). Also, some graphical feedback (in the info line) perhaps about it being active or not might be useful.

1 Like

Just gave it a spin and it boots up again!

1 Like

Hi Martin

The update is awesome :slight_smile:
I love the quick view bottom for navigate.
I will discover it tonight!
Very good job!!