16-Dec-2025, 08:44
Here is a comparison of DOS2 to DOS3. (as reported by the APIs).
> This is kind of interesting noticed there are some form of latency settings even in dos2.
![[Image: dos2-dos3-feature-comparison-halrad.png]](https://halrad.com/slPhantomRemote/devdocs/dos2-dos3-feature-comparison-halrad.png)
That comparison and related findings is here: https://halrad.com/slPhantomRemote/devdo...atrix.html
its a-work-in-progress. I'm still looking for some of the endpoints but knowing what you're looking for is more than half the battle.
Noticed some of the DOS2 vs DOS3 apis are different which breaks things that once worked... sigh...
Nightmode for example has a different signature between dos2 and dos3, which means to implement both you need to build an API map and a discombobulator to make the right calls at runtime.
Runtime Discombobulation:
// Check availableFeatures to pick the right endpoint
if (device.HasFeature("nightModeOverlay"))
endpoint = "settings/audio/nightModeOverlay"; // DOS 3
else if (device.HasFeature("nightMode"))
endpoint = "settings/audio/nightMode"; // DOS 2
else
return null; // Night mode not supported (Arch, Dialog)
but notice there are some latency settings HMM...
now where are those endpoints.
> This is kind of interesting noticed there are some form of latency settings even in dos2.
![[Image: dos2-dos3-feature-comparison-halrad.png]](https://halrad.com/slPhantomRemote/devdocs/dos2-dos3-feature-comparison-halrad.png)
That comparison and related findings is here: https://halrad.com/slPhantomRemote/devdo...atrix.html
its a-work-in-progress. I'm still looking for some of the endpoints but knowing what you're looking for is more than half the battle.
Noticed some of the DOS2 vs DOS3 apis are different which breaks things that once worked... sigh...
Nightmode for example has a different signature between dos2 and dos3, which means to implement both you need to build an API map and a discombobulator to make the right calls at runtime.
Runtime Discombobulation:
// Check availableFeatures to pick the right endpoint
if (device.HasFeature("nightModeOverlay"))
endpoint = "settings/audio/nightModeOverlay"; // DOS 3
else if (device.HasFeature("nightMode"))
endpoint = "settings/audio/nightMode"; // DOS 2
else
return null; // Night mode not supported (Arch, Dialog)
but notice there are some latency settings HMM...
now where are those endpoints.

