I think I know in theory what a unipolar / bipolar fader is, but there is no difference in operation.
I am still not a fan of the new pad design: selected toggles stand out too little for my taste (I like the subtlety of the design, but this too subtle
Also, long press on fader to show large bar in popup appears to always display the fader as if it is bipolar (ignoring the unipolar setting)
@martin - can I get a quick sanity check that this onResponse() construct is correct for use with the 3.x beta OS? The incoming sysex should be 600+ bytes.
The Cyclone is notorious for being weird with sysex data being sent to and from it. I just want to eliminate any naming/parameter type issues on the LUA side before I look at the sysex transaction in more detail.
thanks
@oldgearguy
Hi , Im reading along because I’ll need to do something similar in FW3 for the DSI Mopho. And I’m not yet familiar with the sysexBlock handling, and those read and seek commando’s.
What is the purpose of the last print command?
print(string.format(“Patch #: %d”, deSyx[0]))
that’s just printing the content of the 5th byte, correct?
yes - I had more code below this, but cut it out for brevity in a post.
My normal process is to grab the sysex, then print some test values to the log to verify I’m reading and interpreting the sysex dump correctly. Then, if the log looks good, I strip that out and start doing the real processing of the data.
Note that this code block worked correctly for the Alesis Micron and other templates I was working on with the OS 2.x releases. But I know Martin changed some of the parameters to other MIDI calls between OS 2 and 3 and wanted to know about this one.
Dimmed colors (of controls not in the current control set) are strange: bright orange becomes dimmed red, bright blue becomes dimmed green…
I will wait for the finished work then . I love to experiment and test but i already do that for many other stuff for now . The V2.2 works perfectly and i use it intensively to develop other part of my set … That are not as stable as this part .I read the thread regularly . So many talented/expert people there
.
Thanks Martin ! For all your work and your kindness !
Have a nice evening !
yeah, still having trouble receiving sysex larger than 256 bytes.
The Cyclone template is requesting the current patch (668 bytes). When I send the request from the Electra One (pressing upper right/Button 4) and sending the request, I see this in the log file:
21:20:47.903 listWindows: index=0, name=mainWindow, address=1fffd494, active=1
21:20:47.907 listListeners: buttonListener: 1fffd4dc is active: 1
21:20:47.910 lua: Requesting edit buffer
21:20:47.913 lua: Requesting edit buffer
21:20:47.915 function: 1 (onRequest)
The lua: Requesting edit buffer
line is my print() statement embedded in the patch.onRequest() function in the LUA script. No idea why it’s being called twice.
then the Electra One becomes unresponsive, the Chroma browser (on Windows 10) locks up and I have to reboot Windows to free up the resources locked by Chrome,. If I plug a USB<–>MIDI cable into another USB port and feed the output of the Cyclone to MIDI-Ox, it perfectly captures the sysex dump. The format looks fine, nothing crazy in it.
The LUA code I’m using is so minimal now for response - everything stripped out except for a single print() statement.
This is happening with Electra One controllers with hw version 2.0 and 2.4
apologies for dumping logs to the forum. After the most recent lockup, I tried to do a factory reset of the E1 (middle left button on power up) because the screen/knobs were still unresponsive (2.40 HW version, rev 3x22 OS). After doing that, I get a nice empty main screen, but I can’t do anything with it - browser says ‘not connected’. Here’s the log from that startup:
21:38:43.582 processElectraSysex::handleElectraSysex: electraInfo sysex sent to the host
21:38:43.682 processElectraSysex::handleElectraSysex: electraInfo sysex sent to the host
21:38:43.699 sendSysexFile: the file does not exists: filename=ctrlv2/setup.cfg
21:38:43.769 sendSysexFile: the file does not exists: filename=ctrlv2/p005.epr
21:38:50.331 handleSysEx: preset transfer initiated: filename=ctrlv2/p005.epr
21:38:50.331 handleSysEx: Read file failed: ctrlv2/p005.epr
21:38:50.332 handleSysEx: lua script transfer initiated: filename=ctrlv2/p005.lua
21:38:50.332 handleSysEx: Read file failed: ctrlv2/p005.lua
21:38:50.369 Localfile: Cannot open file failed: ctrlv2/p005.epr
21:38:50.419 Controller::reset: preset memory deallocated
21:38:50.419 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:50.420 Preset::load: file: filename=ctrlv2/p005.epr
21:38:50.420 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:50.421 Default preset load failed
21:38:50.421 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:50.422 Controller::reset: preset memory deallocated
21:38:50.422 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:50.423 Preset::load: file: filename=ctrlv2/p005.epr
21:38:50.423 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:50.424 Default preset load failed
21:38:50.425 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:50.425 Controller::reset: preset memory deallocated
21:38:50.426 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:50.426 Preset::load: file: filename=ctrlv2/p005.epr
21:38:50.427 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:50.427 Default preset load failed
21:38:50.428 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:50.429 Controller::reset: preset memory deallocated
21:38:50.429 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:50.430 Preset::load: file: filename=ctrlv2/p005.epr
21:38:50.430 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:50.431 Default preset load failed
21:38:50.431 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:50.432 Controller::reset: preset memory deallocated
21:38:50.432 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:50.432 Preset::load: file: filename=ctrlv2/p005.epr
21:38:50.433 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:50.433 Default preset load failed
21:38:50.433 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:50.433 getPage: page does not exist: pageId=1
21:38:50.434 switchPage: Page switched: page=1, controlSetId=0
21:38:50.434 getPage: page does not exist: pageId=1
21:38:50.435 handleCtrlFileReceived: preset upload failed
21:38:50.435 processElectraSysex::handleElectraSysex: sending ACK
21:38:50.442 SysexApi::process: sysex received: command=1, parameter=1, byte1=123
21:38:50.443 SysexApi::process: unknown sysex request
21:38:50.443 Localfile: Cannot open file failed: ctrlv2/p005.lua
21:38:50.444 processElectraSysex::handleElectraSysex: sending ACK
21:38:50.444 SysexApi::process: sysex received: command=1, parameter=12, byte1=102
21:38:50.444 SysexApi::process: unknown sysex request
21:38:50.569 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:50.570 SysexApi::sendPresetList
21:38:50.571 sendPresetList
21:38:50.571 Presets::sendList: cannot open transfer file
21:38:50.572 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:38:50.572 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:50.572 SysexApi::sendPresetList
21:38:50.573 sendPresetList
21:38:50.573 Presets::sendList: cannot open transfer file
21:38:50.574 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:38:56.059 handleSysEx: preset transfer initiated: filename=ctrlv2/p005.epr
21:38:56.059 handleSysEx: Read file failed: ctrlv2/p005.epr
21:38:56.059 handleSysEx: lua script transfer initiated: filename=ctrlv2/p005.lua
21:38:56.059 handleSysEx: Read file failed: ctrlv2/p005.lua
21:38:56.069 Localfile: Cannot open file failed: ctrlv2/p005.epr
21:38:56.118 Controller::reset: preset memory deallocated
21:38:56.119 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:56.120 Preset::load: file: filename=ctrlv2/p005.epr
21:38:56.120 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:56.121 Default preset load failed
21:38:56.121 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:56.122 Controller::reset: preset memory deallocated
21:38:56.122 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:56.123 Preset::load: file: filename=ctrlv2/p005.epr
21:38:56.123 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:56.124 Default preset load failed
21:38:56.125 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:56.125 Controller::reset: preset memory deallocated
21:38:56.125 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:56.126 Preset::load: file: filename=ctrlv2/p005.epr
21:38:56.126 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:56.126 Default preset load failed
21:38:56.127 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:56.127 Controller::reset: preset memory deallocated
21:38:56.128 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:56.128 Preset::load: file: filename=ctrlv2/p005.epr
21:38:56.128 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:56.129 Default preset load failed
21:38:56.129 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:56.129 Controller::reset: preset memory deallocated
21:38:56.130 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:56.130 Preset::load: file: filename=ctrlv2/p005.epr
21:38:56.131 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:56.131 Default preset load failed
21:38:56.131 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:56.131 getPage: page does not exist: pageId=1
21:38:56.132 switchPage: Page switched: page=1, controlSetId=0
21:38:56.132 getPage: page does not exist: pageId=1
21:38:56.132 handleCtrlFileReceived: preset upload failed
21:38:56.133 processElectraSysex::handleElectraSysex: sending ACK
21:38:56.143 SysexApi::process: sysex received: command=1, parameter=1, byte1=123
21:38:56.145 SysexApi::process: unknown sysex request
21:38:56.145 Localfile: Cannot open file failed: ctrlv2/p005.lua
21:38:56.145 processElectraSysex::handleElectraSysex: sending ACK
21:38:56.145 SysexApi::process: sysex received: command=1, parameter=12, byte1=102
21:38:56.145 SysexApi::process: unknown sysex request
21:38:56.269 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:56.270 SysexApi::sendPresetList
21:38:56.270 sendPresetList
21:38:56.271 Presets::sendList: cannot open transfer file
21:38:56.271 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:38:56.370 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:56.370 SysexApi::sendPresetList
21:38:56.371 sendPresetList
21:38:56.371 Presets::sendList: cannot open transfer file
21:38:56.371 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:38:58.936 handleSysEx: preset transfer initiated: filename=ctrlv2/p005.epr
21:38:58.936 handleSysEx: Read file failed: ctrlv2/p005.epr
21:38:58.936 handleSysEx: lua script transfer initiated: filename=ctrlv2/p005.lua
21:38:58.937 handleSysEx: Read file failed: ctrlv2/p005.lua
21:38:58.969 Localfile: Cannot open file failed: ctrlv2/p005.epr
21:38:59.019 Controller::reset: preset memory deallocated
21:38:59.020 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:59.020 Preset::load: file: filename=ctrlv2/p005.epr
21:38:59.021 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:59.021 Default preset load failed
21:38:59.022 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:59.022 Controller::reset: preset memory deallocated
21:38:59.022 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:59.023 Preset::load: file: filename=ctrlv2/p005.epr
21:38:59.023 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:59.024 Default preset load failed
21:38:59.024 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:59.025 Controller::reset: preset memory deallocated
21:38:59.025 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:59.026 Preset::load: file: filename=ctrlv2/p005.epr
21:38:59.026 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:59.027 Default preset load failed
21:38:59.027 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:59.028 Controller::reset: preset memory deallocated
21:38:59.028 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:59.029 Preset::load: file: filename=ctrlv2/p005.epr
21:38:59.029 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:59.030 Default preset load failed
21:38:59.030 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:59.030 Controller::reset: preset memory deallocated
21:38:59.031 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:38:59.031 Preset::load: file: filename=ctrlv2/p005.epr
21:38:59.031 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:38:59.032 Default preset load failed
21:38:59.032 handleCtrlFileReceived: preset loaded: name=NO NAME
21:38:59.033 getPage: page does not exist: pageId=1
21:38:59.033 switchPage: Page switched: page=1, controlSetId=0
21:38:59.033 getPage: page does not exist: pageId=1
21:38:59.034 handleCtrlFileReceived: preset upload failed
21:38:59.034 processElectraSysex::handleElectraSysex: sending ACK
21:38:59.043 SysexApi::process: sysex received: command=1, parameter=1, byte1=123
21:38:59.043 SysexApi::process: unknown sysex request
21:38:59.044 Localfile: Cannot open file failed: ctrlv2/p005.lua
21:38:59.044 processElectraSysex::handleElectraSysex: sending ACK
21:38:59.045 SysexApi::process: sysex received: command=1, parameter=12, byte1=102
21:38:59.045 SysexApi::process: unknown sysex request
21:38:59.170 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:59.170 SysexApi::sendPresetList
21:38:59.171 sendPresetList
21:38:59.171 Presets::sendList: cannot open transfer file
21:38:59.172 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:38:59.172 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:38:59.173 SysexApi::sendPresetList
21:38:59.173 sendPresetList
21:38:59.173 Presets::sendList: cannot open transfer file
21:38:59.174 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:39:00.825 handleSysEx: preset transfer initiated: filename=ctrlv2/p005.epr
21:39:00.825 handleSysEx: Read file failed: ctrlv2/p005.epr
21:39:00.826 handleSysEx: lua script transfer initiated: filename=ctrlv2/p005.lua
21:39:00.826 handleSysEx: Read file failed: ctrlv2/p005.lua
21:39:00.870 Localfile: Cannot open file failed: ctrlv2/p005.epr
21:39:00.919 Controller::reset: preset memory deallocated
21:39:00.920 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:00.920 Preset::load: file: filename=ctrlv2/p005.epr
21:39:00.921 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:00.921 Default preset load failed
21:39:00.922 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:00.922 Controller::reset: preset memory deallocated
21:39:00.923 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:00.923 Preset::load: file: filename=ctrlv2/p005.epr
21:39:00.923 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:00.924 Default preset load failed
21:39:00.924 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:00.925 Controller::reset: preset memory deallocated
21:39:00.925 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:00.926 Preset::load: file: filename=ctrlv2/p005.epr
21:39:00.926 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:00.927 Default preset load failed
21:39:00.927 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:00.927 Controller::reset: preset memory deallocated
21:39:00.928 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:00.928 Preset::load: file: filename=ctrlv2/p005.epr
21:39:00.929 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:00.929 Default preset load failed
21:39:00.930 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:00.930 Controller::reset: preset memory deallocated
21:39:00.930 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:00.931 Preset::load: file: filename=ctrlv2/p005.epr
21:39:00.931 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:00.931 Default preset load failed
21:39:00.932 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:00.932 getPage: page does not exist: pageId=1
21:39:00.932 switchPage: Page switched: page=1, controlSetId=0
21:39:00.933 getPage: page does not exist: pageId=1
21:39:00.933 handleCtrlFileReceived: preset upload failed
21:39:00.933 processElectraSysex::handleElectraSysex: sending ACK
21:39:00.943 SysexApi::process: sysex received: command=1, parameter=1, byte1=123
21:39:00.944 SysexApi::process: unknown sysex request
21:39:00.944 Localfile: Cannot open file failed: ctrlv2/p005.lua
21:39:00.945 processElectraSysex::handleElectraSysex: sending ACK
21:39:00.945 SysexApi::process: sysex received: command=1, parameter=12, byte1=102
21:39:00.945 SysexApi::process: unknown sysex request
21:39:01.070 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:39:01.071 SysexApi::sendPresetList
21:39:01.071 sendPresetList
21:39:01.072 Presets::sendList: cannot open transfer file
21:39:01.072 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:39:01.170 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:39:01.170 SysexApi::sendPresetList
21:39:01.171 sendPresetList
21:39:01.171 Presets::sendList: cannot open transfer file
21:39:01.171 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:39:02.646 handleSysEx: preset transfer initiated: filename=ctrlv2/p005.epr
21:39:02.647 handleSysEx: Read file failed: ctrlv2/p005.epr
21:39:02.647 Localfile: Cannot open file failed: ctrlv2/p005.epr
21:39:02.648 handleSysEx: lua script transfer initiated: filename=ctrlv2/p005.lua
21:39:02.648 handleSysEx: Read file failed: ctrlv2/p005.lua
21:39:02.649 Controller::reset: preset memory deallocated
21:39:02.650 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:02.650 Preset::load: file: filename=ctrlv2/p005.epr
21:39:02.650 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:02.651 Default preset load failed
21:39:02.652 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:02.652 Controller::reset: preset memory deallocated
21:39:02.653 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:02.653 Preset::load: file: filename=ctrlv2/p005.epr
21:39:02.654 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:02.655 Default preset load failed
21:39:02.655 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:02.656 Controller::reset: preset memory deallocated
21:39:02.656 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:02.657 Preset::load: file: filename=ctrlv2/p005.epr
21:39:02.657 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:02.658 Default preset load failed
21:39:02.658 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:02.658 Controller::reset: preset memory deallocated
21:39:02.659 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:02.659 Preset::load: file: filename=ctrlv2/p005.epr
21:39:02.660 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:02.660 Default preset load failed
21:39:02.660 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:02.661 Controller::reset: preset memory deallocated
21:39:02.661 free RAM: total=262144, adj_free=202104, free=205672, heap=5120, collision=0
21:39:02.662 Preset::load: file: filename=ctrlv2/p005.epr
21:39:02.662 Preset::load: cannot open preset file: ctrlv2/p005.epr
21:39:02.663 Default preset load failed
21:39:02.663 handleCtrlFileReceived: preset loaded: name=NO NAME
21:39:02.664 getPage: page does not exist: pageId=1
21:39:02.664 switchPage: Page switched: page=1, controlSetId=0
21:39:02.664 getPage: page does not exist: pageId=1
21:39:02.665 handleCtrlFileReceived: preset upload failed
21:39:02.665 processElectraSysex::handleElectraSysex: sending ACK
21:39:02.666 SysexApi::process: sysex received: command=1, parameter=1, byte1=123
21:39:02.666 SysexApi::process: unknown sysex request
21:39:02.666 Localfile: Cannot open file failed: ctrlv2/p005.lua
21:39:02.666 processElectraSysex::handleElectraSysex: sending ACK
21:39:02.667 SysexApi::process: sysex received: command=1, parameter=12, byte1=102
21:39:02.667 SysexApi::process: unknown sysex request
21:39:02.770 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:39:02.771 SysexApi::sendPresetList
21:39:02.772 sendPresetList
21:39:02.772 Presets::sendList: cannot open transfer file
21:39:02.772 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
21:39:02.870 SysexApi::process: sysex received: command=2, parameter=4, byte1=247
21:39:02.870 SysexApi::sendPresetList
21:39:02.871 sendPresetList
21:39:02.871 Presets::sendList: cannot open transfer file
21:39:02.871 sendSysexFile: the file does not exists: filename=ctrlv2/eprxfer.tmp
@oldgearguy, I will review your reports as soon as I finish work I am currently doing on the beta website.
@jhh: same thing. Issues are registered, I will review/fix them shortly.
If I change the color of the snapshot in the editor, a different color appears on the E1 display.
I’m building a resonance compensator to use on ladder filter synths, using firmware 3.0.
- Pad 140 is an on/off for this.
- CC number 7 is the volume CC controller
The function is called each time the Resonance controller is invoked.
fyi:I found the ratio 70 to 100 a good one for this audible compensation:
function resoCompensation(valueObject,value)
if parameterMap.get (deviceId , PT_VIRTUAL, 140)== 0 then return end
local CC7Value=parameterMap.get (deviceId , PT_CC7, 7)
value = math.min(127,CC7Value+math.floor(value*70/100))
if value~=prevValueVol then
midi.sendControlChange (devPort , channel, 7, value)
prevValueVol =value
end
end
The function is triggered, tweaking the synth’s resonance knob (whereby CC number 21 is the resonance):
function midi.onControlChange (midiInput, channelIn, controllerNumber, value)
if channelIn~=channel then return end
if controllerNumber==21 then
resoCompensation(valueObject,value)
return
end
...
end
When tweaking the resonance knob , the resonance changes and therefor the volume changes via CC number 7 as well, but there is a noticeable reaction lag.
Normal behaviour looks like (when changing the knob slowly):
But if you turn a bit faster, the result is that the volume changes are segregated from the resonance changes.
Is there a way to remove the lag?
I turned off all the routing in the Controller screen except for USB device to USB host option (so two total) and now the entire browser does not lock up on receipt of a sysex dump. The patch.OnRequest() still appears to be called twice, and when I loaded to preset after a reboot, I got all this in the log file. Does it all make sense? The preset is a variant on the Oberheim Cyclone 1.1 by @milwaukee. I made some minor changes, to reduce the amount of text/duplication in the original and have been trying to add patch dump/receive to it.
12:58:28.997 processElectraSysex::handleElectraSysex: electraInfo sysex sent to the host
12:58:28.998 processElectraSysex::handleElectraSysex: electraInfo sysex sent to the host
12:58:29.081 processElectraSysex::handleElectraSysex: config sysex sent to the host
12:59:33.715 handleSysEx: preset transfer initiated: filename=ctrlv2/p000.epr
12:59:33.726 transport disabled
12:59:33.728 Controller::reset: preset memory deallocated
12:59:33.731 free RAM: total=262144, adj_free=197568, free=201280, heap=9656, collision=0
12:59:33.733 Preset::load: file: filename=ctrlv2/p000.epr
12:59:33.736 1
12:59:33.738 2
12:59:33.740 3
12:59:33.742 4
12:59:33.745 Preset::parseRule: deserializeJson() failed: InvalidInput
12:59:33.747 findElement: no "patch" defined
12:59:33.748 5
12:59:33.749 6
12:59:33.751 7
12:59:33.753 .
12:59:33.755 p: 11680
12:59:33.756 name=AUTO-TRANSPOSE
12:59:33.758 v
12:59:33.761 .
12:59:33.762 p: 12228
12:59:33.764 name=# OF DOUBLES
12:59:33.765 v
12:59:33.766 .
12:59:33.767 p: 12851
12:59:33.768 name=BASE CHANNEL
12:59:33.769 v
12:59:33.771 .
12:59:33.772 p: 13478
12:59:33.773 name=SYNCTO TRIGGER
12:59:33.774 v
12:59:33.775 .
12:59:33.776 p: 14042
12:59:33.776 name=MODE RESET
12:59:33.777 v
12:59:33.778 .
12:59:33.778 p: 14615
12:59:33.779 name=INVERT ALTERNT
12:59:33.780 v
12:59:33.780 .
12:59:33.781 p: 15193
12:59:33.781 name=TRANSPOSE SYNC
12:59:33.782 v
12:59:33.783 .
12:59:33.783 p: 15772
12:59:33.784 name=DBL INTERVAL
12:59:33.784 v
12:59:33.785 .
12:59:33.786 p: 16369
12:59:33.787 name=END BEAT 1/4N
12:59:33.787 v
12:59:33.788 .
12:59:33.789 p: 16957
12:59:33.790 name=REC/HOLD MODE
12:59:33.790 v
12:59:33.791 .
12:59:33.792 p: 17526
12:59:33.792 name=AUTO CORRECT
12:59:33.793 v
12:59:33.793 .
12:59:33.794 p: 18094
12:59:33.794 name=
12:59:33.795 v
12:59:33.796 .
12:59:33.796 p: 18357
12:59:33.797 name=
12:59:33.798 v
12:59:33.798 .
12:59:33.798 p: 18893
12:59:33.799 name=CLOCK
12:59:33.799 v
12:59:33.800 .
12:59:33.800 p: 19437
12:59:33.800 name=BPM
12:59:33.801 v
12:59:33.801 .
12:59:33.802 p: 20015
12:59:33.802 name=NOTE PULSE
12:59:33.803 v
12:59:33.803 .
12:59:33.804 p: 20578
12:59:33.804 name=DURATION 16THS
12:59:33.805 v
12:59:33.806 .
12:59:33.807 p: 21164
12:59:33.807 name=
12:59:33.808 v
12:59:33.808 .
12:59:33.809 p: 21699
12:59:33.809 name=
12:59:33.810 v
12:59:33.810 .
12:59:33.810 p: 22219
12:59:33.811 name=PEDAL E1 (64)
12:59:33.811 v
12:59:33.811 .
12:59:33.812 p: 22544
12:59:33.812 name=PEDAL E2 (80)
12:59:33.813 v
12:59:33.813 .
12:59:33.814 p: 22867
12:59:33.814 name=PEDAL E3 (96)
12:59:33.814 v
12:59:33.815 .
12:59:33.815 p: 23190
12:59:33.816 name=LINK TIMING
12:59:33.816 v
12:59:33.817 .
12:59:33.817 p: 23768
12:59:33.817 name=AUTO-TRANSPOSE
12:59:33.818 v
12:59:33.818 .
12:59:33.818 p: 24317
12:59:33.819 name=TRANSPOSE SYNC
12:59:33.819 v
12:59:33.820 .
12:59:33.820 p: 24898
12:59:33.821 name=RECURSION INT
12:59:33.821 v
12:59:33.822 .
12:59:33.822 p: 25496
12:59:33.823 name=NUM STAGES
12:59:33.824 v
12:59:33.825 .
12:59:33.825 p: 26113
12:59:33.825 name=EDIT STAGE
12:59:33.826 v
12:59:33.826 .
12:59:33.826 p: 26729
12:59:33.827 name=TRANS INTERVAL
12:59:33.827 v
12:59:33.827 .
12:59:33.828 p: 27328
12:59:33.828 name=# OF DOUBLES
12:59:33.828 v
12:59:33.829 .
12:59:33.830 p: 27761
12:59:33.830 name=CURRENT EDIT
12:59:33.831 v
12:59:33.832 .
12:59:33.833 p: 28381
12:59:33.833 name=DBL INTERVAL
12:59:33.834 v
12:59:33.835 .
12:59:33.835 p: 28979
12:59:33.836 name=DBL MIDI CH
12:59:33.837 v
12:59:33.837 .
12:59:33.838 p: 29608
12:59:33.839 name=STAGE REPS
12:59:33.840 v
12:59:33.840 .
12:59:33.841 p: 30181
12:59:33.842 name=NOTE VELOCITY
12:59:33.843 v
12:59:33.844 .
12:59:33.844 p: 30794
12:59:33.845 name=TEMPO MOD
12:59:33.846 v
12:59:33.847 .
12:59:33.848 p: 31378
12:59:33.848 name=TEMPO MOD CTLR
12:59:33.849 v
12:59:33.850 .
12:59:33.851 p: 31993
12:59:33.851 name=DURATION MOD
12:59:33.852 v
12:59:33.852 .
12:59:33.853 p: 32580
12:59:33.853 name=DURAT MOD CTLR
12:59:33.854 v
12:59:33.854 .
12:59:33.855 p: 33194
12:59:33.855 name=
12:59:33.855 v
12:59:33.856 .
12:59:33.857 p: 33457
12:59:33.858 name=
12:59:33.859 v
12:59:33.859 .
12:59:33.860 p: 33993
12:59:33.861 name=CLOCK
12:59:33.861 v
12:59:33.862 .
12:59:33.863 p: 34537
12:59:33.863 name=BPM
12:59:33.863 v
12:59:33.864 .
12:59:33.864 p: 35115
12:59:33.864 name=NOTE PULSE
12:59:33.865 v
12:59:33.865 .
12:59:33.865 p: 35678
12:59:33.866 name=DURATION 16THS
12:59:33.866 v
12:59:33.867 .
12:59:33.867 p: 36264
12:59:33.868 name=
12:59:33.868 v
12:59:33.869 .
12:59:33.869 p: 36799
12:59:33.870 name=
12:59:33.870 v
12:59:33.871 .
12:59:33.871 p: 37319
12:59:33.872 name=PEDAL E1 (64)
12:59:33.872 v
12:59:33.873 .
12:59:33.873 p: 37644
12:59:34.037 loadLua debug output:
12:59:34.038 ---- START ----
12:59:34.044 loadLuaModule: Lua extension file initialized: file=ctrlv2/p000.lua
12:59:34.047 ----- END -----
12:59:34.050 lua: function onClock does not exist
12:59:34.051 lua: function onStart does not exist
12:59:34.052 lua: function onStop does not exist
12:59:34.053 lua: function onContinue does not exist
12:59:34.054 lua: function onActiveSensing does not exist
12:59:34.055 lua: function onSystemReset does not exist
12:59:34.056 lua: function onTuneRequest does not exist
12:59:34.057 lua: function onProgramChange does not exist
12:59:34.058 lua: function onAfterTouchChannel does not exist
12:59:34.059 lua: function onPitchBend does not exist
12:59:34.060 lua: function onSongSelect does not exist
12:59:34.061 lua: function onSongPosition does not exist
12:59:34.062 lua: function onControlChange does not exist
12:59:34.063 lua: function onNoteOn does not exist
12:59:34.064 lua: function onNoteOff does not exist
12:59:34.064 lua: function onAfterTouchPoly does not exist
12:59:34.065 lua: function onSysex does not exist
12:59:34.065 lua: function onMessage does not exist
12:59:34.066 switchPage: Page switched: page=1, controlSetId=0
One minor bug (maybe).
I don’t see the MIDI 1 In, MIDI 2 In text lighting up across the top of the Electra One when I am sending data to it. Are these supposed to indicate raw activity at the port, or only light up on successful recognition and processing of incoming data?
beta.electra.one web app has just been updated. It is a large collection of changes based on the feedback from users. Also, this update brings more flexibility and makes addition of new features easier (in the future I mean).
beta.electra.one requires firmware 3.0-a.22 and higher.
the most important changes:
- fully compatible with fw 3.0
- cleaned up user interface and preset building workflow
- default colour and message type for newly added controls
- actions executed on selected controls (copy, cut, change colour, delete, more to be added…, suggestions?)
- page previews
- reordering of pages with drag and drop
- tools pane (the right side of the screen) with Lua editor and log viewer (for easier process for developing Lua). Note for now fullHD or higher resolution is required.
- advanced VisualStudio Code style editor for Lua
- multiple colour palettes supported
Please note, there is still stuff to do. Especially regarding snapshots. This, however, is getting the public release of FW3 very close. I am going to review all recent issues reported here and fix them. I am sorry for slow communication. The update of the web app kept me very busy.
Oh My God !
You literally transcended the GUI.
It looks so great !
The update of the web app kept me very busy.
… really ? I guess i know why …
Congrat !!!
can you send me a link to the preset? (as PM) Thx!
waauw @Martin, you’ve been busy
I’ll immediately give it a parsing test