Author Topic: [Workaround implemented] Actions from Timer not working?  (Read 5688 times)

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
[Workaround implemented] Actions from Timer not working?
« on: June 28, 2015, 05:51:49 PM »
Hi Alexey,
i wanted to use action:call from a Timer, but there are some commands not working?
i checked now that the list is working when called directly from a button, but called from timer e.g. the "modify|gain" command does nothing, while other lines get executed. Is this a bug?
« Last Edit: September 23, 2015, 05:47:56 PM by azslow3 »

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
Re: Actions from Timer not working?
« Reply #1 on: June 28, 2015, 06:12:47 PM »
Because i got this action:call not working from timer, i tried it with Note:Off, but that seems also not working?
I could perhaps understand that from timer it´s different, but why would it not work from Note Off?

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1196
Re: Actions from Timer not working?
« Reply #2 on: June 28, 2015, 11:33:49 PM »
Most actions are not working from Feedback, only actions available in the feedback list directly are doing something. "Call" does not change that fact.

Note off has no difference from note on, it is just a flag... can you give me an example?

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
Re: Actions from Timer not working?
« Reply #3 on: June 29, 2015, 10:30:21 PM »
Most actions are not working from Feedback, only actions available in the feedback list directly are doing something. "Call" does not change that fact.
ok, accepted. but how to do those actions on timers, if really wanted?

Quote
Note off has no difference from note on, it is just a flag... can you give me an example?
example is attached, just assign a button and change the Flag from NoteON to NoteOff and it does nothing.

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1196
Re: Actions from Timer not working?
« Reply #4 on: June 30, 2015, 12:35:18 AM »
Most actions are not working from Feedback, only actions available in the feedback list directly are doing something. "Call" does not change that fact.
ok, accepted. but how to do those actions on timers, if really wanted?
Composing MCU and Alphatrack presets, I have not found such case when that is required. I know one case when I want something like that, for one specific action. But still not critical. What is your idea?

Quote
Quote
Note off has no difference from note on, it is just a flag... can you give me an example?
example is attached, just assign a button and change the Flag from NoteON to NoteOff and it does nothing.
Actions in the "function" are the subject of conditions. All of them have "note on" by default, so they are not working on "note off".

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
Re: Actions from Timer not working?
« Reply #5 on: June 30, 2015, 10:19:05 AM »
Sorry Alexey, but either we have a misunderstanding or these 2 statements are very contradictory:
Quote
Note off has no difference from note on, it is just a flag...
versus:
Quote
Actions in the "function" are the subject of conditions. All of them have "note on" by default, so they are not working on "note off".
But i guess i just don´t understand what you really mean, because the second can´t be true - as i read it. In your own presets, you use all kinds of actions with conditions - not only functions. So please explain how this is meant.

Composing MCU and Alphatrack presets, I have not found such case when that is required. I know one case when I want something like that, for one specific action. But still not critical. What is your idea?
The idea came with the Gain-wish of Basie, if you remember.
First i tried:
- on button1 press: set a state, with timeout-timer
- while IN this state: use 2 other buttons for Gain +/-dB (and restart the timeout-timer)
- on timeout: check if Gain was used, and if yes, apply the desired Gain-modify.
Ok, maybe this is not so critical, it´s just a matter of usage  - so then i tried with NoteOff.

Very similar, but instead of the timeout-timer, the first button has to be hold:
- on button1 press: set state (CtrlDown)
- while IN this state: use 2 other buttons for Gain +/-dB
- on Button1-NoteOff: check if Gain was used, and if yes, apply the desired Gain-modify

As non of these seem to work, i really wonder if/how you would do that?

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1196
Re: Actions from Timer not working?
« Reply #6 on: June 30, 2015, 11:50:58 AM »
Sorry Alexey, but either we have a misunderstanding or these 2 statements are very contradictory:
Quote
Note off has no difference from note on, it is just a flag...
versus:
Quote
Actions in the "function" are the subject of conditions. All of them have "note on" by default, so they are not working on "note off".
But i guess i just don´t understand what you really mean, because the second can´t be true - as i read it. In your own presets, you use all kinds of actions with conditions - not only functions. So please explain how this is meant.
May be I have used not correct word, "a flag" should be interpreted as "a system software state". All these sets are set by the system to indicate current conditions, so they are all (by meaning) a kind of "flags".

Any action has "Note" condition, and till you change that the condition is "Note:On". Not only the function call itself, but ALL actions INSIDE the function have it. So, in case you call a function which should work when "Note:Off", ALL actions inside the function should have "Note:Off".

I repeat, that is not so that you really add something, you change the condition which is already there. I just do not show "Note:On" in the list (to keep the text small).

Quote
Composing MCU and Alphatrack presets, I have not found such case when that is required. I know one case when I want something like that, for one specific action. But still not critical. What is your idea?
The idea came with the Gain-wish of Basie, if you remember.
First i tried:
- on button1 press: set a state, with timeout-timer
- while IN this state: use 2 other buttons for Gain +/-dB (and restart the timeout-timer)
- on timeout: check if Gain was used, and if yes, apply the desired Gain-modify.
Ok, maybe this is not so critical, it´s just a matter of usage  - so then i tried with NoteOff.

Very similar, but instead of the timeout-timer, the first button has to be hold:
- on button1 press: set state (CtrlDown)
- while IN this state: use 2 other buttons for Gain +/-dB
- on Button1-NoteOff: check if Gain was used, and if yes, apply the desired Gain-modify

As non of these seem to work, i really wonder if/how you would do that?
NoteOff should work. I see the first idea and theoretically can add "Command" and "Key" into the list of allowed in the Monitors actions.

The reason most actions are not allowed now is "safety". Let say you have "Ulta" timer monitor. You start edit it and add "Key" "Enter" into the list... There is a big change you freeze Sonar by that. The same is true for most other actions which trigger some real operation in Sonar...

I am not a big fan of "double" and "tripple" clicks. I use "Long press" when the result is not destructive (like setting default parameter value).
I think "Set dB by encoder + apply button" is more transparent solution.

Offline azslow3

  • Administrator
  • Hero Member
  • *****
  • Posts: 1196
Re: Actions from Timer not working?
« Reply #7 on: June 30, 2015, 12:28:07 PM »
So, my proposal (not in the near of any surface, so can not provide an example preset, but can do this at the evening if required):

Shift+Apply (whatever button combination you have free) is does the action, one encoder select dB. To not scarify the encoder for that, it can work the following way:
* State Set "CutBoost" with states "-3db,-2db, etc."
* State Set "CutBoostMode" with state "On"/"Off"
* "CutBoostMode" is switched to "On"/"Off" by Apply button press (which Shift is on) and release (unconditionally). It should also force trigger corresponding encoder monitor (to update encoder ring). That can be done in separate CutBoostMode set monitor or directly in the action list.
* the encoder in question:
-- monitor whatever it does normally, with "CutBoostMode":"Off" condition
-- monitor CutBoostMode set with "CutBoostMode":"On" condition (and display the ring according to the current state of it)
-- the same for modify ("Endless" state change of "CutBoostMode" with Loop turned off should do the trick)
* on Apply release (Note:Off) and (!) "CutBoostMode":"On"  (so, before reseting it) and not "Shift" check apply the effect for required dB. All actions there should be with "Note:Off", as explained before. Without "CutBoostMode":"On" check, in case "Shift" is released before "Apply" the button will do something else... not nice.

So, a bit tricky but the result is: once Shift+Apply are pressed, the encoder show current (remembered!) dB which can be changed. Once Apply is release Gain is modified. In case simply Pressed/Release, last time selected dB is applied. The encoder is free for other operations till "Shift+Apply" are pressed. Releasing Shift before apply should produce no different. Pressing Shift when Apply is already pressed should not trigger "CutBoostMode".
« Last Edit: June 30, 2015, 12:30:05 PM by azslow3 »

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
Re: Actions from Timer not working?
« Reply #8 on: June 30, 2015, 01:03:58 PM »
Quote
Not only the function call itself, but ALL actions INSIDE the function have it. So, in case you call a function which should work when "Note:Off", ALL actions inside the function should have "Note:Off".
AHHH! Now i know what you mean!
I´ve read that completely different, but i guess there are some slight misinterpretations, because we´re both no native speakers ;)

Quote
I repeat, that is not so that you really add something, you change the condition which is already there. I just do not show "Note:On" in the list (to keep the text small).
Yes, of course i know that - i was just not aware that this Flag is also passed to the called function! So everything clear now (i hope).

Offline MarKo

  • Power user
  • Full Member
  • *
  • Posts: 249
Re: Actions from Timer not working?
« Reply #9 on: June 30, 2015, 01:23:05 PM »
So, my proposal (not in the near of any surface, so can not provide an example preset, but can do this at the evening if required)...
Thanks for your proposal, but really no need for an example.
This was also one of my suggestions for Basie, but anyway i´d like to try it with buttons and NoteOff (as in my last question). I think this is faster to work with, but i need to try...