I’ve been doing some messing about to see if i can get some sort of editor software going for anushri.
When sending the bulk dump request (f0 00 21 02 00 08 11 00 00 00 f7) I get sent only the first 3 payloads, and it sends them twice.
When doing a sysex dump ,by holding the run/stop key, I do get all 5.
Am I doing something wrong, is there a bug in the firmware, or is this by design ?
Anybody can reproduce this problem?
Yes, I am also having this problem. I’ve noticed that it works if I disable “THRU” messages (clear MIDI_OUT_TX_INPUT_MESSAGES in system settings, either through SysEx or control buttons).
At first I thought this was my midi interface but i’ve tested two different ones and it seems the same result. I don’t think the midi interfaces have an issue with receiving the sysex packets since it works when THRU messages are disabled (or run/stop is held).
I’ve read through the anushri code several times and there is nothing that obviously looks like a bug. At first I though there may be some race RingBuffer::Write and RingBuffer::ImmediateRead (used from MidiDispatcher::SendBlocking and FlushMidiOut) but I don’t think so anymore. My current guess is that the serial port hardware is incorrectly returning true for “writable()” in FlushMidiOut.
pichenettes maybe the clue of clearing the MIDI_OUT_TX_INPUT_MESSAGES bit can help you debug. I don’t have an Oscilloscope so I can’t check the output of the midi port manually. This could still be a bug in USB<->MIDI hardware or Linux/Alsa. I’ve wasted a lot of time with this so getting to the bottom of it would make me feel better
The code I am using to send and receive the bulk dump is attached. It fully works when MIDI_OUT_TX_INPUT_MESSAGES is clear, it fails otherwise.
Wow, can’t believe this sat for 3 years without being solved. An editor would be great, particularly for the ‘hidden’ functions which can’t be accessed on the synth itself. Obviously the parameters that can be accessed are pretty accessible. I guess what the Anushri would benefit more from than an editor is a ‘settings program’.