Hello,
I’m having issues getting the device to work properly. I’m using all of the components that were included with the kit and followed the assembly guide to the best of my ability. When everything is connected, I see the green LED indicator on the NVIDIA unit and a flashing red light on the Sparkfun Serial Controlled Motor Driver. However, the Qwiic OLED is blank and appears off. I’m not sure how to best troubleshoot the situation. I’ve attached pictures and here’s the output of some commands I’ve seen mentioned in other threads.
sudo i2cdetect -r -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: – – – – – – – – – – – – –
10: – – – – – – – – – – – – – – – –
20: – – – – – – – – – – – – – – – –
30: – – – – – – – – – – – – – 3d – –
40: – – – – – – – – – – – – – – – –
50: – – – – – – – – – – – – – 5d – –
60: – – – – – – – – – – – – – – – –
70: – – – – – – – –
i2cdump -y 1 0x5d
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: 06 a9 10 08 00 00 00 00 00 64 c9 00 92 00 00 00 ???..d?.?..
10: 00 00 00 00 00 00 5c 0c 00 01 00 00 0e 00 02 19 …?.?..?.??
20: 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 ???
30: 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 80 ???
40: 80 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ??..
50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
70: 00 0a 00 01 9b 5c 00 01 00 4a 01 00 00 00 00 00 .?.??.?.J?..
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …
When attempting to run basic_motion.ipynb, I get this error in the 2nd cell “robot = Robot()”
OSError Traceback (most recent call last)
in
----> 1 robot = Robot()
/usr/local/lib/python3.6/dist-packages/jetbot-0.3.0-py3.6.egg/jetbot/robot.py in init(self, *args, **kwargs)
20 def init(self, *args, **kwargs):
21 super(Robot, self).init(*args, **kwargs)
—> 22 self.motor_driver = Adafruit_MotorHAT(i2c_bus=self.i2c_bus)
23 self.left_motor = Motor(self.motor_driver, channel=self.left_motor_channel, alpha=self.left_motor_alpha)
24 self.right_motor = Motor(self.motor_driver, channel=self.right_motor_channel, alpha=self.right_motor_alpha)
/usr/local/lib/python3.6/dist-packages/Adafruit_MotorHAT-1.4.0-py3.6.egg/Adafruit_MotorHAT/Adafruit_MotorHAT_Motors.py in init(self, addr, freq, i2c, i2c_bus)
229 self.motors = [ Adafruit_DCMotor(self, m) for m in range(4) ]
230 self.steppers = [ Adafruit_StepperMotor(self, 1), Adafruit_StepperMotor(self, 2) ]
→ 231 self._pwm = PWM(addr, debug=False, i2c=i2c, i2c_bus=i2c_bus)
232 self._pwm.setPWMFreq(self._frequency)
233
/usr/local/lib/python3.6/dist-packages/Adafruit_MotorHAT-1.4.0-py3.6.egg/Adafruit_MotorHAT/Adafruit_PWM_Servo_Driver.py in init(self, address, debug, i2c, i2c_bus)
57 self.i2c = get_i2c_device(address, i2c, i2c_bus)
58 logger.debug(“Reseting PCA9685 MODE1 (without SLEEP) and MODE2”)
—> 59 self.setAllPWM(0, 0)
60 self.i2c.write8(self.__MODE2, self.__OUTDRV)
61 self.i2c.write8(self.__MODE1, self.__ALLCALL)
/usr/local/lib/python3.6/dist-packages/Adafruit_MotorHAT-1.4.0-py3.6.egg/Adafruit_MotorHAT/Adafruit_PWM_Servo_Driver.py in setAllPWM(self, on, off)
93 def setAllPWM(self, on, off):
94 “Sets a all PWM channels”
—> 95 self.i2c.write8(self.__ALL_LED_ON_L, on & 0xFF)
96 self.i2c.write8(self.__ALL_LED_ON_H, on >> 8)
97 self.i2c.write8(self.__ALL_LED_OFF_L, off & 0xFF)
/usr/local/lib/python3.6/dist-packages/Adafruit_GPIO-1.0.4-py3.6.egg/Adafruit_GPIO/I2C.py in write8(self, register, value)
114 “”“Write an 8-bit value to the specified register.”“”
115 value = value & 0xFF
→ 116 self._bus.write_byte_data(self._address, register, value)
117 self._logger.debug(“Wrote 0x%02X to register 0x%02X”,
118 value, register)
/usr/local/lib/python3.6/dist-packages/Adafruit_PureIO-0.2.3-py3.6.egg/Adafruit_PureIO/smbus.py in write_byte_data(self, addr, cmd, val)
254 # Send the data to the device.
255 self._select_device(addr)
→ 256 self._device.write(data)
257
258 def write_word_data(self, addr, cmd, val):
OSError: [Errno 121] Remote I/O error
Let me know if there’s any additional information/pictures I should provide to help debug. Thanks!