# Numark NS4FX initial MIDI state not read on iOS

**URL:** <https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166>\
**Category:** DJ Hardware\
**Tags:** iOS\
**Created:** [September 7, 2026, 10:05am UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166 "2026-09-07T10:05:18Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![\_naeron\_0](https://community.algoriddim.com/user_avatar/community.algoriddim.com/_naeron_0/32/13697_2.png) [@\_naeron\_0](https://community.algoriddim.com/u/_naeron_0)\
**Post date:** [September 7, 2026, 10:05am UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/1 "2026-09-07T10:05:18Z")

</div>

- Device model: iPad Air 5th Gen
- Version of operating system: iPadOS 26.6.1
- Version of djay: 5.6.8
- Hardware/controllers used: Numark NS4FX via UGREEN Revodok USB-C hub

Expected behavior:

When connecting the controller, the initial state of knobs and faders is read and represented on the app UI as it happens when connecting to macOS. This also works fine with a FLX-4 on iOS, MIDI state is read upon connection.

Actual behavior:

The initial state of the controller is not read and thus the app has default values for each knob, fader and button until they are used at least once to read its current state, resulting in unexpected behavior.

I have tried connecting both directly and via powered USB hub with same result. I assume the FLX-4 uses a different MIDI implementation that iOS can poll upon connection, but as said, the Numark MIDI is initialized correctly on macOS djay pro.

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 7, 2026, 6:10pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/3 "2026-09-07T18:10:55Z")

</div>

Hi @_naeron_0, welcome to the Community! Thanks for the detailed report and setup info.

A few things that would help me narrow things down:

1. What firmware is your NS4FX running?

2. Does it behave any differently connected straight to the iPad with a USB-C cable (no hub), and launching djay _after_ the controller is connected and powered?

3. Is it every control, or only some — for example EQs and trims but not the line faders?

4. Can you please capture and share a short video of this where you can see the hardware and you iPad screen at the same time?

Thanks!

---

<div class="post-metadata">

**Author:** ![\_naeron\_0](https://community.algoriddim.com/user_avatar/community.algoriddim.com/_naeron_0/32/13697_2.png) [@\_naeron\_0](https://community.algoriddim.com/u/_naeron_0)\
**Post date:** [September 8, 2026, 11:18am UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/5 "2026-09-08T11:18:13Z")

</div>

1. Numark does not provide any firmware info or updates for this controller, I guess it’s just PnP.
2. No difference launching djay before/after connecting powered controller.
3. Every control stays default value in app (e.g. vinyl mode off, all faders up, all knobs centred, etc.) until operated, and even then only that action is updated in app, all other remain default.

I tested the MIDI messages listened by both iOS and macOS comparing it with the FLX-4 connection.

| Device\OS | macOS | iPadOS |
| --- | --- | --- |
| NS4FX | djay sends MIDI SysEx Serato (7 bytes) and some Note On messages once. Receives full state and then sends SysEx Serato (13 bytes). | No MIDI sent. No SysEx observed. Only receives single MIDI when control/note pressed. |
| FLX-4 | djay sends MIDI SysEx (AlphaTheta 12 bytes) some Note On messages once. Receives full state and keeps sending same SysEx every 500ms. | No MIDI sent. “Received roughly 12 events when opening djay, somehow retrives full state.”. No SysEx. |

At this point I am not sure if none of the monitoring apps I used let me see outgoing messages or SysEx sending is not allowed on iOS.

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 8, 2026, 7:16pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/6 "2026-09-08T19:16:44Z")

</div>

That’s a great bit of detective work @_naeron_0. Thanks! Your table answers the important part on its own. Even if a monitoring app on iOS can’t show you what djay sends _out_ to the controller, you would still see what comes back _in_ — and on macOS that’s the 13-byte reply plus the full state dump. Nothing comes back on iPadOS. So either the query never goes out, or the NS4FX never answers it. This should be enough to escalate, and I’ll pass this onto engineering for further review. If you could please capture and share a short video of this where you can see the hardware and your iPad screen at the same time that would also be helpful. Thanks again for the thorough testing on this one.

---

<div class="post-metadata">

**Author:** ![\_naeron\_0](https://community.algoriddim.com/user_avatar/community.algoriddim.com/_naeron_0/32/13697_2.png) [@\_naeron\_0](https://community.algoriddim.com/u/_naeron_0)\
**Post date:** [September 9, 2026, 8:37am UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/8 "2026-09-09T08:37:19Z")

</div>



---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 9, 2026, 3:28pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/9 "2026-09-09T15:28:22Z")

</div>

Thanks for the video demo @_naeron_0. This is very helpful. I noticed that you are using a USB adapter on your cable. This may not necessarily be a contributor to your issue, but I highly recommend that you avoid these adapters as they are notoriously unreliable for mission critical DJ setups. Eliminating this adapter by using a proper USB-B to C cable would be much better. I recommend that you purchase a high-quality, properly shielded USB cable with dual ferrites on either end.

---

<div class="post-metadata">

**Author:** ![\_naeron\_0](https://community.algoriddim.com/user_avatar/community.algoriddim.com/_naeron_0/32/13697_2.png) [@\_naeron\_0](https://community.algoriddim.com/u/_naeron_0)\
**Post date:** [September 9, 2026, 4:13pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/10 "2026-09-09T16:13:25Z")

</div>

Thanks for the advice, that’s why I was using the powered USB hub for now, also to keep the iPad on charge as the ns4fx usb does not provide power line.

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 9, 2026, 4:16pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/11 "2026-09-09T16:16:21Z")

</div>

You’re welcome. I would definitely use your UGreen hub over that adapter.

---

<div class="post-metadata">

**Author:** ![\_naeron\_0](https://community.algoriddim.com/user_avatar/community.algoriddim.com/_naeron_0/32/13697_2.png) [@\_naeron\_0](https://community.algoriddim.com/u/_naeron_0)\
**Post date:** [September 11, 2026, 12:22pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/12 "2026-09-11T12:22:18Z")

</div>

I just did another test out of curiosity. I tried sending the Serato SysEx message from a separate app a couple times while djay is open on iPad and it effectively retrieves the state of all knobs, faders and even jogwheel screens info as it does in macOS. So that’s it.

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 11, 2026, 4:08pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/13 "2026-09-11T16:08:18Z")

</div>

That’s the answer right there, @_naeron_0. Nice work! If firing the SysEx from another app makes djay pull in the full state, jog wheel screens and all, then SysEx isn’t blocked on iOS and the NS4FX is answering exactly like it does on macOS. I have passed this additional info onto our engineers. Thanks!

---

<div class="post-metadata">

**Author:** ![StijnDC](https://community.algoriddim.com/user_avatar/community.algoriddim.com/stijndc/32/11822_2.png) [@StijnDC](https://community.algoriddim.com/u/StijnDC)\
**Post date:** [September 13, 2026, 2:46pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/14 "2026-09-13T14:46:14Z")

</div>

I have the same problem, so I’m definitely eager to see this fixed on iOS. Thanks for the great work investigating!

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 13, 2026, 2:56pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/15 "2026-09-13T14:56:44Z")

</div>

Thanks for sharing @StijnDC. Can you please also provide your full setup details with version numbers?

Device Model (ex. 2020 iPad Air 4th Gen):

Version of operating system (ex. iOS 17.3.1):

Version of djay (ex. 5.4.1):

---

<div class="post-metadata">

**Author:** ![StijnDC](https://community.algoriddim.com/user_avatar/community.algoriddim.com/stijndc/32/11822_2.png) [@StijnDC](https://community.algoriddim.com/u/StijnDC)\
**Post date:** [September 13, 2026, 5:01pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/16 "2026-09-13T17:01:34Z")

</div>

Sure, it’s an iPad Pro 13-inch (M4), with IPadOS 26.6.1, and DJay version 5.6.8.

---

<div class="post-metadata">

**Author:** ![Slak\_Jaw](https://community.algoriddim.com/user_avatar/community.algoriddim.com/slak_jaw/32/6517_2.png) [@Slak\_Jaw](https://community.algoriddim.com/u/Slak_Jaw)\
**Post date:** [September 13, 2026, 5:02pm UTC](https://community.algoriddim.com/t/numark-ns4fx-initial-midi-state-not-read-on-ios/43166/17 "2026-09-13T17:02:36Z")

</div>

Thanks @StijnDC
