Skip to content

Commit 984a6fd

Browse files
committed
Actually set timeout while opening serial port
1 parent af6f2ce commit 984a6fd

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

utils/flasher.go

+8-6
Original file line numberDiff line numberDiff line change
@@ -17,22 +17,24 @@ var baudRates = []int{
1717
}
1818

1919
func OpenSerial(portName string) (serial.Port, error) {
20-
var port serial.Port
2120
var err error
2221
for _, baudRate := range baudRates {
2322
mode := &serial.Mode{
2423
BaudRate: baudRate,
2524
}
2625
port, err := serial.Open(portName, mode)
27-
if err == nil {
28-
log.Printf("Open the serial port with baud rate %d", baudRate)
29-
return port, nil
26+
if err != nil {
27+
// try another baudrate
28+
continue
3029
}
31-
if err := port.SetReadTimeout(5 * time.Second); err != nil {
30+
log.Printf("Opened the serial port with baud rate %d", baudRate)
31+
32+
if err := port.SetReadTimeout(10 * time.Second); err != nil {
3233
log.Fatalf("Could not set timeout on serial port: %s", err)
3334
return nil, err
3435
}
36+
return port, nil
3537
}
36-
return port, err
3738

39+
return nil, err
3840
}

0 commit comments

Comments
 (0)