Motor Bridge Cape v1.0 - IOError: [Errno 121] Remote I/O error

Hi There,

I am having a trouble with Motor Bridge Cape v1.0 communication ( I think).

Running StepperMotortest.py demo file I get this message:



Hello From MotorBridge

Traceback (most recent call last):

File “/var/lib/cloud9/MotorBridgeCapeforBBG_BBB/tests/StepperMotortest.py”, line 56, in

StepperMotorBTest()

File “/var/lib/cloud9/MotorBridgeCapeforBBG_BBB/tests/StepperMotortest.py”, line 45, in StepperMotorBTest

motor.StepperMotorBInit()

File “/var/lib/cloud9/MotorBridgeCapeforBBG_BBB/tests/MotorBridge.py”, line 256, in StepperMotorBInit

WriteByte(TB_2A_MODE,TB_SPM) #Stepper

File “/var/lib/cloud9/MotorBridgeCapeforBBG_BBB/tests/MotorBridge.py”, line 205, in WriteByte

MotorBridge.writeList(WriteMode,data)

File “/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO/I2C.py”, line 127, in writeList

self._bus.write_i2c_block_data(self._address, register, data)

File “/usr/local/lib/python2.7/dist-packages/Adafruit_PureIO/smbus.py”, line 294, in write_i2c_block_data

self._device.write(data)

IOError: [Errno 121] Remote I/O error



Earlier I successfully was able to update the firmware. but I still can’t see the cape address

root@beaglebone:/var/lib/cloud9# i2cdetect -y -r 2

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: – -- – -- – -- – -- – -- – -- –

10: – -- – -- – -- – -- – -- – -- – -- – --

20: – -- – -- – -- – -- – -- – -- – -- – --

30: – -- – -- – -- – -- – -- – -- – -- – --

40: – -- – -- – -- – -- – -- – -- – -- – --

50: – -- – -- UU UU UU UU – -- – -- – -- – --

60: – -- – -- – -- – -- – -- – -- – -- – --

70: – -- – -- – -- – --

root@beaglebone:/var/lib/cloud9# i2cdetect -y -r 1

0 1 2 3 4 5 6 7 8 9 a b c d e f

00: – -- – -- – -- – -- – -- – -- –

10: – -- – -- – -- – -- – -- – -- – -- – --

20: – -- – -- – -- – -- – -- – -- – -- – --

30: – -- – -- – -- – -- – -- – -- – -- – --

40: – -- – -- – -- – -- – -- – -- – -- – --

50: – -- – -- – -- – -- – -- – -- – -- – --

60: – -- – -- – -- – -- – -- – -- – -- – --

70: – -- – -- – -- – --



I am running:

Linux beaglebone 4.4.91-ti-r141 #1 SMP Fri Dec 22 10:35:15 UTC 2017 armv7l GNU/Linux

Python 2.7.9



Cape connected to external power supply 12V, checked P9_23 is high (3.3V),

Please point me in the right direction,

Thank you,



Michael

Hi Michael,



I tested it with below steps and the bbg can detect the board. please try to use the latest image and test it again. thanks.


  1. install dependencies



    sudo apt-get update

    sudo apt-get install build-essential python-pip python-dev python-smbus git -y

    sudo pip install Adafruit-GPIO

    sudo pip install Adafruit_BBIO

    sudo pip install pyserial


  2. Run sudo nano /boot/uEnv.txt and then add below 2 lines at bottom of the uEnv.txt.

    Copied to clipboard

    uboot_overlay_addr0=/lib/firmware/BB-UART2-00A0.dtbo

    enable_uboot_cape_universal=1


  3. update the firmware

    git clone https://github.com/Seeed-Studio/MotorBridgeCapeFirmware

    cd MotorBridgeCapeFirmware

    sudo make flash


  4. run the i2cdetect -y -r 2



    debian@beaglebone:~$ i2cdetect -y -r 2

    0 1 2 3 4 5 6 7 8 9 a b c d e f

    00: – -- – -- – -- – -- – -- – -- –

    10: – -- – -- – -- – -- – -- – -- – -- – --

    20: – -- – -- – -- – -- – -- – -- – -- – --

    30: – -- – -- – -- – -- – -- – -- – -- – --

    40: – -- – -- – -- – -- – -- – 4b – -- – --

    50: – -- – -- UU UU UU UU – -- – -- – -- – --

    60: – -- – -- – -- – -- – -- – -- – -- – --

    70: – -- – -- – -- – --




  5. debian version:



    debian@beaglebone:~$ uname -a

    Linux beaglebone 4.14.49-ti-r54 #1 SMP PREEMPT Fri Jun 15 22:14:13 UTC 2018 armv7l GNU/Linux
1 Like

Thanks Bill,

Followed all instruction, still no luck.

Finally, my coworker figured out and manage to communicate with the Motor Bridge Cape by disabling HDMI and Audio outputs on BBB.



Thank you,

Michael

1 Like