First test

This commit is contained in:
Marc Riera 2022-10-01 12:21:07 +02:00
parent 252d863689
commit c8c01b9e48

148
ddgo-converter.py Executable file
View file

@ -0,0 +1,148 @@
#!/usr/bin/env python
import pygame # install via pip install pygame
import threading
import queue
import os
pygame.init()
clock = pygame.time.Clock()
joysticks = [pygame.joystick.Joystick(x) for x in range(pygame.joystick.get_count())]
joystick_list = []
joyid = "joyid"
joyname = "joyname"
for i in range(pygame.joystick.get_count()):
jid = {joyid: i, joyname: pygame.joystick.Joystick(i).get_name()}
print(pygame.joystick.Joystick(i).get_guid())
joystick_list.append(jid)
mascon_select = next((i for i, item in enumerate(joystick_list) if item["joyname"] == "Nintendo Switch Pro Controller"),
None)
if mascon_select is None:
print("No Nintendo Switch Pro Controller found. Connect the correct controller and restart the script")
exit()
mascon_counter = 99
pygame.event.clear() # Clear events to remove wrong inputs.
while 1:
for event in pygame.event.get():
if event.type == pygame.JOYAXISMOTION:
# Lever section
mascon_axis = (joysticks[mascon_select].get_axis(1))
mascon_axis = (round(mascon_axis, 2))
if mascon_axis == 0.8:
#print("P4")
qMascon.put(power_max)
mascon_counter = 1
if mascon_axis == 0.62:
if mascon_counter == 3:
qMascon.put(power_inc)
mascon_counter = 2
if mascon_counter == 1:
qMascon.put(power_dec)
mascon_counter = 2
if mascon_axis == 0.44:
if mascon_counter == 4:
qMascon.put(power_inc)
mascon_counter = 3
if mascon_counter == 2:
qMascon.put(power_dec)
mascon_counter = 3
if mascon_axis == 0.25:
if mascon_counter == 5:
qMascon.put(power_inc)
mascon_counter = 4
if mascon_counter == 3:
qMascon.put(power_dec)
mascon_counter = 4
if mascon_axis == 0.0:
qMascon.put(neutral)
mascon_counter = 5
if mascon_axis == -0.21:
if mascon_counter == 5:
qMascon.put(brake_inc)
mascon_counter = 6
if mascon_counter == 7:
qMascon.put(brake_dec)
if notchfix:
qMascon.put(brake_dec)
mascon_counter = 6
if mascon_axis == -0.32:
if mascon_counter == 6:
qMascon.put(brake_inc)
if notchfix:
qMascon.put(brake_inc)
mascon_counter = 7
if mascon_counter == 8:
qMascon.put(brake_dec)
mascon_counter = 7
if mascon_axis == -0.43:
if mascon_counter == 7:
qMascon.put(brake_inc)
mascon_counter = 8
if mascon_counter == 9:
qMascon.put(brake_dec)
if notchfix:
qMascon.put(brake_dec)
mascon_counter = 8
if mascon_axis == -0.53:
if mascon_counter == 8:
qMascon.put(brake_inc)
if notchfix:
qMascon.put(brake_inc)
mascon_counter = 9
if mascon_counter == 10:
qMascon.put(brake_dec)
mascon_counter = 9
if mascon_axis == -0.64:
if mascon_counter == 9:
qMascon.put(brake_inc)
mascon_counter = 10
if mascon_counter == 11:
qMascon.put(brake_dec)
mascon_counter = 10
if mascon_axis == -0.75:
if mascon_counter == 10:
qMascon.put(brake_inc)
if notchfix:
qMascon.put(brake_inc)
mascon_counter = 11
if mascon_counter == 12:
qMascon.put(brake_dec)
mascon_counter = 11
if mascon_axis == -0.85:
if mascon_counter == 11:
qMascon.put(brake_inc)
mascon_counter = 12
if mascon_counter >= 13:
qMascon.put(brake_dec)
mascon_counter = 12
if mascon_axis == -1.00:
qMascon.put(brake_eb)
mascon_counter = 14
# Button section
if event.type == pygame.JOYBUTTONDOWN and event.button == 0:
print("A")
if event.type == pygame.JOYBUTTONDOWN and event.button == 1:
print("B")
if event.type == pygame.JOYBUTTONDOWN and event.button == 2:
print("X")
if event.type == pygame.JOYBUTTONDOWN and event.button == 3:
print("Y")
if event.type == pygame.JOYBUTTONDOWN and event.button == 4:
print("MINUS")
if event.type == pygame.JOYBUTTONDOWN and event.button == 6:
print("PLUS")
if event.type == pygame.JOYBUTTONDOWN and event.button == 11:
print("UP")
if event.type == pygame.JOYBUTTONDOWN and event.button == 12:
print("DOWN")
if event.type == pygame.JOYBUTTONDOWN and event.button == 13:
print("LEFT")
if event.type == pygame.JOYBUTTONDOWN and event.button == 14:
print("RIGHT")