30 #define XBOX_ONE_EP_MAXPKTSIZE 64
33 #define XBOX_ONE_CONTROL_PIPE 0
34 #define XBOX_ONE_OUTPUT_PIPE 1
35 #define XBOX_ONE_INPUT_PIPE 2
37 #define XBOX_ONE_MAX_ENDPOINTS 3
42 #define XBOX_VID1 0x045E
43 #define XBOX_ONE_PID1 0x02D1
44 #define XBOX_ONE_PID2 0x02DD
45 #define XBOX_ONE_PID3 0x02E3
46 #define XBOX_ONE_PID4 0x02EA
47 #define XBOX_ONE_PID13 0x0B0A
48 #define XBOX_ONE_PID14 0x0B12
51 #define XBOX_VID2 0x0738
52 #define XBOX_VID3 0x0E6F
53 #define XBOX_VID4 0x0F0D
54 #define XBOX_VID5 0x1532
55 #define XBOX_VID6 0x24C6
57 #define XBOX_ONE_PID5 0x4A01
58 #define XBOX_ONE_PID6 0x0139
59 #define XBOX_ONE_PID7 0x0146
60 #define XBOX_ONE_PID8 0x0067
61 #define XBOX_ONE_PID9 0x0A03
62 #define XBOX_ONE_PID10 0x541A
63 #define XBOX_ONE_PID11 0x542A
64 #define XBOX_ONE_PID12 0x543A
83 virtual uint8_t
Init(uint8_t parent, uint8_t port,
bool lowspeed);
93 virtual uint8_t
Poll();
125 virtual bool VIDPIDOK(uint16_t vid, uint16_t pid) {
160 pFuncOnInit = funcOnInit;
173 void setRumbleOn(uint8_t leftTrigger, uint8_t rightTrigger, uint8_t leftMotor, uint8_t rightMotor);
218 void (*pFuncOnInit)(void);
220 uint8_t pollInterval;
224 uint16_t ButtonState;
225 uint16_t OldButtonState;
226 uint16_t ButtonClickState;
228 uint16_t triggerValue[2];
229 uint16_t triggerValueOld[2];
243 uint8_t XboxCommand(uint8_t* data, uint16_t nbytes);
#define XBOX_ONE_MAX_ENDPOINTS
#define XBOX_ONE_EP_MAXPKTSIZE
virtual uint8_t GetAddress()
void attachOnInit(void(*funcOnInit)(void))
EpInfo epInfo[XBOX_ONE_MAX_ENDPOINTS]
void PrintEndpointDescriptor(const USB_ENDPOINT_DESCRIPTOR *ep_ptr)
void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep)
virtual bool VIDPIDOK(uint16_t vid, uint16_t pid)
void setRumbleOn(uint8_t leftTrigger, uint8_t rightTrigger, uint8_t leftMotor, uint8_t rightMotor)
bool getButtonClick(ButtonEnum b)
virtual uint8_t Release()
uint16_t getButtonPress(ButtonEnum b)
uint8_t readPollInterval()
virtual uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed)
int16_t getAnalogHat(AnalogHatEnum a)