HID services: Difference between revisions
No edit summary |
Imported irs cmds from SwIPC. |
||
| Line 423: | Line 423: | ||
=irs= | =irs= | ||
This is "nn::irsensor::IIrSensorServer". The SharedMemory is mapped with permissions=read-only and size=0x8000. | This is "nn::irsensor::IIrSensorServer". | ||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 302 || [[#ActivateIrsensor]] | |||
|- | |||
| 303 || [[#DeactivateIrsensor]] | |||
|- | |||
| 304 || [[#GetIrsensorSharedMemoryHandle]] | |||
|- | |||
| 305 || [[#StopImageProcessor]] | |||
|- | |||
| 306 || [[#RunMomentProcessor]] | |||
|- | |||
| 307 || [[#RunClusteringProcessor]] | |||
|- | |||
| 308 || [[#RunImageTransferProcessor]] | |||
|- | |||
| 309 || [[#GetImageTransferProcessorState]] | |||
|- | |||
| 310 || [[#RunTeraPluginProcessor]] | |||
|- | |||
| 311 || [[#GetNpadIrCameraHandle]] | |||
|- | |||
| 312 || [[#RunDpdProcessor]] | |||
|- | |||
| 313 || [[#SuspendImageProcessor]] | |||
|- | |||
| 314 || [[#CheckFirmwareVersion]] | |||
|} | |||
==ActivateIrsensor== | |||
Takes a PID-descriptor and an [[AM_services|AppletResourceUserId]]. | |||
==DeactivateIrsensor== | |||
Takes a PID-descriptor and an [[AM_services|AppletResourceUserId]]. | |||
==GetIrsensorSharedMemoryHandle== | |||
Takes a PID-descriptor and an [[AM_services|AppletResourceUserId]]. Returns a SharedMemory handle. | |||
The SharedMemory is mapped with permissions=read-only and size=0x8000. | |||
==StopImageProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], and an [[AM_services|AppletResourceUserId]]. | |||
==RunMomentProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], an [[AM_services|AppletResourceUserId]], and a [[#PackedMomentProcessorConfig]]. | |||
==RunClusteringProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], an [[AM_services|AppletResourceUserId]], and a [[#PackedClusteringProcessorConfig]]. | |||
==RunImageTransferProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], an [[AM_services|AppletResourceUserId]], a [[#PackedImageTransferProcessorConfig]], an u64, and a handle. | |||
==GetImageTransferProcessorState== | |||
Takes a PID-descriptor, a type-0x6 output buffer, an [[#IrCameraHandle]], and an [[AM_services|AppletResourceUserId]]. Returns an [[#ImageTransferProcessorState]]. | |||
==RunTeraPluginProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], a [[#PackedTeraPluginProcessorConfig]], and an [[AM_services|AppletResourceUserId]]. | |||
==GetNpadIrCameraHandle== | |||
Takes an input u32. Returns an output [[#IrCameraHandle]]. | |||
==RunDpdProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], a [[#PackedDpdProcessorConfig]], and an [[AM_services|AppletResourceUserId]]. | |||
==SuspendImageProcessor== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], and an [[AM_services|AppletResourceUserId]]. | |||
==CheckFirmwareVersion== | |||
Takes a PID-descriptor, an [[#IrCameraHandle]], a [[#PackedMcuVersion]], and an [[AM_services|AppletResourceUserId]]. | |||
==IrCameraHandle== | |||
This is an u32. | |||
==PackedMomentProcessorConfig== | |||
This is a 0x20-byte struct. | |||
==PackedClusteringProcessorConfig== | |||
This is a 0x28-byte struct. | |||
==ImageTransferProcessorState== | |||
This is a 0x10-byte struct. | |||
==PackedTeraPluginProcessorConfig== | |||
This is an u64. | |||
==PackedDpdProcessorConfig== | |||
This is a 0x10-byte struct. | |||
==PackedMcuVersion== | |||
This is an u32. | |||
=RomFS= | =RomFS= | ||
Revision as of 06:01, 19 January 2018
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.
irs
This is "nn::irsensor::IIrSensorServer".
| Cmd | Name |
|---|---|
| 302 | #ActivateIrsensor |
| 303 | #DeactivateIrsensor |
| 304 | #GetIrsensorSharedMemoryHandle |
| 305 | #StopImageProcessor |
| 306 | #RunMomentProcessor |
| 307 | #RunClusteringProcessor |
| 308 | #RunImageTransferProcessor |
| 309 | #GetImageTransferProcessorState |
| 310 | #RunTeraPluginProcessor |
| 311 | #GetNpadIrCameraHandle |
| 312 | #RunDpdProcessor |
| 313 | #SuspendImageProcessor |
| 314 | #CheckFirmwareVersion |
ActivateIrsensor
Takes a PID-descriptor and an AppletResourceUserId.
DeactivateIrsensor
Takes a PID-descriptor and an AppletResourceUserId.
Takes a PID-descriptor and an AppletResourceUserId. Returns a SharedMemory handle.
The SharedMemory is mapped with permissions=read-only and size=0x8000.
StopImageProcessor
Takes a PID-descriptor, an #IrCameraHandle, and an AppletResourceUserId.
RunMomentProcessor
Takes a PID-descriptor, an #IrCameraHandle, an AppletResourceUserId, and a #PackedMomentProcessorConfig.
RunClusteringProcessor
Takes a PID-descriptor, an #IrCameraHandle, an AppletResourceUserId, and a #PackedClusteringProcessorConfig.
RunImageTransferProcessor
Takes a PID-descriptor, an #IrCameraHandle, an AppletResourceUserId, a #PackedImageTransferProcessorConfig, an u64, and a handle.
GetImageTransferProcessorState
Takes a PID-descriptor, a type-0x6 output buffer, an #IrCameraHandle, and an AppletResourceUserId. Returns an #ImageTransferProcessorState.
RunTeraPluginProcessor
Takes a PID-descriptor, an #IrCameraHandle, a #PackedTeraPluginProcessorConfig, and an AppletResourceUserId.
GetNpadIrCameraHandle
Takes an input u32. Returns an output #IrCameraHandle.
RunDpdProcessor
Takes a PID-descriptor, an #IrCameraHandle, a #PackedDpdProcessorConfig, and an AppletResourceUserId.
SuspendImageProcessor
Takes a PID-descriptor, an #IrCameraHandle, and an AppletResourceUserId.
CheckFirmwareVersion
Takes a PID-descriptor, an #IrCameraHandle, a #PackedMcuVersion, and an AppletResourceUserId.
IrCameraHandle
This is an u32.
PackedMomentProcessorConfig
This is a 0x20-byte struct.
PackedClusteringProcessorConfig
This is a 0x28-byte struct.
ImageTransferProcessorState
This is a 0x10-byte struct.
PackedTeraPluginProcessorConfig
This is an u64.
PackedDpdProcessorConfig
This is a 0x10-byte struct.
PackedMcuVersion
This is an u32.
RomFS
The hid-sysmodule RomFS only contains "/ftmFwUpdate/NTD_4CD_1801.fts256". It's unknown what hw this is for.
Firmware update
Starting with 3.0.0 HID-sysmodule now contains strings for data stored in title 0100000000000822.