hardbyte / hardbyte/python-can

Recive manipulate and send

Aperta
#1,736 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
Python
Stelle
1.6k
Fork
697
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Describe the bug
I am simulating that a signal is coming to the rpi so that I can capture that message edit the message ID and then send it over another socket on my 2-CH CAN FD HAT.

### To Reproduce

In one terminal I execute this python script:
```python
import can
import os
import time

os.system("sudo /sbin/ip link del dev vcan2 type vcan") # Para el bucle
os.system("sudo /sbin/ip link add dev vcan2 type vcan") # vcan0 logger
os.system("sudo /sbin/ip link set can0 down")
os.system("sudo /sbin/ip link set can1 down")
os.system("sudo /sbin/ip link set can2 down")
os.system("sudo /sbin/ip link set can0 up type can bitrate 500000")
os.system("sudo /sbin/ip link set can1 up type can bitrate 500000")
os.system("sudo /sbin/ip link set can2 up type can bitrate 500000")
os.system("sudo /sbin/ip link set vcan2 up")

a = 1
bus0 = can.Bus(bustype='socketcan', channel='can0',bitrate = 500000)
bus1 = can.Bus(bustype='socketcan', channel='can1',bitrate = 250000)
bus2 = can.Bus(bustype='socketcan', channel='can2',bitrate = 500000)
busV2 = can.Bus(bustype='socketcan', channel='vcan2',bitrate = 500000)

while True:
msg = busV2.recv()
print(msg)
print(hex(msg.arbitration_id))
print(msg.data.hex())
print(msg.channel)

b = hex(msg.arbitration_id + a)
msg.arbitration_id = int(b,16)
msg.channel = 'can1'
print(msg)
bus1.send(msg)
```
in the other terminal I execute this:
```
@raspberrypi:~ $ cat /home/jlab/Desktop/SMART1_SIMONE-2024-01-16_222654.log | canplayer vcan2=can0
```

### Expected behavior

signals going out on can1
### Additional context

OS and version:
Python version:
python-can version:
python-can interface/s (if applicable):

Traceback and logs

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.