Updated. /JL
This commit is contained in:
74
pygameController/dualsense_controller.py
Normal file
74
pygameController/dualsense_controller.py
Normal file
@@ -0,0 +1,74 @@
|
||||
from pygameController.controlsbase import ControlsBase
|
||||
from pydualsense import *
|
||||
|
||||
BATTERY_STATE = {
|
||||
"0": "Discharging",
|
||||
"1": "Charging",
|
||||
"2": "Full",
|
||||
"11": "Not charging",
|
||||
"15": "Error",
|
||||
"10": "Temp or voltage out of range"
|
||||
}
|
||||
|
||||
class DualSenseController(ControlsBase):
|
||||
def __init__(self, joy):
|
||||
self.device = pydualsense()
|
||||
self.device.init()
|
||||
self.name = self.device.device.get_product_string()
|
||||
self.powerlevel = self.device.battery.Level
|
||||
self.batterystate = BATTERY_STATE[str(self.device.battery.State)]
|
||||
self.set_player_id(PlayerID.PLAYER_1)
|
||||
print(f"{self.name} connected")
|
||||
print(f"Power level: {self.powerlevel}")
|
||||
print(f"Battery state: {self.batterystate}")
|
||||
|
||||
def handle_input(self, event):
|
||||
pass
|
||||
|
||||
def set_led(self, red: int, green: int, blue: int):
|
||||
self.device.light.setColorI(red, green, blue)
|
||||
|
||||
def set_player_id(self, playerid: PlayerID):
|
||||
self.device.light.setPlayerID(playerid)
|
||||
|
||||
def left(self):
|
||||
pass
|
||||
|
||||
def right(self):
|
||||
pass
|
||||
|
||||
def up(self):
|
||||
pass
|
||||
|
||||
def down(self):
|
||||
pass
|
||||
|
||||
def pause(self):
|
||||
pass
|
||||
|
||||
def rumble(self):
|
||||
pass
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
return self._name
|
||||
|
||||
@name.setter
|
||||
def name(self, name: str) -> None:
|
||||
self._name = name
|
||||
|
||||
@property
|
||||
def powerlevel(self) -> str:
|
||||
return self._powerlevel
|
||||
|
||||
@powerlevel.setter
|
||||
def powerlevel(self, lvl: str) -> None:
|
||||
self._powerlevel = lvl
|
||||
|
||||
@property
|
||||
def batterystate(self) -> int:
|
||||
return self._batterystate
|
||||
|
||||
@batterystate.setter
|
||||
def batterystate(self, state) -> None:
|
||||
self._batterystate = state
|
Reference in New Issue
Block a user