HID services
See here for the HID shared-memory.
hid
This is "nn::hid::IHidServer".
| Cmd | Name | 
|---|---|
| 0 | #CreateAppletResource | 
| 1 | ActivateDebugPad | 
| 11 | ActivateTouchScreen | 
| 21 | ActivateMouse | 
| 31 | ActivateKeyboard | 
| 40 | AcquireXpadIdEventHandle | 
| 41 | ReleaseXpadIdEventHandle | 
| 51 | ActivateXpad | 
| 55 | GetXpadIds | 
| 56 | ActivateJoyXpad | 
| 58 | GetJoyXpadLifoHandle | 
| 59 | GetJoyXpadIds | 
| 60 | ActivateSixAxisSensor | 
| 61 | DeactivateSixAxisSensor | 
| 62 | GetSixAxisSensorLifoHandle | 
| 63 | ActivateJoySixAxisSensor | 
| 64 | DeactivateJoySixAxisSensor | 
| 65 | GetJoySixAxisSensorLifoHandle | 
| 66 | StartSixAxisSensor | 
| 67 | StopSixAxisSensor | 
| 68 | IsSixAxisSensorFusionEnabled | 
| 69 | EnableSixAxisSensorFusion | 
| 70 | SetSixAxisSensorFusionParameters | 
| 71 | GetSixAxisSensorFusionParameters | 
| 72 | ResetSixAxisSensorFusionParameters | 
| 73 | SetAccelerometerParameters | 
| 74 | GetAccelerometerParameters | 
| 75 | ResetAccelerometerParameters | 
| 76 | SetAccelerometerPlayMode | 
| 77 | GetAccelerometerPlayMode | 
| 78 | ResetAccelerometerPlayMode | 
| 79 | SetGyroscopeZeroDriftMode | 
| 80 | GetGyroscopeZeroDriftMode | 
| 81 | ResetGyroscopeZeroDriftMode | 
| 82 | IsSixAxisSensorAtRest | 
| 91 | ActivateGesture | 
| 100 | SetSupportedNpadStyleSet | 
| 101 | GetSupportedNpadStyleSet | 
| 102 | SetSupportedNpadIdType | 
| 103 | ActivateNpad | 
| 104 | DeactivateNpad | 
| 106 | AcquireNpadStyleSetUpdateEventHandle | 
| 107 | DisconnectNpad | 
| 108 | GetPlayerLedPattern | 
| 120 | SetNpadJoyHoldType | 
| 121 | GetNpadJoyHoldType | 
| 122 | SetNpadJoyAssignmentModeSingleByDefault | 
| 123 | SetNpadJoyAssignmentModeSingle | 
| 124 | SetNpadJoyAssignmentModeDual | 
| 125 | MergeSingleJoyAsDualJoy | 
| 126 | StartLrAssignmentMode | 
| 127 | StopLrAssignmentMode | 
| 128 | SetNpadHandheldActivationMode | 
| 129 | #GetNpadHandheldActivationMode | 
| 130 | SwapNpadAssignment | 
| 131 | IsUnintendedHomeButtonInputProtectionEnabled | 
| 132 | EnableUnintendedHomeButtonInputProtection | 
| 200 | GetVibrationDeviceInfo | 
| 201 | #SendVibrationValue | 
| 202 | #GetActualVibrationValue | 
| 203 | CreateActiveVibrationDeviceList | 
| 204 | PermitVibration | 
| 205 | IsVibrationPermitted | 
| 206 | SendVibrationValues | 
| 300 | ActivateConsoleSixAxisSensor | 
| 301 | StartConsoleSixAxisSensor | 
| 302 | StopConsoleSixAxisSensor | 
| 400 | IsUsbFullKeyControllerEnabled | 
| 401 | EnableUsbFullKeyController | 
| 402 | IsUsbFullKeyControllerConnected | 
| 1000 | SetNpadCommunicationMode | 
| 1001 | GetNpadCommunicationMode | 
CreateAppletResource
Takes a PID and an u64 AppletResourceUserId. Returns an #IAppletResource.
GetNpadHandheldActivationMode
Takes a PID and an u64 AppletResourceUserId. Returns an output u64. Official user-processes panic if the output u64 is not 0-2.
SendVibrationValue
Takes a PID-descriptor, an u32 VibrationDeviceHandle, 0x10-byte VibrationValue immediately after that, and an u64 AppletResourceUserId.
GetActualVibrationValue
Takes a PID-descriptor, an u32 VibrationDeviceHandle, and an u64 AppletResourceUserId. Returns the 0x10-byte VibrationValue.
IAppletResource
| Cmd | Name | 
|---|---|
| 0 | #GetSharedMemoryHandle | 
No input. Returned a sharedmem handle.
hid:dbg
This is "nn::hid::IHidDebugServer".
| Cmd | Name | 
|---|---|
| 0 | DeactivateDebugPad | 
| 1 | SetDebugPadAutoPilotState | 
| 2 | UnsetDebugPadAutoPilotState | 
| 10 | DeactivateTouchScreen | 
| 11 | SetTouchScreenAutoPilotState | 
| 12 | UnsetTouchScreenAutoPilotState | 
| 20 | DeactivateMouse | 
| 21 | SetMouseAutoPilotState | 
| 22 | UnsetMouseAutoPilotState | 
| 30 | DeactivateKeyboard | 
| 31 | SetKeyboardAutoPilotState | 
| 32 | UnsetKeyboardAutoPilotState | 
| 50 | DeactivateXpad | 
| 51 | SetXpadAutoPilotState | 
| 52 | UnsetXpadAutoPilotState | 
| 60 | DeactivateJoyXpad | 
| 91 | DeactivateGesture | 
| 110 | DeactivateHomeButton | 
| 111 | SetHomeButtonAutoPilotState | 
| 112 | UnsetHomeButtonAutoPilotState | 
| 120 | DeactivateSleepButton | 
| 121 | SetSleepButtonAutoPilotState | 
| 122 | UnsetSleepButtonAutoPilotState | 
| 123 | DeactivateInputDetector | 
| 130 | DeactivateCaptureButton | 
| 131 | SetCaptureButtonAutoPilotState | 
| 132 | UnsetCaptureButtonAutoPilotState | 
| 133 | SetShiftAccelerometerCalibrationValue | 
| 134 | GetShiftAccelerometerCalibrationValue | 
| 135 | SetShiftGyroscopeCalibrationValue | 
| 136 | GetShiftGyroscopeCalibrationValue | 
| 140 | DeactivateConsoleSixAxisSensor | 
| 201 | ActivateFirmwareUpdate | 
| 202 | DeactivateFirmwareUpdate | 
| 203 | StartFirmwareUpdate | 
| 204 | GetFirmwareUpdateStage | 
| 205 | GetFirmwareVersion | 
| 206 | GetDestinationFirmwareVersion | 
| 207 | DiscardFirmwareInfoCacheForRevert | 
| 208 | StartFirmwareUpdateForRevert | 
| 209 | GetAvailableFirmwareVersionForRevert | 
| 211 | UpdateControllerColor | 
hid:sys
This is "nn::hid::IHidSystemServer".
| Cmd | Name | 
|---|---|
| 31 | SendKeyboardLockKeyEvent | 
| 101 | AcquireHomeButtonEventHandle | 
| 111 | ActivateHomeButton | 
| 121 | AcquireSleepButtonEventHandle | 
| 131 | ActivateSleepButton | 
| 141 | AcquireCaptureButtonEventHandle | 
| 151 | ActivateCaptureButton | 
| 210 | AcquireNfcDeviceUpdateEventHandle | 
| 211 | GetNpadsWithNfc | 
| 212 | AcquireNfcActivateEventHandle | 
| 213 | ActivateNfc | 
| 230 | AcquireIrSensorEventHandle | 
| 231 | ActivateIrSensor | 
| 301 | ActivateNpadSystem | 
| 303 | ApplyNpadSystemCommonPolicy | 
| 304 | EnableAssigningSingleOnSlSrPress | 
| 305 | DisableAssigningSingleOnSlSrPress | 
| 306 | GetLastActiveNpad | 
| 307 | GetNpadSystemExtStyle | 
| 311 | SetNpadPlayerLedBlinkingDevice | 
| 321 | GetUniquePadsFromNpad | 
| 322 | GetIrSensorState | 
| 323 | GetXcdHandleForNpadWithIrSensor | 
| 500 | SetAppletResourceUserId | 
| 501 | RegisterAppletResourceUserId | 
| 502 | UnregisterAppletResourceUserId | 
| 503 | EnableAppletToGetInput | 
| 504 | SetAruidValidForVibration | 
| 505 | EnableAppletToGetSixAxisSensor | 
| 510 | #SetVibrationMasterVolume | 
| 511 | GetVibrationMasterVolume | 
| 512 | BeginPermitVibrationSession | 
| 513 | EndPermitVibrationSession | 
| 520 | EnableHandheldHids | 
| 521 | DisableHandheldHids | 
| 540 | AcquirePlayReportControllerUsageUpdateEvent | 
| 541 | GetPlayReportControllerUsages | 
| 542 | AcquirePlayReportRegisteredDeviceUpdateEvent | 
| 543 | GetRegisteredDevices | 
| 544 | AcquireConnectionTriggerTimeoutEvent | 
| 545 | SendConnectionTrigger | 
| 546 | AcquireDeviceRegisteredEventForControllerSupport | 
| 547 | GetAllowedBluetoothLinksCount | 
| 700 | ActivateUniquePad | 
| 702 | AcquireUniquePadConnectionEventHandle | 
| 703 | GetUniquePadIds | 
| 751 | AcquireJoyDetachOnBluetoothOffEventHandle | 
| 800 | ListSixAxisSensorHandles | 
| 801 | IsSixAxisSensorUserCalibrationSupported | 
| 802 | ResetSixAxisSensorCalibrationValues | 
| 803 | StartSixAxisSensorUserCalibration | 
| 804 | CancelSixAxisSensorUserCalibration | 
| 805 | GetUniquePadBluetoothAddress | 
| 806 | DisconnectUniquePad | 
| 821 | StartAnalogStickManualCalibration | 
| 822 | RetryCurrentAnalogStickManualCalibrationStage | 
| 823 | CancelAnalogStickManualCalibration | 
| 824 | ResetAnalogStickManualCalibration | 
| 850 | IsUsbFullKeyControllerEnabled | 
| 851 | EnableUsbFullKeyController | 
| 852 | IsUsbConnected | 
| 900 | ActivateInputDetector | 
| 901 | NotifyInputDetector | 
| 1000 | InitializeFirmwareUpdate | 
| 1001 | GetFirmwareVersion | 
| 1002 | GetAvailableFirmwareVersion | 
| 1003 | IsFirmwareUpdateAvailable | 
| 1004 | CheckFirmwareUpdateRequired | 
| 1005 | StartFirmwareUpdate | 
| 1006 | AbortFirmwareUpdate | 
| 1007 | GetFirmwareUpdateState | 
SetVibrationMasterVolume
Takes an input 32bit float.
RomFS
The hid-sysmodule RomFS only contains "/ftmFwUpdate/NTD_4CD_1801.fts256". Content doesn't seem to match Joy-Con FW.