MT code may be changing - but I don't think I'm doing it!

gabriels

2016-08-16 19:20:50

I've been noticing this over the past few weeks but don't know what to make of it.

Parts of my MT code seem to stop working as they should. When I inspect the code I notice that Incoming Triggers and/or Outgoing Actions have been changed to "Note On channel 1 with note 60 (0x3C) and velocity (0x7F).

At first, I thought I might have done it inadvertently, but it's happened several times now, and I just can't believe I keep on making such a peculiar mistake. The attached jpg shows the first of several initialization translators with this problem. All translators originally had "Physical Keys L" as the input - and similar outputs (the first output was originally a timer for APC1 LEDS, though).

I'm still working on the code, so it's not clear that this would happen during normal usage, but it's troubling.
Any ideas?
Thanks,
Gabriel
Capture.JPG
Capture.JPG (83.36 KiB) Viewed 4973 times

gabriels

2016-08-16 19:36:35

I notice, in respect to the problem I just documented, that the output message will revert to its original value in some cases.
In the case the the output was originally a Raw MIDI/System Exclusive message that was somehow changed to a Note On message, if I change the output type back to Raw MIDI/System Exclusive, the original MIDI message is automatically recovered. This happens even if the message contained multiple Messages (for example, B0 20 7F B0 21 7f B0 22 7f....etc).
Gabriel

florian

2016-08-17 12:29:27

Hi Gabriels,
that's troubling indeed. It looks like MT reverts the MIDI action to the default MIDI action. We'll have a look when such initialization happens. In any case, I'm very sure that this can only happen when editing the translator in question. It's pretty much impossible that a translator changes when you just load the project file and don't actively edit it.

Please keep backup copies of your projects...

Thanks,
Florian

gabriels

2016-08-17 23:34:47

This may help... I was editing my code, but left MT running while I left the room for about 1/2 hour. I was displaying the contents of a translator at the time, but was not actively editing it. When I returned and looked at the screen again, I noticed that the output, in the translator window, which was originally 90 qq 02 90 rr 04 - had changed to the default note on output. But in the list of translators (the center pane) the output column
conflicting info.JPG
conflicting info.JPG (44.49 KiB) Viewed 4951 times
was still showing the correct action (90 qq 02 90 rr 04).
I then visited another preset and returned to the preset and translator in question, and the output of the translator had indeed been changed to the default note output.

I'm not sure what you mean about this happening only when editing. Do you mean that you don't think it would happen when just launching MT and never opening a preset - just letting inputs get translated and then generate outputs? That never happens, since I do activate certain initialization presets and then deactivate them if only playing (not editing). Also... I wasn't actively editing the code when this happened. It seems to have happened spontaneously while the translator was displayed.

In any case, yes... I back up my code constantly, making dated copies every few hours.
Would it help if I sent you the code?

One more thing. I do sometimes respond to incoming potentiometer changes by sending mouse co-ordinates and then mouse button clicks. Still, I doubt that this relates, firstly, because MT is running on a second screen with very different coordinates from those that are generated. Also, It would be strange if I just happened to find the coordinates for changing from Raw MIDI to Note On consistently since I adjust the position of the translator window dividers now and again.

Thanks,
Gabriel

gabriels

2016-08-17 23:40:16

I'll make a point of leaving MT running with a translator displayed when I'm not actively doing anything with the program, just to see if I can replicate the problem.
Gabriel

gabriels

2016-08-18 00:00:41

Possible clues....?
- It's possible that this is only happening when the output code is Raw MIDI - and maybe only when there are multiple messages included in one ouput action. However, I notice that this has sometimes happened to inputs as well as outputs. I'm not sure if it has been happening to only a certain type of input.

- I do run quite a few initialization routines which set LEDS and variables.

- I use the L and the O key on my laptop to run the (L to run the initialization routines, O to send messages to Ableton Live during debugging.

- I sometimes get the message when I attempt to exit MT or load a different file into MT, that there has been a change in the code, and asking if I want to save. It sometimes surprises me because I think that I haven't changed anything.

Just pondering....
Gabriel

florian

2016-08-18 11:31:31

Hi Gabriels,
thanks for the further info. Your observations narrow down the possible causes. In particular, when changing the MIDI type with the mouse, the translator list should always be updated, too. So it seems more like an internal reset of the MIDI type.

With "not editing" I mean that you don't select different translators so that they're displayed in the right side bar. You can hide the side bar or select a preset or the project to prevent "edit mode".

Which version of MT are you using?

Thanks,
Florian

gabriels

2016-08-18 12:11:28

Hi Florian,
I'm using the latest Beta 1.81 build 831
BTW... I left MT running with a translator window open (but I wasn't doing anything to it) for a few hours this evening. Nothing happened - inputs and outputs remained as they should be.
The error seems to be happening infrequently. I've been spending many hours a day working with the code for many months, but in searching for this type of error (by searching the exported text file) I only found 8 errors.
Thanks,
Gabriel

gabriels

2016-08-21 08:38:46

One more observation:
Several times, both inputs and outputs for a translator have been changed to the default
"Note On on channel 1 with note:60 (0x3C) and velocity:127 (0x7F)"

This may happen 1/2 of the time. Otherwise only Input or output gets changed.
Gabriel

gabriels

2016-08-22 09:13:43

Florian,
Here's a bit more data in respect to the internally changing code, and also a reality check. I wasn't sure I was actually seeing what I reported to you...that maybe I had done something wrong.
Below, though, is another occurrence of the same problem. The Incoming Trigger is listed as B7 23 oo in the middle pane, but the
actual incoming trigger (in the translator window) is the default Note On message:
Diff.JPG
Diff.JPG (74.65 KiB) Viewed 4853 times
When the file is exported as text, the text editor shows the Incoming Trigger as the Note On message.
- The translator doesn't work.
TextEditor.JPG
TextEditor.JPG (20.13 KiB) Viewed 4853 times
- If I change the Outgoing Midi Message type to Raw MIDI, the correct Incoming Trigger (B7 23 oo) is recovered and the translator
works.
Here's a image of the translator after being fixed in this fashion:
Same.JPG
Same.JPG (74.55 KiB) Viewed 4853 times
I hope this helps somewhat.
Thanks,
Gabriel

florian

2016-08-23 00:10:15

thanks. it does give me a better picture of what's happening.
Florian

florian

2018-04-16 01:28:33

Hi Gabriels, you won't believe it, but by pure luck we have found the cause of this problem. It's a rather strange issue, we could reproduce it like this:
- make the MIDI Action editor visible (e.g. add a translator and set it to Incoming MIDI)
- now load the project file (still the Incoming MIDI Action visible)
- change some other part of the incoming action (e.g. Description)
Then, note, velocity, and sometimes channel will get reverted to its default.

It'll be fixed in the upcoming Bome MIDI Translator Pro version 1.8.3.

Thanks again for reporting it!
Best,
Florian

gabriels

2018-04-17 21:11:09

Yes, indeed, that is the type of error I was seeing... but I could never reproduce it consistently.
Thanks,
Gabriel