Skip to content

Commit 7460829

Browse files
felixdivomergify-bot
authored andcommitted
Use CanInterfaceNotImplementedError
1 parent dc7397e commit 7460829

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

can/interfaces/robotell.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import logging
77

88
from can import BusABC, Message
9+
from ..exceptions import CanInterfaceNotImplementedError
910

1011
logger = logging.getLogger(__name__)
1112

@@ -65,6 +66,8 @@ def __init__(
6566
:param bool rtscts:
6667
turn hardware handshake (RTS/CTS) on and off
6768
"""
69+
if serial is None:
70+
raise CanInterfaceNotImplementedError("The serial module is not installed")
6871

6972
if not channel: # if None or empty
7073
raise TypeError("Must specify a serial port.")
@@ -74,7 +77,7 @@ def __init__(
7477
channel, baudrate=ttyBaudrate, rtscts=rtscts
7578
)
7679

77-
## Disable flushing queued config ACKs on lookup channel (for unit tests)
80+
# Disable flushing queued config ACKs on lookup channel (for unit tests)
7881
self._loopback_test = channel == "loop://"
7982

8083
self._rxbuffer = bytearray() # raw bytes from the serial port
@@ -104,7 +107,7 @@ def set_bitrate(self, bitrate):
104107
self._writeconfig(self._CAN_BAUD_ID, bitrate)
105108
else:
106109
raise ValueError(
107-
"Invalid bitrate, must be less than " + str(self._MAX_CAN_BAUD)
110+
f"Invalid bitrate, must be less than {self._MAX_CAN_BAUD}"
108111
)
109112

110113
def set_auto_retransmit(self, retrans_flag):
@@ -119,8 +122,8 @@ def set_auto_bus_management(self, auto_man):
119122
:param bool auto_man:
120123
Enable/disable automatic bus management
121124
"""
122-
## Not sure what "automatic bus managemenet" does. Does not seem to control
123-
## automatic ACK of CAN frames (listen only mode)
125+
# Not sure what "automatic bus management" does. Does not seem to control
126+
# automatic ACK of CAN frames (listen only mode)
124127
self._writeconfig(self._CAN_ABOM_ID, 1 if auto_man else 0)
125128

126129
def set_serial_rate(self, serial_bps):
@@ -161,7 +164,7 @@ def _getconfigsize(self, configid):
161164
return 4
162165
if configid == self._CAN_READ_SERIAL1 or configid <= self._CAN_READ_SERIAL2:
163166
return 8
164-
if configid >= self._CAN_FILTER_BASE_ID and configid <= self._CAN_FILTER_MAX_ID:
167+
if self._CAN_FILTER_BASE_ID <= configid <= self._CAN_FILTER_MAX_ID:
165168
return 8
166169
return 0
167170

@@ -178,9 +181,7 @@ def _readconfig(self, configid, timeout):
178181
newmsg = self._readmessage(not self._loopback_test, True, timeout)
179182
if newmsg is None:
180183
logger.warning(
181-
"Timeout waiting for response when reading config value {:04X}.".format(
182-
configid
183-
)
184+
f"Timeout waiting for response when reading config value {configid:04X}."
184185
)
185186
return None
186187
return newmsg[4:12]
@@ -211,8 +212,8 @@ def _writeconfig(self, configid, value, value2=0):
211212
newmsg = self._readmessage(not self._loopback_test, True, 1)
212213
if newmsg is None:
213214
logger.warning(
214-
"Timeout waiting for response when writing config value "
215-
+ str(configid)
215+
"Timeout waiting for response when writing config value %d",
216+
configid
216217
)
217218

218219
def _readmessage(self, flushold, cfgchannel, timeout):
@@ -261,17 +262,16 @@ def _readmessage(self, flushold, cfgchannel, timeout):
261262
cs = (cs + newmsg[idx]) & 0xFF
262263
if newmsg[16] == cs:
263264
# OK, valid message - place it in the correct queue
264-
if newmsg[13] == 0xFF: ## Check for config channel
265+
if newmsg[13] == 0xFF: # Check for config channel
265266
self._configmsg.append(newmsg)
266267
else:
267268
self._rxmsg.append(newmsg)
268269
else:
269270
logger.warning("Incorrect message checksum, discarded message")
270271
else:
271272
logger.warning(
272-
"Invalid message structure length "
273-
+ str(len(newmsg))
274-
+ ", ignoring message"
273+
"Invalid message structure length %d, ignoring message",
274+
len(newmsg)
275275
)
276276

277277
# Check if we have a message in the desired queue - if so copy and return

0 commit comments

Comments
 (0)