From 878db3234e26fc15ecdece043e3f839f42f8a770 Mon Sep 17 00:00:00 2001 From: David de Regt Date: Sat, 15 Jun 2024 01:25:57 -0400 Subject: [PATCH] fix: Don't hardcode /dev into serial port name --- cmd/usbcantest/usbcantest.go | 7 ++++--- pkg/canbus/usbcan.go | 12 ++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/cmd/usbcantest/usbcantest.go b/cmd/usbcantest/usbcantest.go index 27dfb89..79fe81a 100644 --- a/cmd/usbcantest/usbcantest.go +++ b/cmd/usbcantest/usbcantest.go @@ -11,10 +11,11 @@ import ( func main() { ctx := context.Background() + options := canbus.USBCANChannelOptions{ - SerialInterfaceName: "tty.usbserial-210", - SerialBaudRate: 2000000, - BitRate: 250000, + SerialPortName: "/dev/tty.usbserial-210", + SerialBaudRate: 2000000, + BitRate: 250000, FrameHandler: func(frame can.Frame) { fmt.Printf("handled frame: %+v\n", frame) }, diff --git a/pkg/canbus/usbcan.go b/pkg/canbus/usbcan.go index a375f1a..f431cdb 100644 --- a/pkg/canbus/usbcan.go +++ b/pkg/canbus/usbcan.go @@ -35,10 +35,10 @@ const ( // USBCANChannelOptions is a type that contains required options on a SocketCANChannel. type USBCANChannelOptions struct { - SerialInterfaceName string - SerialBaudRate int - BitRate int - FrameHandler can.HandlerFunc + SerialPortName string + SerialBaudRate int + BitRate int + FrameHandler can.HandlerFunc } // USBCANChannel represents a single USB-CAN-based canbus channel for sending/receiving CAN frames @@ -65,7 +65,7 @@ func (c *USBCANChannel) Run(ctx context.Context) error { mode := &serial.Mode{ BaudRate: c.options.SerialBaudRate, } - port, err := serial.Open("/dev/"+c.options.SerialInterfaceName, mode) + port, err := serial.Open(c.options.SerialPortName, mode) if err != nil { return err } @@ -76,7 +76,7 @@ func (c *USBCANChannel) Run(ctx context.Context) error { return err } - c.log.WithField("interfaceName", c.options.SerialInterfaceName). + c.log.WithField("portName", c.options.SerialPortName). Info("Opened USBCAN and listening") pending := []byte{}