with the two bonnets stacked, along with pimoroni onoff shim and qwiic hat.
I am getting intermittant remote I/O errors.
It is something regarding a buffer write error.
Now if I constantly run the motor and it is not hot I do not seem to get the error as much.
But it appears with the qwiic hat and just a mpu-6050 connected it runs ok.
The moment I appear to add the qwiic button assembly from sparkfun I appear to have intermittant issues.
specific error I sporadically get is:
File “”, line 2, in
File “/usr/local/lib/python3.5/dist-packages/adafruit_motor/stepper.py”, line 160 in onestep self._update_coils(microstepping=style == MICROSTEP)
File “/usr/local/lib/python3.5/dist-packages/adafruit_motor/stepper.py”, line 108 in _update_coils self._coil*.duty_cycle = duty_cycles*
File “/usr/local/lib/python3.5/dist-packages/adafruit_register/i2c_struct_array.py”, line 74 in setitem i2c.write(buf)
File “/usr/local/lib/python3.5/dist-packages/adafruit_bus_device/i2c_device.py”, line 103 in write self.i2c.writeto(self.device_address, buf, start=start, end=end, stop=stop)
File “/usr/local/lib/python3.5/dist-packages/busio.py”, line 86 in writeto return self._i2c.writeto(address, memoryview(buffer[start:end]
File “/usr/local/lib/pyton3.5/dist-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py”, line 38 in writeto self._i2c_bus.write_bytes(address, buffer[start:end]
File “/usr/local/lib/python3.5/dist-packages/Adafruit_PureIO/smbus.py”, line 256, in write_bytes self._device.write(buf)
OSError: [Errno 121] Remote I/O Error
Looking through things it appears to be a coms error of some sort. I have another switch button assembly I can try tommorrow night. It is possible the assembly itself could have an intermittant issue causing the problem. It is also possible that it could be the clock stretching issue I have been fighting all the time.
The mpu-6050 I definately want to keep and seems to have zero issues here. But if I switch over to a GPIO button setup, I will have additional programming overhead to deal with debounces, but, the button presses regardless are to initiate the script and reboot it on an as needed basis. More code to have for sanity checks.
I did try the other button and it gives the same error.