I integrated iRig BlueBoard to my iOS app so that in addition to receiving MIDI messages from the BlueBoard I would send MIDI messages to trigger leds in the device.
It seemed that the MIDI output was intermittent, and eventually hangs completely. I originally suspected that the problem is in the BlueBoard, but when I tested the MIDI output using MIDI Wrench app on my iPhone, everything worked smoothly.
Then I checked how Juce is using CoreMidi in sendMessageNow implementation, and noticed that a timestamp mach_absolute_time() is assigned to the packets. According to documentation we can just use 0 when sending the message right away. I replaced the timestamp with 0 and my BlueBoard works correctly now.
I’m not sure if there’s any regression risk if this change would be taken into Juce, but would recommend it.