Compare commits
4 Commits
Author | SHA1 | Date |
---|---|---|
|
818c4e1ad3 | |
|
5e2965d274 | |
|
e99a7e2012 | |
|
82836a4ea3 |
16
main.py
16
main.py
|
@ -1,4 +1,4 @@
|
|||
import serial, time, threading
|
||||
import serial, time, threading, subprocess
|
||||
|
||||
import busio
|
||||
from digitalio import DigitalInOut, Direction, Pull
|
||||
|
@ -9,12 +9,20 @@ import adafruit_rfm9x
|
|||
CS = DigitalInOut(board.CE1)
|
||||
RESET = DigitalInOut(board.D25)
|
||||
spi = busio.SPI(board.SCK, MOSI=board.MOSI, MISO=board.MISO)
|
||||
|
||||
try:
|
||||
rfm = adafruit_rfm69.RFM69(spi, CS, RESET, 868.0)
|
||||
except RuntimeError as error:
|
||||
print('RFM69 Error: ', error)
|
||||
#rfm = adafruit_rfm69.RFM69(spi, CS, RESET, 868.0)
|
||||
rfm = adafruit_rfm9x.RFM9x(spi, CS, RESET, 868.0, baudrate=20000000)
|
||||
#rfm = adafruit_rfm9x.RFM9x(spi, CS, RESET, 868.0, baudrate=20000000)
|
||||
|
||||
addr = '/tmp/rfmtty'
|
||||
addr_client = '/tmp/rfmtty_client'
|
||||
|
||||
baudrate = 115200
|
||||
packet_len = 251
|
||||
|
||||
cmd=['/usr/bin/socat','-d','-d','PTY,link=%s,raw,echo=0' %
|
||||
addr, 'PTY,link=%s,raw,echo=0' % addr_client]
|
||||
socat_proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
|
@ -46,9 +54,6 @@ def serial_port_writer(ser, rfm):
|
|||
ser.write(packet)
|
||||
|
||||
|
||||
baudrate = 115200
|
||||
packet_len = 251
|
||||
|
||||
reader_thread = threading.Thread(target=serial_port_reader, args=(ser,rfm), daemon=True)
|
||||
reader_thread.start()
|
||||
writer_thread = threading.Thread(target=serial_port_writer, args=(ser,rfm), daemon=True)
|
||||
|
@ -63,6 +68,7 @@ except KeyboardInterrupt:
|
|||
print("Programm durch Benutzer unterbrochen.")
|
||||
|
||||
finally:
|
||||
socat_proc.kill()
|
||||
ser.close()
|
||||
reader_thread.join()
|
||||
writer_thread.join()
|
Loading…
Reference in New Issue