# Mobile touch device managers seem broken : No deviceSourceManagers available on mobile

**URL:** <https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944>\
**Category:** Questions\
**Created:** [October 14, 2025, 6:20am UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944 "2025-10-14T06:20:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tarks](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/tarks/32/48474_2.png) [@Tarks](https://forum.babylonjs.com/u/Tarks)\
**Post date:** [October 14, 2025, 6:20am UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944/1 "2025-10-14T06:20:47Z")

</div>

Calling  
`const ds = this.deviceSourceManager.getDeviceSources(DeviceType.Touch);`  
or even  
`const ds = this.deviceSourceManager.getDeviceSources(DeviceType.Mouse);`

both result in empty arrays.

Inspecting the deviceSourceManager object seems to imply there’s no devices :

 ![image](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/4/d/4db25ba05929d8c95210253824b2cbc28e31d162.png)

Running [Babylon.js Playground](https://playground.babylonjs.com/#Z3UB52) on mobile (chrome and firefox) both alert null.

I assume I’m doing something wrong as it’s unlikely input has broken this much on mobile, I’m just too tired to see exactly what 😃

---

<div class="post-metadata">

**Author:** ![Deltakosh](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/deltakosh/32/26635_2.png) [@Deltakosh](https://forum.babylonjs.com/u/Deltakosh)\
**Post date:** [October 14, 2025, 2:49pm UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944/2 "2025-10-14T14:49:37Z")

</div>

cc @amoebachant

---

<div class="post-metadata">

**Author:** ![amoebachant](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/amoebachant/32/39450_2.png) [@amoebachant](https://forum.babylonjs.com/u/amoebachant)\
**Post date:** [October 14, 2025, 4:36pm UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944/3 "2025-10-14T16:36:35Z")

</div>

Taking a look…

---

<div class="post-metadata">

**Author:** ![Tarks](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/tarks/32/48474_2.png) [@Tarks](https://forum.babylonjs.com/u/Tarks)\
**Post date:** [October 14, 2025, 4:44pm UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944/4 "2025-10-14T16:44:20Z")

</div>

It seems that, conceptually, a Touch ‘Device’ is only momentarily present when a touch is detected. I’m guessing if I touch the screen N times I’d temporarily see N touch devices too.

This works :

```auto
          let deviceSource: DeviceSource<any> = this.deviceSourceManager.getDeviceSource(DeviceType.Mouse);
          if (deviceSource == null) {
            deviceSource = this.deviceSourceManager.getDeviceSource(DeviceType.Touch);
          }

          if (deviceSource == null) {
            return;
          }

          const res = deviceSource.getInput(PointerInput.LeftClick);

```

Would be great to update the docs to make this explicit, are the docs open source too?

---

<div class="post-metadata">

**Author:** ![amoebachant](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/amoebachant/32/39450_2.png) [@amoebachant](https://forum.babylonjs.com/u/amoebachant)\
**Post date:** [October 14, 2025, 7:33pm UTC](https://forum.babylonjs.com/t/mobile-touch-device-managers-seem-broken-no-devicesourcemanagers-available-on-mobile/60944/5 "2025-10-14T19:33:37Z")

</div>

Yes, you’re right, touch devices are added on touch down and removed on touch up. An update to the docs would be very appreciated! Please feel free to do a PR in [GitHub - BabylonJS/Documentation: Babylon.js's documentation website](https://github.com/BabylonJS/Documentation) - thank you!
