HID Services

From 3dbrew
Revision as of 19:27, 30 August 2017 by MarcusD (talk | contribs) (→‎HID service "hid:USER")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


The maximum number of sessions that can open with all of these services combined is 6.

HID service "hid:USER"[edit]

Command Header Only available with hid:SPVR Description
0x00010200 Yes CallibrateTouchScreen
0x00020000 Yes HIDSPVR:UpdateTouchConfig
0x0003.... Yes ?
0x000400C0 Yes ?
0x00050000 Yes ?
0x00060000 Yes ?
0x00070140 Yes ?
0x00080000 Yes ?
0x00090000 Yes ?
0x000A0000 No GetIPCHandles
0x000B0000 Yes StartAnalogStickCalibration
0x000C0040 Yes StopAnalogStickCalibration?
0x000D01C0 Yes SetAnalogStickCalibrateParam?
0x000E0000 Yes GetAnalogStickCalibrateParam
0x000F.... Yes ?
0x0010.... Yes ?
0x00110000 No EnableAccelerometer
0x00120000 No DisableAccelerometer
0x00130000 No EnableGyroscopeLow
0x00140000 No DisableGyroscopeLow
0x00150000 No GetGyroscopeLowRawToDpsCoefficient
0x00160000 No GetGyroscopeLowCalibrateParam
0x00170000 No GetSoundVolume

HID service "hid:SPVR"[edit]

This is used by Home Menu and other system titles. The command-handler for this is the same as the other HID services, see above.

HID service "hid:QTM"[edit]

This was added with 9.0.0-20. HID module only registers+handles this service when running on New 3DS. The command-handler for this is the same as the other HID services, see above. This cmd-handler thread only runs on core2-3, while the other cmd-handler threads run on core0. The cores the cmd-handler thread runs on is the only difference between hid:QTM and the other HID services.

HID service "hid:NFC"[edit]

This was added with 9.3.0-X. NFC module uses this with command 0x00180040, with cmdreq[1] = 0 / 1.

See Also[edit]

HID Shared Memory