Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Negative timestamps occur by using a Notifier to record CAN messages from multiple channels

Aperta
#1,944 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
python

Direzione di ricerca

Inizia con i punti di ingresso Logger.on_message_received e Notifier mostrati nella riproduzione, quindi riproduci la registrazione dei messaggi dai due bus aperti con python-can 4.2.0 su Windows. Il lavoro è completato quando i timestamp nel log CAN registrato non diventano negativi e rimangono coerenti quando i messaggi arrivano su più canali.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug
Describe the bug

Negative time occurs when recording many channles CAN messages and channel changes

To Reproduce

创建自定义日志记录器

log_writer = can.Logger('test.asc')

def handle_message(msg):
print(msg)
log_writer.on_message_received(msg)

_can = Can_interface(driver_list=['kvaser', 'vector'])
buses = {
'1': _can.open_driver(3),
'2': _can.open_driver(4),
}
notifiers = list()
for channel, bus in buses.items():
# 注意:先添加过滤器,再添加处理函数
notifier = Notifier(bus, [])
notifier.add_listener(handle_message)
notifiers.append(notifier)

Expected behavior

I hope to record the CAN messages of different channels in a way that is consistent with the actual received message, and can be kept consistent with 'canoe'

Additional context

OS and version:win10
Python version:python 3.9.13
python-can version:4.2.0
python-can interface/s (if applicable): vector

Traceback and logs
def func():
    return "hello, world!"
Lingua principale
Python
Stelle
1.6k
Fork
697
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di hardbyte/python-can

Tutte le issue di hardbyte/python-can

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.