Проблема с threading.py в uefi shell
Пишу скрипт тестера на python, который должен запускаться в UEFI Shell. Там будет модуль теста USB и для того я использую библиотеку pyusb, которая тянет за собой threading.py. Возникает следующая ошибка:
Traceback (most recent call last):
File “menu.py” , line 3, in <module>
from Tests.USBTest import testUSB
File "FS0:\Tests\USBTest\testUSB.py", line 1, in ‹module>
import usb.core
File "FS0:\Efi\StdLib\lib\python36.8\site-packages\usb\__init__.py", line 45, in ‹module>
import logging
File "FS0:\Efi\StdLib\lib\python36.8\10gging\__init__py", line 41, in ‹module>
import threading
File "FSO:\Efi\StdLib\1ib\python36.8\threading.py", line 1277, in ‹module>
_main_thread = _MainThread()
File "FSO:\Efi\StdLib\lib\python36.8\threading.py", line 1191, in __init__
Thread.__init__(self, name="MainThread", daemon=False)
File "FS0:\Efi\StdLib\lib\python36.8\threading.py", line 793, in __init__
self._started = Event ()
File "F$0:\Efi\StdLib\1ib\python36.8\threading.py", line 499, in __init_-
self._cond = Condition(Lock)
File "FS0:\EfiNStdLib\1ib\python36.8\threading.py", line 220, in __init__
self.acquire = lock.acquire
AttributeError: 'NoneType' object has no attribute 'acquire'
Error reported: Aborted
Сам код:
import usb.core
import usb.util
import usb.backend.libusb1
backend = usb.backend.libusb1.get_backend(find_library=lambda x:
"D:\\efi\\StdLib\\lib\\python36.8\\site-packages\\libusb\\_platform\\_windows\\x64\\libusb-1.0.dll")
print(backend)
dev = usb.core.find(backend=backend, find_all=True)
print(dev)
def EnumerateUSB(): #I use a simple function that scans all known USB connections and saves their info in the file
with open("EnumerateUSBLog.txt", "w") as wf:
counter = 0
for d in dev:
try:
wf.write("USB Device number " + str(counter) + ":" + "\n")
print("USB Device number " + str(counter) + ":" + "\n")
wf.write(d._get_full_descriptor_str() + "\n")
print(d._get_full_descriptor_str() + "\n")
wf.write("\n")
counter += 1
except NotImplementedError:
wf.write("Device number " + str(counter) + "is busy." + "\n")
wf.write("\n")
counter += 1
except usb.core.USBError:
wf.write("Device number " + str(counter) + " is either disconnected or not found." + "\n")
wf.write("\n")
counter += 1
wf.close()
Уже несколько дней бьюсь над этим, идеи кончились