Why is the same code not running now?
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- embedded-iot
Rechercherichtung
Beginnen Sie damit, das bereitgestellte Skript mit der angegebenen Canable-Hardware, der slcan-Schnittstelle, dem Betriebssystem, der Python-Version und der python-can-Version zu reproduzieren. Untersuchen Sie die Einstiegspunkte can.interface.Bus und AsyncBufferedReader und sammeln Sie den fehlenden Traceback oder die fehlenden Protokolle. Als erledigt gilt die Aufgabe, wenn eine reproduzierbare Ursache mit einem umsetzbaren Bericht identifiziert wurde oder dokumentiert ist, dass das Problem umgebungsbedingt und kein python-can-Fehler ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the bug
I used to be able to successfully obtain data using the following code, but now the data cannot be displayed
The hardware I am using is Canable.
Additional context
OS and version:Windows10/Ubuntu 24.04
Python version:Python3.10/Python3.12
python-can version:4.2.0/4.4.2
python-can interface/s (if applicable):slcan
Traceback and logs
The environment that was once able to run successfully:
cantools==39.3.0
mqtt==0.0.1
paho-mqtt==1.6.1
pyserial==3.5
python-can==4.2.0
this is my code example,It was once able to run successfully.
# This is a sample Python script.
import asyncio
import time
from typing import List
import can
from can.notifier import MessageRecipient
# import cantools
import serial.tools.list_ports
# import paho.mqtt.client as mqtt
# import json
# client = mqtt.Client()
# db = cantools.database.load_file('.\wuling.dbc')
def on_connect(client, userdata, flags, rc):
print(f"Connected with result code {rc}")
async def main() -> None:
port = None
ports_list = list(serial.tools.list_ports.comports())
if len(ports_list) <= 0:
print("无串口设备,即将退出...")
time.sleep(2)
exit(0)
else:
print("可用的串口设备如下:")
for comport in ports_list:
print(comport.name + ",描述:" + str(comport.description) + ",设备ID:" + str(comport.vid) + ":" + str(
comport.pid))
for comport in ports_list:
if comport.pid == 4478 and comport.vid == 5840:
print("选择第一个CAN设备:" + comport.name + " " + str(comport.description))
port = comport
break
if port is None:
print("未发现CAN设备,即将退出...")
time.sleep(2)
exit(0)
# client.on_connect = on_connect
# client.username_pw_set(username="user", password="user")
# client.connect("127.0.0.1", 1883, 60)
"""The main function that runs in the loop."""
with can.interface.Bus(bustype='slcan', channel=str(port.name), bitrate=500000, ) as bus:
reader = can.AsyncBufferedReader()
listeners: List[MessageRecipient] = [
reader,
]
loop = asyncio.get_running_loop()
notifier = can.Notifier(bus, listeners, loop=loop)
while True:
msg = await reader.get_message()
try:
print(msg)
except Exception as ex:
print(ex)
pass
pass
if __name__ == "__main__":
asyncio.run(main())
- Vorherrschende Sprache
- Python
- Sterne
- 1.6k
- Forks
- 697
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus hardbyte/python-can
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
hardbyte/python-can#2103 ·
-
bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 78/100
hardbyte/python-can#2077 · 1 Kommentar · 1 Reaktion ·
-
bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 68/100
hardbyte/python-can#1922 · 1 Reaktion ·
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 30/100
hardbyte/python-can#2102 ·
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
hardbyte/python-can#2092 ·
Alle Issues in hardbyte/python-can
Ähnliche Issues
-
area: harness bug status: needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Human-Agent-Society/reef#625 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 80/100
learningequality/kolibri#15351 · 2 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Name consistency Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
eellak/triplestore#65 · 1 Kommentar ·