hardbyte / hardbyte/python-can
Recive manipulate and send
- Vorherrschende Sprache
- Python
- Sterne
- 1.6k
- Forks
- 697
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
### 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
Beitragsleitfaden
Bewertung
Dieses Issue wurde noch nicht bewertet.