Skip to content

Data is “swallowed”...? #92

Open
@jenkuki

Description

@jenkuki

Hi,

I have a problem with receiving MIDI data via BLE.
The task: the Arduino Nano 33 BLE should receive data from a MIDI interface (here: BLE), which is generated by the Android APP “MIDI Commander”. The Nano has to filter out and process the data that is important to it (these are NRPN Controller CC 98, 99 and 06) and forward all MIDI commands to other devices, which then do their part.
A Program Change and a total of 7 different Control Changes are sent (actually 3 of these are unnessesary, but the APP unfortunately sends them, although incorrectly - CC100, 101 and 38).
This works on a Uno and a ordinary Nano. I have written a test example for this (see ZIP): MIDI_NRPN-test.ino (Program Change is not processed)
The output is as it should be (format: Controller Number / value):
CC: 0 / 3
CC: 99 / 4
CC: 98 / 2
CC: 6 / 48
Maske: 10001000
Poti Soll: 48
CC: 38 / 0
CC: 101 / 127
CC: 100 / 127

Now the test example on the Nano 33 BLE: MIDI_BLE_test2.ino
The output is incorrect:
CC: 0 / 3
CC: 98 / 2
CC: 6 / 48
CC: 101 / 127
CC: 100 / 127

The CC99 is missing, so there is no further processing, as is the CC38 - but that's okay because it's wrong anyway.
This is just one example. Other send processes result in different outputs. Other controllers are then missing or the values for the controllers are incorrect.
So somehow something is “swallowed up”. What is the cause?

  • Are BLE and the serial interface interfering (timer?, interrupt?)?
  • Is the timing of the incoming signal wrong? Is it possible to control this? If so, where and how?
  • Is this sent at all or does the APP already “swallow” it? I don't know how to find out...

Best Regards

Uwe (jenkuki)

Device: Nano 33 BLE
IDE: Arduino IDE 2.3.2 on Ubuntu 22.04.4 LTS
BLE_Samples.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions