Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I2C issue with Adafruit-BBIO 1.2.0 #347

Open
tomek242 opened this issue Feb 15, 2021 · 21 comments
Open

I2C issue with Adafruit-BBIO 1.2.0 #347

tomek242 opened this issue Feb 15, 2021 · 21 comments
Assignees

Comments

@tomek242
Copy link

tomek242 commented Feb 15, 2021

Howdy good folks.
My issue is I want to use simple program for my MotorBridge Cape v1.0

import MotorBridge
import time
ServoName   =  1
Frequency   =  50
Angle1      =  45
Angle2      =  90
Angle3      =  135
Angle4      =  170
Angle5      =  135
Angle6      =  90
Angle7      =  45
Angle8      =  15 
Angle0      =  90 

if __name__=="__main__":
    motor = MotorBridge.MotorBridgeCape()
    motor.ServoInit(ServoName,Frequency)
 
    while True:
        motor.ServoMoveAngle(ServoName,Angle1)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle2)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle3)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle4)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle5)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle6)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle7)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle8)
        time.sleep(0.5)
        motor.ServoMoveAngle(ServoName,Angle0)
        time.sleep(2)

and when i want to fired up this simple servo test i had this:

Traceback (most recent call last):
  File "/var/lib/cloud9/my_python/servotest.py", line 18, in <module>
    motor.ServoInit(ServoName,Frequency)
  File "/var/lib/cloud9/my_python/MotorBridge.py", line 345, in ServoInit
    WriteHalfWord(SVM1_FREQ,Frequency)
  File "/var/lib/cloud9/my_python/MotorBridge.py", line 212, in WriteHalfWord
    MotorBridge.writeList(WriteMode,data)
  File "/usr/local/lib/python3.7/dist-packages/Adafruit_GPIO-1.0.4-py3.7.egg/Adafruit_GPIO/I2C.py", line 129, in writeList
  File "/usr/local/lib/python3.7/dist-packages/Adafruit_PureIO-1.1.8-py3.7.egg/Adafruit_PureIO/smbus.py", line 364, in write_i2c_block_data
OSError: [Errno 121] Remote I/O error

This is my script versions below:
sudo /opt/scripts/tools/version.sh
git:/opt/scripts/:[029041f6866049997bbfd2c7667b3c6e8c95201c]
eeprom:[A335BNLT00C05114BBBK1322]
model:[TI_AM335x_BeagleBone_Black]
dogtag:[BeagleBoard.org Debian Buster LXQt Image 2020-05-18]
bootloader:[microSD-(push-button)]:[/dev/mmcblk0]:[U-Boot 2019.04-00002-g31a8ae0206]:[location: dd MBR]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2019.04-00002-g31a8ae0206]:[location: dd MBR]
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
UBOOT: Loaded Overlay:[AM335X-PRU-RPROC-4-19-TI-00A0]
UBOOT: Loaded Overlay:[BB-ADC-00A0]
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0]
UBOOT: Loaded Overlay:[BB-HDMI-TDA998x-00A0]
UBOOT: Loaded Overlay:[BB-UART2-00A0]
kernel:[4.19.94-ti-r43]
nodejs:[v10.19.0]
/boot/uEnv.txt Settings:
uboot_overlay_options:[uboot_overlay_addr0=/lib/firmware/BB-UART2-00A0.dtbo]
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_pru=/lib/firmware/AM335X-PRU-RPROC-4-19-TI-00A0.dtbo]
uboot_overlay_options:[enable_uboot_cape_universal=1]
pkg check: to individually upgrade run: [sudo apt install --only-upgrade ]
pkg:[bb-cape-overlays]:[4.14.20200430.0-0buster+20200430]
pkg:[bb-wl18xx-firmware]:[1.20200420.1-0
buster+20200424]
pkg:[kmod]:[26-1]
pkg:[librobotcontrol]:[1.0.4-git20190227.1-0rcnee0buster+20190327]
pkg:[firmware-ti-connectivity]:[20190717-2rcnee1
buster+20200305]
groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal input bluetooth netdev i2c gpio pwm eqep remoteproc admin spi iio docker tisdk weston-launch xenomai cloud9ide]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk0p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet]
dmesg | grep remote
[ 85.845243] remoteproc remoteproc0: wkup_m3 is available
[ 86.427759] remoteproc remoteproc0: powering up wkup_m3
[ 86.427794] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217168
[ 86.428131] remoteproc remoteproc0: remote processor wkup_m3 is now up
[ 93.265874] remoteproc remoteproc1: 4a334000.pru is available
[ 93.279707] remoteproc remoteproc2: 4a338000.pru is available
dmesg | grep pru
[ 93.265874] remoteproc remoteproc1: 4a334000.pru is available
[ 93.266027] pru-rproc 4a334000.pru: PRU rproc node pru@4a334000 probed successfully
[ 93.279707] remoteproc remoteproc2: 4a338000.pru is available
[ 93.280000] pru-rproc 4a338000.pru: PRU rproc node pru@4a338000 probed successfully
dmesg | grep pinctrl-single
[ 1.177283] pinctrl-single 44e10800.pinmux: 142 pins, size 568
dmesg | grep gpio-of-helper
[ 1.190496] gpio-of-helper ocp:cape-universal: ready
lsusb
Bus 001 Device 005: ID 079b:0062 Sagem XG-76NA 802.11bg
Bus 001 Device 004: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 003: ID 0c45:6366 Microdia
Bus 001 Device 002: ID 1a40:0201 Terminus Technology Inc. FE 2.1 7-port Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
END

uname -a
Linux beaglebone 4.19.94-ti-r43 #1buster SMP PREEMPT Wed Apr 22 06:11:16 UTC 2020 armv7l GNU/Linux

I had this problem with any debian on my BBB...Can someon help me or someone had similiar problem?
Thanks for any help.
Tom.

@pdp7 pdp7 self-assigned this Feb 15, 2021
@pdp7
Copy link
Collaborator

pdp7 commented Feb 15, 2021

I am not familiar with MotorBridge. Could you link to where that library lives?

@tomek242
Copy link
Author

tomek242 commented Feb 15, 2021

Hello Drew.
Thanks for answer me.
The library for this cape it's very simple to use and its based on Adafruit-GPIO library. Below i write how to use this cape:

import MotorBridge
motor = MotorBridge.MotorBridgeCape()

And below we have installing dependiences:

sudo apt-get update sudo apt-get install build-essential python-pip python-dev python-smbus git sudo pip install Adafruit-GPIO

Of course i was used newest installation method with "pip3":

sudo apt-get update sudo apt-get install build-essential python3-dev python3-pip -y sudo pip3 install Adafruit_BBIO

and then i was try to use my simple program and... issue.

Normally the library is copied to the directory where the application you want to run is and which references that application.
For example if i have file of my application in folder like this:
/my_python/servotest.py
in this same folder i must have MotorBridge.py library, like this example:
/my_python/MotorBridge.py

In addition, below I present the entire link for this library for better analysis:

https://github.com/Seeed-Studio/MotorBridgeCapeforBBG_BBB/tree/master/BBG_MotorBridgeCape

Forgive my long description but I don't speak English well.
Thank you for your response and help. Maybe you can figure out what this topic is about.

@tomek242
Copy link
Author

Anyone have some idea?

@pdp7
Copy link
Collaborator

pdp7 commented Feb 20, 2021

@tomek242 sorry for the delay. Please try running with strace so we might be able to see where the error occurs:
sudo strace -o /tmp/strace-log.txt -f python test.py and change test.py to be whatever your script is. And then upload strace-log.txt here

This issues in the MotoBridgeCape might also be related:
Seeed-Studio/MotorBridgeCapeforBBG_BBB#6

@Pillar1989 do you know who at Seeed is working on the BBG_MotorBridgeCape? Thank you

@silver2row
Copy link

Hello,

It is late now but I have some resources on this effort...

https://github.com/silver2row/bbg is the link I created some time ago. I keep updating it but sometimes I shy away from it all at once.

Seth

P.S. If you would like to have it work, just follow that repo. and if you have any issues, just ask away.

@tomek242
Copy link
Author

Hello.
I just had more time to test everything and thats the results of sudo strace -o /tmp/strace-log.txt -f python servotest.py

Traceback (most recent call last): File "servotest.py", line 1, in <module> import MotorBridge File "/var/lib/cloud9/my_python/MotorBridge.py", line 33, in <module> import Adafruit_GPIO.I2C as I2C ImportError: No module named Adafruit_GPIO.I2C

In other side i was tested MotorBridge.py:
Traceback (most recent call last): File "MotorBridge.py", line 33, in <module> import Adafruit_GPIO.I2C as I2C ImportError: No module named Adafruit_GPIO.I2C

... same problem No module named Adafruit_GPIO.I2C

And this is the strace log:
2268 execve("/usr/bin/python", ["python", "MotorBridge.py"], 0xbe958790 /* 14 vars /) = 0
2268 brk(NULL) = 0x1d98000
2268 uname({sysname="Linux", nodename="beaglebone", ...}) = 0
2268 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6f30000
2268 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=128526, ...}) = 0
2268 mmap2(NULL, 128526, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb6eea000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libpthread.so.0", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0001M\0\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 108864, [108864], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1400) = 1400
2268 _llseek(3, 74184, [74184], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 fstat64(3, {st_mode=S_IFREG|0755, st_size=110264, ...}) = 0
2268 mmap2(NULL, 148080, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6ec5000
2268 mprotect(0xb6ed7000, 61440, PROT_NONE) = 0
2268 mmap2(0xb6ee6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x11000) = 0xb6ee6000
2268 mmap2(0xb6ee8000, 4720, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb6ee8000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libdl.so.2", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0000\n\0\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 8692, [8692], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8340, [8340], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 8692, [8692], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8340, [8340], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 8692, [8692], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8340, [8340], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=9772, ...}) = 0
2268 mmap2(NULL, 73924, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6eb2000
2268 mprotect(0xb6eb4000, 61440, PROT_NONE) = 0
2268 mmap2(0xb6ec3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0xb6ec3000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libutil.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\200\n\0\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 8720, [8720], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8368, [8368], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 8720, [8720], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8368, [8368], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 _llseek(3, 8720, [8720], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 8368, [8368], SEEK_SET) = 0
2268 read(3, "A2\0\0\0aeabi\0\1(\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 51) = 51
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=9800, ...}) = 0
2268 mmap2(NULL, 73908, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6e9f000
2268 mprotect(0xb6ea1000, 61440, PROT_NONE) = 0
2268 mmap2(0xb6eb0000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0xb6eb0000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libz.so.1", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0h\32\0\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 _llseek(3, 78420, [78420], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 78056, [78056], SEEK_SET) = 0
2268 read(3, "A0\0\0\0aeabi\0\1&\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 49) = 49
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=79500, ...}) = 0
2268 mmap2(NULL, 143596, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6e7b000
2268 mprotect(0xb6e8e000, 61440, PROT_NONE) = 0
2268 mmap2(0xb6e9d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12000) = 0xb6e9d000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libm.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\250r\0\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 434644, [434644], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 434288, [434288], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1
\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
2268 _llseek(3, 434644, [434644], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 434288, [434288], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
2268 _llseek(3, 434644, [434644], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 1080) = 1080
2268 _llseek(3, 434288, [434288], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\4\22"..., 53) = 53
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=435724, ...}) = 0
2268 mmap2(NULL, 499832, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6e00000
2268 mprotect(0xb6e6a000, 61440, PROT_NONE) = 0
2268 mmap2(0xb6e79000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x69000) = 0xb6e79000
2268 close(3) = 0
2268 openat(AT_FDCWD, "/lib/arm-linux-gnueabihf/libc.so.6", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 read(3, "\177ELF\1\1\1\3\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\09v\1\0004\0\0\0"..., 512) = 512
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 _llseek(3, 949188, [949188], SEEK_SET) = 0
2268 read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 2840) = 2840
2268 _llseek(3, 945756, [945756], SEEK_SET) = 0
2268 read(3, "A4\0\0\0aeabi\0\1*\0\0\0\0057-A\0\6\n\7A\10\1\t\2\n\3\f"..., 53) = 53
2268 fstat64(3, {st_mode=S_IFREG|0755, st_size=952028, ...}) = 0
2268 mmap2(NULL, 1020732, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb6d06000
2268 mprotect(0xb6dea000, 65536, PROT_NONE) = 0
2268 mmap2(0xb6dfa000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe4000) = 0xb6dfa000
2268 mmap2(0xb6dfd000, 9020, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb6dfd000
2268 close(3) = 0
2268 mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6f2e000
2268 set_tls(0xb6f2e4d0) = 0
2268 mprotect(0xb6dfa000, 8192, PROT_READ) = 0
2268 mprotect(0xb6e79000, 4096, PROT_READ) = 0
2268 mprotect(0xb6e9d000, 4096, PROT_READ) = 0
2268 mprotect(0xb6eb0000, 4096, PROT_READ) = 0
2268 mprotect(0xb6ec3000, 4096, PROT_READ) = 0
2268 mprotect(0xb6ee6000, 4096, PROT_READ) = 0
2268 mprotect(0x70f000, 4096, PROT_READ) = 0
2268 mprotect(0xb6f32000, 4096, PROT_READ) = 0
2268 munmap(0xb6eea000, 128526) = 0
2268 set_tid_address(0xb6f2e078) = 2268
2268 set_robust_list(0xb6f2e080, 12) = 0
2268 rt_sigaction(SIGRTMIN, {sa_handler=0xb6ec989d, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0xb6d2bcb1}, NULL, 8) = 0
2268 rt_sigaction(SIGRT_1, {sa_handler=0xb6ec9921, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0xb6d2bcb1}, NULL, 8) = 0
2268 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
2268 ugetrlimit(RLIMIT_STACK, {rlim_cur=81921024, rlim_max=RLIM_INFINITY}) = 0
2268 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
2268 brk(NULL) = 0x1d98000
2268 brk(0x1db9000) = 0x1db9000
2268 mmap2(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6cc6000
2268 fstat64(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
2268 fstat64(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
2268 fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
2268 fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
2268 stat64("/usr/local/sbin/python", 0xbee00490) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/local/bin/python", 0xbee00490) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/sbin/python", 0xbee00490) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/bin/python", {st_mode=S_IFREG|0755, st_size=2576604, ...}) = 0
2268 readlink("/usr/bin/python", "python2", 4096) = 7
2268 readlink("/usr/bin/python2", "python2.7", 4096) = 9
2268 readlink("/usr/bin/python2.7", 0xbee00490, 4096) = -1 EINVAL (Invalid argument)
2268 stat64("/usr/bin/Modules/Setup", 0xbedff408) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/bin/lib/python2.7/os.py", 0xbedff3f8) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/bin/lib/python2.7/os.pyc", 0xbedff3f8) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/os.py", {st_mode=S_IFREG|0644, st_size=25910, ...}) = 0
2268 stat64("/usr/bin/pybuilddir.txt", 0xbedff408) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/bin/lib/python2.7/lib-dynload", 0xbedff408) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-dynload", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGXFSZ, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 getpid() = 2268
2268 rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGTRAP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGABRT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGBUS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGFPE, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGKILL, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGUSR1, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGUSR2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGPIPE, NULL, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, 8) = 0
2268 rt_sigaction(SIGALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGSTKFLT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGCHLD, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGCONT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGSTOP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGTSTP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGTTIN, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGTTOU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGURG, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGXCPU, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGXFSZ, NULL, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, 8) = 0
2268 rt_sigaction(SIGVTALRM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGPROF, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGWINCH, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGIO, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGPWR, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGSYS, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_2, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_3, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_4, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_5, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_6, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_7, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_8, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_9, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_10, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_11, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_12, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_13, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_14, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_15, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_16, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_17, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_18, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_19, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_20, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_21, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_22, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_23, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_24, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_25, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_26, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_27, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_28, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_29, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_30, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_31, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGRT_32, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 rt_sigaction(SIGINT, {sa_handler=0x5b8e0d, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
2268 stat64("/usr/lib/python2.7", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0
2268 stat64("/usr/lib/python2.7", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0
2268 stat64("/usr/lib/python2.7/site", 0xbee00380) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/site.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/site.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/site.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=19947, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/site.pyc", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=19535, ...}) = 0
2268 brk(0x1dda000) = 0x1dda000
2268 read(4, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0sp\1\0\0d\0"..., 4096) = 4096
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=19535, ...}) = 0
2268 read(4, "\0(\0\0\0\0s\32\0\0\0/usr/lib/python2.7/si"..., 12288) = 12288
2268 read(4, "scii', but if you're willing to "..., 4096) = 3151
2268 read(4, "", 4096) = 0
2268 mmap2(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6c86000
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/os", 0xbee00048) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/os.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/os.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/osmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/os.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=25910, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/os.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=25583, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\16\0\0\0@\0\0\0s\372\6\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=25583, ...}) = 0
2268 read(5, " N(\t\0\0\0R\t\0\0\0t\5\0\0\0splitt\6\0\0\0exis"..., 20480) = 20480
2268 read(5, "R\31\0\0\0(X\0\0\0t\7\0\0\0__doc__RO\0\0\0R"\0\0\0"..., 4096) = 1007
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 sysinfo({uptime=1210, loads=[41408, 44000, 51008], totalram=506900480, freeram=227106816, sharedram=3051520, bufferram=20500480, totalswap=0, freeswap=0, procs=147, totalhigh=0, freehigh=0, mem_unit=1}) = 0
2268 stat64("/usr/lib/python2.7/posixpath", 0xbedffd10) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/posixpath.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/posixpath.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/posixpathmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/posixpath.py", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=14293, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/posixpath.pyc", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=11416, ...}) = 0
2268 read(6, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0&\0\0\0@\0\0\0s\373\1\0\0d\0"..., 4096) = 4096
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=11416, ...}) = 0
2268 read(6, "\0\0\0Test whether a path exists. "..., 4096) = 4096
2268 read(6, "yst\25\0\0\0getfilesystemencodingt\10\0\0"..., 4096) = 3224
2268 read(6, "", 4096) = 0
2268 close(6) = 0
2268 stat64("/usr/lib/python2.7/stat", 0xbedff9d8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/stat.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/stat.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/statmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/stat.py", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=1842, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/stat.pyc", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=2731, ...}) = 0
2268 read(7, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\1\0\0\0@\0\0\0s{\1\0\0d\0"..., 4096) = 2731
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=2731, ...}) = 0
2268 read(7, "", 4096) = 0
2268 brk(0x1e0b000) = 0x1e0b000
2268 close(7) = 0
2268 close(6) = 0
2268 stat64("/usr/lib/python2.7/genericpath", 0xbedff9d8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/genericpath.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/genericpath.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/genericpathmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/genericpath.py", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=3201, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/genericpath.pyc", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=3495, ...}) = 0
2268 read(7, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\10\0\0\0@\0\0\0s\305\0\0\0d\0"..., 4096) = 3495
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=3495, ...}) = 0
2268 read(7, "", 4096) = 0
2268 close(7) = 0
2268 close(6) = 0
2268 stat64("/usr/lib/python2.7/warnings", 0xbedff9d8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/warnings.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/warnings.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/warningsmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/warnings.py", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=14823, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/warnings.pyc", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=13464, ...}) = 0
2268 read(7, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\10\0\0\0@\0\0\0sY\2\0\0d\0"..., 4096) = 4096
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=13464, ...}) = 0
2268 read(7, " warnings filters (at the front)"..., 8192) = 8192
2268 read(7, "\0\0\0R\n\0\0\0(\2\0\0\0R\200\0\0\0R\2\0\0\0(\0\0\0\0(\1\0\0"..., 4096) = 1176
2268 read(7, "", 4096) = 0
2268 close(7) = 0
2268 stat64("/usr/lib/python2.7/linecache", 0xbedff6a0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/linecache.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/linecache.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/linecachemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/linecache.py", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=4027, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/linecache.pyc", O_RDONLY|O_LARGEFILE) = 8
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=3260, ...}) = 0
2268 read(8, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0sp\0\0\0d\0"..., 4096) = 3260
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=3260, ...}) = 0
2268 read(8, "", 4096) = 0
2268 close(8) = 0
2268 close(7) = 0
2268 stat64("/usr/lib/python2.7/types", 0xbedff6a0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/types.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/types.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/typesmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/types.py", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=2094, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/types.pyc", O_RDONLY|O_LARGEFILE) = 8
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=2711, ...}) = 0
2268 read(8, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\5\0\0\0@\0\0\0sH\2\0\0d\0"..., 4096) = 2711
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=2711, ...}) = 0
2268 read(8, "", 4096) = 0
2268 close(8) = 0
2268 close(7) = 0
2268 close(6) = 0
2268 close(5) = 0
2268 stat64("/usr/lib/python2.7/UserDict", 0xbedffd10) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/UserDict.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/UserDict.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/UserDictmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/UserDict.py", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=7060, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/UserDict.pyc", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=9621, ...}) = 0
2268 read(6, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0sb\0\0\0d\0"..., 4096) = 4096
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=9621, ...}) = 0
2268 read(6, "got %dR\1\0\0\0i\377\377\377\377s0\0\0\0Passing 'di"..., 4096) = 4096
2268 read(6, "\0\0\261\0\0\0s\f\0\0\0\0\1\3\1\34\1\r\1\r\1\7\1c\2\0\0\0\5\0\0\0"..., 4096) = 1429
2268 read(6, "", 4096) = 0
2268 close(6) = 0
2268 stat64("/usr/lib/python2.7/_abcoll", 0xbedff9d8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_abcoll.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_abcoll.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_abcollmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_abcoll.py", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=18619, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_abcoll.pyc", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=25476, ...}) = 0
2268 read(7, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\20\0\0\0@\0\0\0s\224\2\0\0d\0"..., 4096) = 4096
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=25476, ...}) = 0
2268 read(7, "\1\0Z\7\0RS(\2\0\0\0c\2\0\0\0\2\0\0\0\1\0\0\0C\0\0\0s\4\0"..., 20480) = 20480
2268 read(7, " value.\n Raise ValueEr"..., 4096) = 900
2268 read(7, "", 4096) = 0
2268 close(7) = 0
2268 stat64("/usr/lib/python2.7/abc", 0xbedff6a0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/abc.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/abc.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/abcmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/abc.py", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=7145, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/abc.pyc", O_RDONLY|O_LARGEFILE) = 8
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=6121, ...}) = 0
2268 read(8, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0s}\0\0\0d\0"..., 4096) = 4096
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=6121, ...}) = 0
2268 read(8, "egisteri\0\0\0s\20\0\0\0\0\2\30\1\17\1\17\1\4\3\17\2\17\1\20\1"..., 4096) = 2025
2268 read(8, "", 4096) = 0
2268 close(8) = 0
2268 stat64("/usr/lib/python2.7/_weakrefset", 0xbedff368) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_weakrefset.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_weakrefset.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_weakrefsetmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_weakrefset.py", O_RDONLY|O_LARGEFILE) = 8
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=5911, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_weakrefset.pyc", O_RDONLY|O_LARGEFILE) = 9
2268 fstat64(9, {st_mode=S_IFREG|0644, st_size=9582, ...}) = 0
2268 read(9, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0sI\0\0\0d\0"..., 4096) = 4096
2268 fstat64(9, {st_mode=S_IFREG|0644, st_size=9582, ...}) = 0
2268 read(9, "efset.pyR\27\0\0\0q\0\0\0s\6\0\0\0\0\1\t\1\r\1c\2\0\0"..., 4096) = 4096
2268 read(9, "\26\0\210\0\0j\1\0\203\0\0\1n\0\0\210\0\0|\1\0k\10\0r2\0\210\0\0j\2"..., 4096) = 1390
2268 read(9, "", 4096) = 0
2268 close(9) = 0
2268 close(8) = 0
2268 mmap2(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6c46000
2268 close(7) = 0
2268 close(6) = 0
2268 close(5) = 0
2268 stat64("/usr/lib/python2.7/copy_reg", 0xbedffd10) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/copy_reg.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/copy_reg.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/copy_regmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/copy_reg.py", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=6974, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/copy_reg.pyc", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=5145, ...}) = 0
2268 read(6, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\5\0\0\0@\0\0\0s\326\0\0\0d\0"..., 4096) = 4096
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=5145, ...}) = 0
2268 read(6, "ith code %ss$\0\0\0code %s is alrea"..., 4096) = 1049
2268 read(6, "", 4096) = 0
2268 close(6) = 0
2268 close(5) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/traceback", 0xbee00048) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/traceback.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/traceback.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/tracebackmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/traceback.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=11285, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/traceback.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=11639, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\16\0\0\0@\0\0\0sB\1\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=11639, ...}) = 0
2268 read(5, "!\0\0\0i\0\0\0\0i\1\0\0\0N(\20\0\0\0R\24\0\0\0R"\0\0\0R\25"..., 4096) = 4096
2268 read(5, "\0\203\0\0\\3\0}\2\0}\3\0}\4\0t\4\0|\2\0|\3\0|\4\0|\0\0|"..., 4096) = 3447
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 close(4) = 0
2268 geteuid32() = 0
2268 getuid32() = 0
2268 getegid32() = 0
2268 getgid32() = 0
2268 stat64("/usr/lib/python2.7/sysconfig", 0xbedffd08) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sysconfig.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sysconfig.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sysconfigmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sysconfig.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=25495, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sysconfig.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=18819, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\7\0\0\0@\0\0\0s"\6\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=18819, ...}) = 0
2268 read(5, "\0local_varst\3\0\0\0var(\0\0\0\0(\0\0\0\0s\37\0"..., 12288) = 12288
2268 read(5, "\0amd64s\t\0\0\0win-amd64t\7\0\0\0itanium"..., 4096) = 2435
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 lstat64("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 lstat64("/usr/bin", {st_mode=S_IFDIR|0755, st_size=36864, ...}) = 0
2268 lstat64("/usr/bin/python", {st_mode=S_IFLNK|0777, st_size=7, ...}) = 0
2268 readlink("/usr/bin/python", "python2", 4096) = 7
2268 lstat64("/usr/bin/python2", {st_mode=S_IFLNK|0777, st_size=9, ...}) = 0
2268 readlink("/usr/bin/python2", "python2.7", 4096) = 9
2268 lstat64("/usr/bin/python2.7", {st_mode=S_IFREG|0755, st_size=2576604, ...}) = 0
2268 stat64("/usr/bin/Modules/Setup.dist", 0xbee00908) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/bin/Modules/Setup.local", 0xbee00908) = -1 ENOENT (No such file or directory)
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/re", 0xbedffaf8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/re.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/re.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/remodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/re.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=13423, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/re.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=13371, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\27\0\0\0@\0\0\0sQ\2\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=13371, ...}) = 0
2268 read(5, "ports the following functions:\n "..., 8192) = 8192
2268 read(5, "\0|\10\0\203\1\0\1n\0\0|\7\0}\5\0q-\0W|\2\0|\1\0|\5\0\37f"..., 4096) = 1083
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 stat64("/usr/lib/python2.7/sre_compile", 0xbedff7c0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_compile.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_compile.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_compilemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_compile.py", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=19823, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_compile.pyc", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=12530, ...}) = 0
2268 read(6, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\16\0\0\0@\0\0\0s\317\1\0\0d\0"..., 4096) = 4096
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=12530, ...}) = 0
2268 read(6, "_compilet\7\0\0\0SUCCESSt\7\0\0\0_simple"..., 8192) = 8192
2268 read(6, "\0intRc\0\0\0Re\0\0\0R'\0\0\0R\225\0\0\0t\7\0\0\0uni"..., 4096) = 242
2268 read(6, "", 4096) = 0
2268 close(6) = 0
2268 stat64("/usr/lib/python2.7/sre_parse", 0xbedff488) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_parse.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_parse.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_parsemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_parse.py", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=30700, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_parse.pyc", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=21084, ...}) = 0
2268 read(7, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\4\0\0\0@\0\0\0s\323\2\0\0d\0"..., 4096) = 4096
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=21084, ...}) = 0
2268 read(7, "\0/usr/lib/python2.7/sre_parse.py"..., 16384) = 16384
2268 read(7, "NNING_STRINGt\v\0\0\0AT_BOUNDARYt\17\0\0"..., 4096) = 604
2268 read(7, "", 4096) = 0
2268 close(7) = 0
2268 stat64("/usr/lib/python2.7/sre_constants", 0xbedff150) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_constants.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_constants.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_constantsmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_constants.py", O_RDONLY|O_LARGEFILE) = 7
2268 fstat64(7, {st_mode=S_IFREG|0644, st_size=7197, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sre_constants.pyc", O_RDONLY|O_LARGEFILE) = 8
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=6185, ...}) = 0
2268 read(8, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0 \0\0\0@\0\0\0s
\5\0\0d\0"..., 4096) = 4096
2268 fstat64(8, {st_mode=S_IFREG|0644, st_size=6185, ...}) = 0
2268 read(8, "FIX %d\ns\34\0\0\0#define SRE_INFO_LIT"..., 4096) = 2089
2268 read(8, "", 4096) = 0
2268 close(8) = 0
2268 close(7) = 0
2268 close(6) = 0
2268 close(5) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/_sysconfigdata", 0xbedffa28) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdatamodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=126, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=279, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0s6\0\0\0d\0"..., 4096) = 279
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=279, ...}) = 0
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 stat64("/usr/lib/python2.7/_sysconfigdata_nd", 0xbedff6f0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata_nd.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata_nd.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata_ndmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata_nd.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/_sysconfigdata_nd.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_nd", 0xbedff6f0) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_nd.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_nd.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_ndmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_nd.py", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=18091, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/_sysconfigdata_nd.pyc", O_RDONLY|O_LARGEFILE) = 6
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=20826, ...}) = 0
2268 read(6, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0s\6\17\0\0i$"..., 4096) = 4096
2268 fstat64(6, {st_mode=S_IFREG|0644, st_size=20826, ...}) = 0
2268 read(6, "\10\0\0\0/usr/bint\6\0\0\0BINDIRs\22\0\0\0/usr"..., 16384) = 16384
2268 read(6, "\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\1"..., 4096) = 346
2268 read(6, "", 4096) = 0
2268 close(6) = 0
2268 close(5) = 0
2268 close(4) = 0
2268 brk(0x1e2c000) = 0x1e2c000
2268 stat64("/root/.local/lib/python2.7/site-packages", 0xbee00eb0) = -1 ENOENT (No such file or directory)
2268 stat64("/root/.local/local/lib/python2.7/dist-packages", 0xbee00eb0) = -1 ENOENT (No such file or directory)
2268 stat64("/root/.local/lib/python2.7/dist-packages", 0xbee00eb0) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/local/lib/python2.7/dist-packages", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
2268 fstat64(4, {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
2268 getdents64(4, /* 2 entries /, 32768) = 48
2268 getdents64(4, /
0 entries /, 32768) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/dist-packages", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_CLOEXEC|O_DIRECTORY) = 4
2268 fstat64(4, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 getdents64(4, /
20 entries /, 32768) = 704
2268 getdents64(4, /
0 entries /, 32768) = 0
2268 close(4) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0-pysupport-compat.pth", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=38, ...}) = 0
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=38, ...}) = 0
2268 read(4, "/usr/lib/pymodules/python2.7/gtk"..., 8192) = 38
2268 read(4, "", 4096) = 0
2268 stat64("/usr/lib/pymodules/python2.7/gtk-2.0", 0xbee00c30) = -1 ENOENT (No such file or directory)
2268 read(4, "", 8192) = 0
2268 close(4) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/pygtk.pth", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=8, ...}) = 0
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=8, ...}) = 0
2268 read(4, "gtk-2.0\n", 8192) = 8
2268 read(4, "", 4096) = 0
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 read(4, "", 8192) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/sitecustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitecustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitecustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitecustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitecustomize.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=155, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/sitecustomize.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=232, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\5\0\0\0@\0\0\0s2\0\0\0y\20"..., 4096) = 232
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=232, ...}) = 0
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 stat64("/usr/lib/python2.7/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-tk", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/lib-tk", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/lib-tk/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-old", 0xbedfea50) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0
2268 stat64("/usr/lib/python2.7/lib-old", 0xbedffa40) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-dynload", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/lib-dynload", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/lib-dynload/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/local/lib/python2.7/dist-packages", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
2268 stat64("/usr/local/lib/python2.7/dist-packages", {st_mode=S_IFDIR|S_ISGID|0775, st_size=4096, ...}) = 0
2268 stat64("/usr/local/lib/python2.7/dist-packages/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/dist-packages", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/dist-packages/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hook", 0xbedffb70) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hook.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hook.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hookmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hook.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/apport_python_hook.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-tk/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-dynload/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/local/lib/python2.7/dist-packages/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomize", 0xbedffea8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomize.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomize.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomizemodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomize.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/usercustomize.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 close(3) = 0
2268 openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE|O_CLOEXEC) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=3031632, ...}) = 0
2268 mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb6a46000
2268 mmap2(NULL, 2596864, PROT_READ, MAP_PRIVATE, 3, 0x6b000) = 0xb67cc000
2268 close(3) = 0
2268 stat64("/usr/lib/python2.7/encodings", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
2268 stat64("/usr/lib/python2.7/encodings/init.py", {st_mode=S_IFREG|0644, st_size=5698, ...}) = 0
2268 stat64("/usr/lib/python2.7/encodings/init", 0xbee003a8) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/init.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/init.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/__init__module.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/init.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=5698, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/init.pyc", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=4370, ...}) = 0
2268 read(4, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0s\216\0\0\0d\0"..., 4096) = 4096
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=4370, ...}) = 0
2268 read(4, "\1$\1$\0016\0016\1\3\1\3\1\26\1"\0015\1\22\3\n\4\3\1\20\1\r\1\4\2\r"..., 4096) = 274
2268 read(4, "", 4096) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/encodings", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
2268 stat64("/usr/lib/python2.7/encodings", {st_mode=S_IFDIR|0755, st_size=12288, ...}) = 0
2268 stat64("/usr/lib/python2.7/encodings/codecs", 0xbee00070) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/codecs.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/codecs.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/codecsmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/codecs.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/codecs.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/codecs", 0xbee00070) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/codecs.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/codecs.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/codecsmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/codecs.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=36143, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/codecs.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=36636, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0+\0\0\0@\0\0\0sp\3\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=36636, ...}) = 0
2268 read(5, "ndling.\n\n The method "..., 28672) = 28672
2268 read(5, "d\n or the codecs doesn't "..., 4096) = 3868
2268 read(5, "", 4096) = 0
2268 mmap2(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb678c000
2268 close(5) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/encodings/encodings", 0xbee00070) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/encodings.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/encodings.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/encodingsmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/encodings.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/encodings.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/encodings/aliases", 0xbee00030) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/aliases.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/aliases.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/aliasesmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/aliases.py", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=14848, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/aliases.pyc", O_RDONLY|O_LARGEFILE) = 5
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=8768, ...}) = 0
2268 read(5, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0su\10\0\0d\0"..., 4096) = 4096
2268 fstat64(5, {st_mode=S_IFREG|0644, st_size=8768, ...}) = 0
2268 read(5, "ibm860t\6\0\0\0ibm860t\5\0\0\0cp861t\3\0\0\0"..., 4096) = 4096
2268 read(5, "\7\3\7\1\7\1\7\1\7\1\7\1\7\1\7\1\7\3\7\1\7\1\7\3\7\1\7\3\7\1\7\3"..., 4096) = 576
2268 read(5, "", 4096) = 0
2268 close(5) = 0
2268 close(4) = 0
2268 stat64("/usr/lib/python2.7/encodings/builtin", 0xbee00070) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/builtin.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/builtin.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/__builtin__module.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/builtin.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/builtin.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 close(3) = 0
2268 stat64("/usr/lib/python2.7/encodings/utf_8", 0xbee00218) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/utf_8.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/utf_8.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/utf_8module.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/utf_8.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=1005, ...}) = 0
2268 openat(AT_FDCWD, "/usr/lib/python2.7/encodings/utf_8.pyc", O_RDONLY|O_LARGEFILE) = 4
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=1950, ...}) = 0
2268 read(4, "\3\363\r\ng\252\237]c\0\0\0\0\0\0\0\0\3\0\0\0@\0\0\0s\230\0\0\0d\0"..., 4096) = 1950
2268 fstat64(4, {st_mode=S_IFREG|0644, st_size=1950, ...}) = 0
2268 read(4, "", 4096) = 0
2268 close(4) = 0
2268 close(3) = 0
2268 ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
2268 ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
2268 ioctl(2, TCGETS, {B38400 opost isig icanon echo ...}) = 0
2268 readlink("MotorBridge.py", 0xbedfe560, 4096) = -1 EINVAL (Invalid argument)
2268 getcwd("/var/lib/cloud9/my_python", 4096) = 26
2268 lstat64("/var/lib/cloud9/my_python/MotorBridge.py", {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 stat64("MotorBridge.py", {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 openat(AT_FDCWD, "MotorBridge.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 _llseek(3, 8192, [8192], SEEK_SET) = 0
2268 read(3, " time.sleep(DelayTime)\n"..., 3718) = 3718
2268 read(3, "ery step\n myloop()\n", 4096) = 22
2268 close(3) = 0
2268 stat64("MotorBridge.py", {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 openat(AT_FDCWD, "MotorBridge.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 ioctl(3, TCGETS, 0xbee014e0) = -1 ENOTTY (Inappropriate ioctl for device)
2268 _llseek(3, 0, [0], SEEK_CUR) = 0
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 read(3, " # /
\n # * MotorBridge.py \n "..., 4096) = 4096
2268 _llseek(3, 0, [0], SEEK_SET) = 0
2268 read(3, " # /* \n # * MotorBridge.py \n "..., 4096) = 4096
2268 read(3, "6_ANGLE = SVM6_FREQ + 2"..., 4096) = 4096
2268 mmap2(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb674c000
2268 read(3, " time.sleep(DelayTime)\n"..., 4096) = 3740
2268 read(3, "", 4096) = 0
2268 close(3) = 0
2268 brk(0x1e4e000) = 0x1e4e000
2268 brk(0x1e4c000) = 0x1e4c000
2268 brk(0x1e4b000) = 0x1e4b000
2268 stat64("/var/lib/cloud9/my_python", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/var/lib/cloud9/my_python", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
2268 stat64("/var/lib/cloud9/my_python/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/var/lib/cloud9/my_python/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/var/lib/cloud9/my_python/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/var/lib/cloud9/my_python/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/var/lib/cloud9/my_python/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/var/lib/cloud9/my_python/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/plat-arm-linux-gnueabihf/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-tk/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-tk/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/lib-dynload/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/lib-dynload/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/local/lib/python2.7/dist-packages/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 stat64("/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIO", 0xbee00230) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIO.arm-linux-gnueabihf.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIO.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIOmodule.so", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIO.py", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 openat(AT_FDCWD, "/usr/lib/python2.7/dist-packages/gtk-2.0/Adafruit_GPIO.pyc", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
2268 write(2, "Traceback (most recent call last"..., 35) = 35
2268 write(2, " File "MotorBridge.py", line 33"..., 46) = 46
2268 openat(AT_FDCWD, "MotorBridge.py", O_RDONLY|O_LARGEFILE) = 3
2268 fstat64(3, {st_mode=S_IFREG|0644, st_size=11932, ...}) = 0
2268 read(3, " # /* \n # * MotorBridge.py \n "..., 4096) = 4096
2268 write(2, " ", 4) = 4
2268 write(2, "import Adafruit_GPIO.I2C as I2C\n", 32) = 32
2268 close(3) = 0
2268 write(2, "ImportError", 11) = 11
2268 write(2, ": ", 2) = 2
2268 write(2, "No module named Adafruit_GPIO.I2"..., 33) = 33
2268 write(2, "\n", 1) = 1
2268 rt_sigaction(SIGINT, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, {sa_handler=0x5b8e0d, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0xb6d2bca1}, 8) = 0
2268 munmap(0xb674c000, 262144) = 0
2268 exit_group(1) = ?
2268 +++ exited with 1 +++

@tomek242
Copy link
Author

Hello,

It is late now but I have some resources on this effort...

https://github.com/silver2row/bbg is the link I created some time ago. I keep updating it but sometimes I shy away from it all at once.

Seth

P.S. If you would like to have it work, just follow that repo. and if you have any issues, just ask away.

Hello Seth. Where to find smbus2.py to edit this 302 line?

@silver2row
Copy link

Hello @tomek242 ,

Seth here. Okay, so pip3 install smbus2 is first. And...you may want to create a python3 venv w/ sudo apt install python3-venv and then python3 -m venv <some_directory> .

...

Then, go into the Python venv by typing source bin/activate. I am sure you are already familiar w/ these commands. You may also want to track things w/ a requirements.txt file. After you create that file, type pip3 freeze > requirements.txt .

Then...to find that line 302 in /smbus/smbus.py, look in this directory: /lib/python3.7/site-packages/smbus2/smbus2.py .

Also...in the file pyvenv.cfg, exchange out the false w/ true.

Seth

P.S. If you need any additional ideas, please just reply.

@silver2row
Copy link

silver2row commented Mar 1, 2021

Hello @tomek242 ,

If that is not clear or if you need additional help, just reply. So, set up the venv, go into the venv w/ souce bin/activate, install smbus2 w/ pip3, and then go to the listed dir. at /lib/python3.7/site-packages/smbus2/ while in the venv directly in the venv.

smbus2.py will be located in that dir.

Seth

P.S. Also, stay in the venv to run the file.py of your choice w/ the Motorbridge.py altered file. If you need the altered file, reply and I will do my best to update you. Oh and use python3 and not python2.

Also...look at the MotorBridge.py file at https://github.com/silver2row/bbg/blob/master/MBC/MotorBridge.py . It uses smbus2 instead of the older items of interest that have been put on deprecation and/or are no longer usable. Also, see further down in that file for the differences in the functions. Also...I updated the repo. at https://github.com/silver2row/bbg . Check it out and let me know if that helps!

@tomek242
Copy link
Author

tomek242 commented Mar 1, 2021

Hello guys and i have this:
filepath = "/dev/i2c-{}".format(bus)
and a should have this:
filepath = "/dev/i2c-2".format(bus)
sorry for maybe stupid question but it is diffirence between this two codes, the two parentheses ? I mean what does it mean this 2 ???

And this is pip3 freeze > requirements.txt result:
distro==1.3.0 Flask==1.1.2 galternatives==1.0.4 idna==2.6 importlib-metadata==3.4.0 iniconfig==1.1.1 itsdangerous==0.24 Jinja2==2.11.3 MarkupSafe==1.1.0 numpy==1.16.2 packaging==20.9 pluggy==0.13.1 py==1.10.0 pycairo==1.16.2 pyctrl==0.4.3 pycups==1.9.73 PyGObject==3.30.4 pyparsing==2.4.7 pysmbc==1.0.15.6

Well i was use this file https://github.com/silver2row/bbg/blob/master/MBC/MotorBridge.py
and thats the result:
I try to run simple servo app:

`import MotorBridge
import time
ServoName = 1
Frequency = 50
Angle1 = 20
Angle2 = 160

if name=="main":
motor = MotorBridge.MotorBridgeCape()
motor.ServoInit(ServoName,Frequency)

while True:
    print ('Servo Test')
    motor.ServoMoveAngle(ServoName,Angle1)
    time.sleep(2)
    motor.ServoMoveAngle(ServoName,Angle2)
    time.sleep(2)`

Of course i was used new version of MotorBridge.py with smbus2 and... I had this:

Traceback (most recent call last): File "/var/lib/cloud9/my_python/servo.py", line 12, in <module> motor.ServoInit(ServoName,Frequency) File "/var/lib/cloud9/my_python/MotorBridge.py", line 345, in ServoInit WriteHalfWord(SVM1_FREQ,Frequency) File "/var/lib/cloud9/my_python/MotorBridge.py", line 212, in WriteHalfWord MotorBridge.writeList(WriteMode,data) File "/usr/local/lib/python3.7/dist-packages/Adafruit_GPIO-1.0.4-py3.7.egg/Adafruit_GPIO/I2C.py", line 129, in writeList File "/usr/local/lib/python3.7/dist-packages/Adafruit_PureIO-1.1.8-py3.7.egg/Adafruit_PureIO/smbus.py", line 364, in write_i2c_block_data OSError: [Errno 121] Remote I/O error

@silver2row
Copy link

@tomek242 ,

Hello...

pip3 freeze > requirements.txt

This makes it so you can have all your 'birds in one dish.' I mean, you can have those virtual or venv w/ all the python3 libs.

filepath = "/dev/i2c-2".format(bus)

This makes it so you can use i2c-2 device on the BBB instead of what random guess the software makes to pick a randomly generated i2c-.

You did not change the MotorBridge.py file yet. Look here: https://github.com/silver2row/bbg/blob/master/MBC/MotorBridge.py

See that difference and see what your MotorBridge.py file looks like?

Check out mine and let me know what you think.

Seth

P.S. Remember, we have to get MotorBridge.py working first. Then, we can move on to your source.

@silver2row
Copy link

silver2row commented Mar 2, 2021

Hello guys and i have this:
filepath = "/dev/i2c-{}".format(bus)
and a should have this:
filepath = "/dev/i2c-2".format(bus)
sorry for maybe stupid question but it is diffirence between this two codes, the two parentheses ? I mean what does it mean this 2 ??? The 2 here is /dev/i2c-2. It is the i2c-2 peripheral from the BBB or whatever board from beagleboard.org you are using.

And this is pip3 freeze > requirements.txt result: Where is Adafruit_BBIO ?
distro==1.3.0 Flask==1.1.2 galternatives==1.0.4 idna==2.6 importlib-metadata==3.4.0 iniconfig==1.1.1 itsdangerous==0.24 Jinja2==2.11.3 MarkupSafe==1.1.0 numpy==1.16.2 packaging==20.9 pluggy==0.13.1 py==1.10.0 pycairo==1.16.2 pyctrl==0.4.3 pycups==1.9.73 PyGObject==3.30.4 pyparsing==2.4.7 pysmbc==1.0.15.6

Well i was use this file https://github.com/silver2row/bbg/blob/master/MBC/MotorBridge.py
and thats the result:
I try to run simple servo app:

import MotorBridge # Change your MotorBridge.py file first...and then after it is working, we can move on to this source.
import time

ServoName = 1
Frequency = 50
Angle1 = 20
Angle2 = 160

if __name__=="__main__":
motor = MotorBridge.MotorBridgeCape()
motor.ServoInit(ServoName,Frequency)


while True:
    print ('Servo Test')
    motor.ServoMoveAngle(ServoName,Angle1)
    time.sleep(2)
    motor.ServoMoveAngle(ServoName,Angle2)
    time.sleep(2)`

Of course i was used new version of MotorBridge.py with smbus2 and... I had this:

Traceback (most recent call last): File "/var/lib/cloud9/my_python/servo.py", line 12, in <module> motor.ServoInit(ServoName,Frequency) File "/var/lib/cloud9/my_python/MotorBridge.py", line 345, in ServoInit WriteHalfWord(SVM1_FREQ,Frequency) File "/var/lib/cloud9/my_python/MotorBridge.py", line 212, in WriteHalfWord MotorBridge.writeList(WriteMode,data) File "/usr/local/lib/python3.7/dist-packages/Adafruit_GPIO-1.0.4-py3.7.egg/Adafruit_GPIO/I2C.py", line 129, in writeList File "/usr/local/lib/python3.7/dist-packages/Adafruit_PureIO-1.1.8-py3.7.egg/Adafruit_PureIO/smbus.py", line 364, in write_i2c_block_data OSError: [Errno 121] Remote I/O error

Hello...you seem to be using Adafruit_GPIO still but it is deprecated. Use smbus2 via a pip3 install, put it in a venv first w/ python -m venv venv, and then make your installs but make sure you have your lib, Adafruit_BBIO, working and installed in the venv. I tried to explain that earlier but I may have not been too clear.

...

Then, after, if you have not altered your MotorBridge.py file yet, we alter the MotorBridge.py file to resemble my adapted source from the original source, we can move on to other aspects of issues.

@silver2row
Copy link

@tomek242 ,

Hello...Seth here. Did you get it up and running yet? You may want to update/upgrade your packages and kernel to --lts-4_19. There are some updates in this kernel too w/ it being r59.

Seth

P.S. Please reply when you have time...

@tomek242
Copy link
Author

tomek242 commented Mar 21, 2021

Hello Seth, hello silver2row.
Im sorry for late answer but i had many personal issues since lasy month - not only with my Beagle :-(
Anyway, it seems to be install all right. Lines in my file smbus2.py looks like below:

` """
Open a given i2c bus.

    :param bus: i2c bus number (e.g. 0 or 1)
        or an absolute file path (e.g. '/dev/i2c-42').
    :type bus: int or str
    :raise TypeError: if type(bus) is not in (int, str)
    """
    if isinstance(bus, int):
        filepath = "/dev/i2c-2".format(bus) **#this line was changed as u suggest me...**
    elif isinstance(bus, str):
        filepath = bus
    else:
        raise TypeError("Unexpected type(bus)={}".format(type(bus)))

    self.fd = os.open(filepath, os.O_RDWR)
    self.funcs = self._get_funcs()`

I made another attempt to run my servo test program. Results below:

import MotorBridge
import time
ServoName = 1
Frequency = 50
Angle1 = 20
Angle2 = 160

if name=="main":
motor = MotorBridge.MotorBridgeCape()
motor.ServoInit(ServoName,Frequency)

while True:
    print ('Servo Test')
    motor.ServoMoveAngle(ServoName,Angle1)
    time.sleep(2)
    motor.ServoMoveAngle(ServoName,Angle2)
    time.sleep(2)

Trying run and:

Traceback (most recent call last): File "/var/lib/cloud9/my_python/servo.py", line 11, in <module> motor = MotorBridge.MotorBridgeCape() File "/var/lib/cloud9/my_python/MotorBridge.py", line 229, in __init__ GPIO.output(Reset, GPIO.HIGH) NameError: name 'GPIO' is not defined
May be i don't understeand anything or im too stupid to make this... everything seems work correctly bot it isn't:
Below i put line229 from MotorBridge.py:

class MotorBridgeCape: def __init__(self): GPIO.output(Reset, GPIO.HIGH)# ....and what is wrong in here?
time.sleep(1)
`

Greetings guys and thanks for ur answer and help....

@silver2row
Copy link

silver2row commented Mar 23, 2021

Hello @tomek242 ,

Did you put the BB-UART2-00A0.dtbo in the /boot/uEnv.txt file or use config-pin to handle the UART2 pins?

This may be the cause. Oh and try this source at where you typed:

if name=="main":

But instead of that line, use this line:

if __name__=="__main__":

Also...

Please reply w/ this command cat /boot/uEnv.txt.

Seth

P.S. Use the spacing when you use if __name__=="__main__": instantiation.

Try this:

import MotorBridge
import time
ServoName = 1
Frequency = 50
Angle1 = 20
Angle2 = 160

if __name__=="__main__":
    print('Hello From MotorBridge')
    motor = MotorBridgeCape()

    motor.ServoInit(ServoName,Frequency)

    while True:
        print ('Servo Test')
        motor.ServoMoveAngle(ServoName,Angle1)
        time.sleep(2)
        motor.ServoMoveAngle(ServoName,Angle2)
        time.sleep(2)

Also:

Did you change the required portions of MotorBridge.py yet?

@silver2row
Copy link

silver2row commented Mar 23, 2021

Hello @tomek242 ,

Also, the pins on the Motor Bridge Cape are confusing for the servo header. If you are using Servo1 in your source, try to use the exterior pin(s) on the servo header. So, you may be plugged into the sixth servo pin instead of the first servo pin. Try to alter your configuration and...

Perform the necessary adjustments and please reply.

Seth

P.S. Look at these differences compared to the actual https://github.com/Seeed-Studio/MotorBridgeCapeforBBG_BBB/blob/master/BBG_MotorBridgeCape/MotorBridge.py starting on line 31 and 201 .

This is the start located at line 31.

from smbus2 import SMBus
import time
import pathlib

# reset pin is P9.23, i.e. gpio1.17
reset_pin = pathlib.Path('/sys/class/gpio/gpio49/direction')
reset_pin.write_text('low')

bus = SMBus('/dev/i2c-2')

ReadMode  = 0
WriteMode = 1
DeAddr    = 0X4B
ConfigValid =  0x3a6fb67c
DelayTime = 0.00

This is the start on line 201.


def WriteByte(Reg,Value):
    data = [0 for i in range(2)]
    data[0] = Reg
    data[1] = Value
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteHalfWord(Reg,Value):
    data = [0 for i in range(3)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteOneWord(Reg,Value):
    data = [0 for i in range(5)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    data[3] = (Value>>16) & 0xff
    data[4] = (Value>>24) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def SetDefault():
    WriteOneWord(CONFIG_VALID, 0x00000000)

class MotorBridgeCape:
    def __init__(self):
        GPIO.output(Reset, GPIO.HIGH)
        time.sleep(1)

...

Do you see the difference? The smbus2 library has been used instead of the Adafruit_I2C or whatever library that came from during the update in '18.

Anyway, try and try until you figure it out. I will check back after a while.

@silver2row
Copy link

@tomek242 ,

Hello sir...did you figure it out yet? I am checking in to see if you got things working.

Seth

@tomek242
Copy link
Author

Hello Seth. Im sorry for late like always. BBB its my hobby only so i can write about it only when i had time after work.
Anyway unfortunatelly i had no result - im using of course new wersion of I2C library, i had exactly same start of this file:

`from smbus2 import SMBus
import time
import pathlib

reset pin is P9.23, i.e. gpio1.17

reset_pin = pathlib.Path('/sys/class/gpio/gpio49/direction')
reset_pin.write_text('low')

bus = SMBus('/dev/i2c-2')

ReadMode = 0
WriteMode = 1
DeAddr = 0X4B
ConfigValid = 0x3a6fb67c
DelayTime = 0.00`

also i've checked couple times lines since line 201 and rest, and i have exactly same code:

`def WriteByte(Reg,Value):
data = [0 for i in range(2)]
data[0] = Reg
data[1] = Value
bus.write_i2c_block_data(0x4b, 1, data)

def WriteHalfWord(Reg,Value):
data = [0 for i in range(3)]
data[0] = Reg
data[1] = Value & 0xff
data[2] = (Value>>8) & 0xff
bus.write_i2c_block_data(0x4b, 1, data)

def WriteOneWord(Reg,Value):
data = [0 for i in range(5)]
data[0] = Reg
data[1] = Value & 0xff
data[2] = (Value>>8) & 0xff
data[3] = (Value>>16) & 0xff
data[4] = (Value>>24) & 0xff
bus.write_i2c_block_data(0x4b, 1, data)

def SetDefault():
WriteOneWord(CONFIG_VALID, 0x00000000)

class MotorBridgeCape:
def init(self):
GPIO.output(Reset, GPIO.HIGH)
time.sleep(1)`

So everything seems correct but i had exactly same error like before in my posts....

@silver2row
Copy link

silver2row commented May 31, 2021

Hello @tomek242 ,

Okay...I will test again. I have the hardware here. I will let you know exactly my set up, source, and board used. Please be patient.

Seth

P.S. Okay: BBGW, Motor Bridge Cape, and the set up:

Linux TACO 4.19.94-ti-r64 #1buster SMP PREEMPT Fri May 21 23:57:28 UTC 2021 armv7l GNU/Linux

BeagleBoard.org Debian Buster IoT Image 2020-04-06

and...

A video to help out...

And here is the video. I just took this video on May 31st at 7:15 2021.

https://youtu.be/IJWXZps9nsw :: The darn bot gets stuck on a tiny floor mat. Ha! ZumoBots!

One other thing! There is a switch on the Cape. You can have it flipped to working or standby . This may help too!

@silver2row
Copy link

Okay and okay,

@tomek242 :

Here:

 # * MotorBridge.py
 # * This is a library for BBG/BBB motor bridge cape
 # * Copyright (c) 2015 seeed technology inc.
 # * Author      : Jiankai Li
 # * Create Time:  Nov 2015
 # * Change Log : Jan. 2020 by Seth w/ help from #beagle on Freenode
 # *
 # * The MIT License (MIT)
 # *
 # * Permission is hereby granted, free of charge, to any person obtaining a copy
 # * of this software and associated documentation files (the "Software"), to deal
 # * in the Software without restriction, including without limitation the rights
 # * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 # * copies of the Software, and to permit persons to whom the Software is
 # * furnished to do so, subject to the following conditions:
 # *
 # * The above copyright notice and this permission notice shall be included in
 # * all copies or substantial portions of the Software.
 # *
 # * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 # * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 # * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 # * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 # * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 # * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 # * THE SOFTWARE.
 # */
# FileName : MotorBridge.py
# by Jiankai.li

from smbus2 import SMBus
import time
import pathlib

# reset pin is P9.23, i.e. gpio1.17
reset_pin = pathlib.Path('/sys/class/gpio/gpio49/direction')
reset_pin.write_text('low')

bus = SMBus('/dev/i2c-2')

ReadMode  = 0
WriteMode = 1
DeAddr    = 0X4B
ConfigValid =  0x3a6fb67c
DelayTime = 0.005

# TB_WORKMODE

TB_SHORT_BREAK  = 0
TB_CW           = 1
TB_CCW          = 2
TB_STOP         = 3
TB_WORKMODE_NUM = 4


# TB_PORTMODE

TB_DCM          = 0
TB_SPM          = 1
TB_PORTMODE_NUM = 2


# SVM_PORT

SVM1            = 0
SVM2            = 1
SVM3            = 2
SVM4            = 3
SVM5            = 4
SVM6            = 5
SVM_PORT_NUM    = 6

# SVM_STATE

SVM_DISABLE     = 0
SVM_ENABLE      = 1
SVM_STATE_NUM   = 2

# IO_MODE

IO_IN           = 0
IO_OUT          = 1
IO_MODE_NUM     = 2

# IO_PUPD

IO_PU           = 0
IO_PD           = 1
IO_NP           = 2
IO_PUPD_NUM     = 3

# IO_PPOD

IO_PP           = 0
IO_OD           = 1
IO_PPOD_NUM     = 2

# IO_STATE

IO_LOW          = 0
IO_HIGH         = 1
IO_STATE_NUM    = 2

# IO_PORT

IO1             = 0
IO2             = 1
IO3             = 2
IO4             = 3
IO5             = 4
IO6             = 5
IO_NUM          = 6


# PARAM_REG

CONFIG_VALID        = 0
CONFIG_TB_PWM_FREQ  = CONFIG_VALID + 4

I2C_ADDRESS         = CONFIG_TB_PWM_FREQ + 4

TB_1A_MODE          = I2C_ADDRESS + 1
TB_1A_DIR           = TB_1A_MODE + 1
TB_1A_DUTY          = TB_1A_DIR + 1
TB_1A_SPM_SPEED     = TB_1A_DUTY + 2
TB_1A_SPM_STEP      = TB_1A_SPM_SPEED + 4

TB_1B_MODE          = TB_1A_SPM_STEP + 4
TB_1B_DIR           = TB_1B_MODE + 1
TB_1B_DUTY          = TB_1B_DIR + 1
TB_1B_SPM_SPEED     = TB_1B_DUTY + 2
TB_1B_SPM_STEP      = TB_1B_SPM_SPEED + 4

TB_2A_MODE          = TB_1B_SPM_STEP + 4
TB_2A_DIR           = TB_2A_MODE + 1
TB_2A_DUTY          = TB_2A_DIR + 1
TB_2A_SPM_SPEED     = TB_2A_DUTY + 2
TB_2A_SPM_STEP      = TB_2A_SPM_SPEED + 4

TB_2B_MODE          = TB_2A_SPM_STEP + 4
TB_2B_DIR           = TB_2B_MODE + 1
TB_2B_DUTY          = TB_2B_DIR + 1
TB_2B_SPM_SPEED     = TB_2B_DUTY + 2
TB_2B_SPM_STEP      = TB_2B_SPM_SPEED + 4

SVM1_STATE          = TB_2B_SPM_STEP + 4
SVM1_FREQ           = SVM1_STATE + 1
SVM1_ANGLE          = SVM1_FREQ + 2

SVM2_STATE          = SVM1_ANGLE + 2
SVM2_FREQ           = SVM2_STATE + 1
SVM2_ANGLE          = SVM2_FREQ + 2

SVM3_STATE          = SVM2_ANGLE + 2
SVM3_FREQ           = SVM3_STATE + 1
SVM3_ANGLE          = SVM3_FREQ + 2

SVM4_STATE          = SVM3_ANGLE + 2
SVM4_FREQ           = SVM4_STATE + 1
SVM4_ANGLE          = SVM4_FREQ + 2

SVM5_STATE          = SVM4_ANGLE + 2
SVM5_FREQ           = SVM5_STATE + 1
SVM5_ANGLE          = SVM5_FREQ + 2

SVM6_STATE          = SVM5_ANGLE + 2
SVM6_FREQ           = SVM6_STATE + 1
SVM6_ANGLE          = SVM6_FREQ + 2

IO1_STATE           = SVM6_ANGLE + 2
IO1_MODE            = IO1_STATE + 1
IO1_PUPD            = IO1_MODE + 1
IO1_PPOD            = IO1_PUPD + 1

IO2_STATE           = IO1_PPOD + 1
IO2_MODE            = IO2_STATE + 1
IO2_PUPD            = IO2_MODE + 1
IO2_PPOD            = IO2_PUPD + 1

IO3_STATE           = IO2_PPOD + 1
IO3_MODE            = IO3_STATE + 1
IO3_PUPD            = IO3_MODE + 1
IO3_PPOD            = IO3_PUPD + 1

IO4_STATE           = IO3_PPOD + 1
IO4_MODE            = IO4_STATE + 1
IO4_PUPD            = IO4_MODE + 1
IO4_PPOD            = IO4_PUPD + 1

IO5_STATE           = IO4_PPOD + 1
IO5_MODE            = IO5_STATE + 1
IO5_PUPD            = IO5_MODE + 1
IO5_PPOD            = IO5_PUPD + 1

IO6_STATE           = IO5_PPOD + 1
IO6_MODE            = IO6_STATE + 1
IO6_PUPD            = IO6_MODE + 1
IO6_PPOD            = IO6_PUPD + 1

PARAM_REG_NUM = IO6_PPOD + 1

def WriteByte(Reg,Value):
    data = [0 for i in range(2)]
    data[0] = Reg
    data[1] = Value
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteHalfWord(Reg,Value):
    data = [0 for i in range(3)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def WriteOneWord(Reg,Value):
    data = [0 for i in range(5)]
    data[0] = Reg
    data[1] = Value & 0xff
    data[2] = (Value>>8) & 0xff
    data[3] = (Value>>16) & 0xff
    data[4] = (Value>>24) & 0xff
    bus.write_i2c_block_data(0x4b, 1, data)

def SetDefault():
    WriteOneWord(CONFIG_VALID, 0x00000000)

class MotorBridgeCape:
    def __init__(self):
        GPIO.output(Reset, GPIO.HIGH)
        time.sleep(1)

    # init stepper motor A
    def StepperMotorAInit(self):
        WriteByte(TB_1A_MODE, TB_SPM) #Stepper
        time.sleep(DelayTime)
        WriteHalfWord(TB_1A_DUTY, 1000)    # voltage
        time.sleep(DelayTime)

    # MoveSteps > 0 CW
    # MoveSteps < 0 CCW
    # StepDelayTime : delay time for every step. uint us
    def StepperMotorAMove(self, MoveSteps, StepDelayTime):
        if MoveSteps > 0:
            WriteByte(TB_1A_DIR, TB_CW)   #CW
        else:
            WriteByte(TB_1A_DIR, TB_CCW)   #CW
            MoveSteps = -MoveSteps
        time.sleep(DelayTime)
        WriteOneWord(TB_1A_SPM_SPEED, StepDelayTime)  # unit us
        time.sleep(DelayTime)
        WriteOneWord(TB_1A_SPM_STEP, MoveSteps)
        time.sleep(DelayTime)

    # init stepper motor B
    def StepperMotorBInit(self):
        WriteByte(TB_2A_MODE, TB_SPM) #Stepper
        time.sleep(DelayTime)
        WriteHalfWord(TB_2A_DUTY, 1000)    # voltage
        time.sleep(DelayTime)

    # MoveSteps > 0 CW
    # MoveSteps < 0 CCW
    # StepDelayTime : delay time for every step. uint us
    def StepperMotorBMove(self, MoveSteps, StepDelayTime):
        if MoveSteps > 0:
            WriteByte(TB_2A_DIR, TB_CW)   #CW
        else:
            WriteByte(TB_2A_DIR, TB_CCW)   #CW
            MoveSteps = -MoveSteps
        time.sleep(DelayTime)
        WriteOneWord(TB_2A_SPM_SPEED, StepDelayTime)  # unit us
        time.sleep(DelayTime)
        WriteOneWord(TB_2A_SPM_STEP, MoveSteps)
        time.sleep(DelayTime)

    # Init DC Motor
    def DCMotorInit(self,MotorName, Frequency):
    # Init the DC Frequency
        WriteOneWord(CONFIG_TB_PWM_FREQ, Frequency)
        time.sleep(DelayTime)

    # Set the port as DC Motor
        if MotorName == 1 or MotorName == 2:
            WriteByte(TB_1A_MODE, TB_DCM)
            time.sleep(DelayTime)
            WriteByte(TB_1A_DIR, TB_STOP)
            time.sleep(DelayTime)
            WriteByte(TB_1B_MODE, TB_DCM)
            time.sleep(DelayTime)
            WriteByte(TB_1B_DIR, TB_STOP)
            time.sleep(DelayTime)
        if MotorName == 3 or MotorName == 4:
            WriteByte(TB_2A_MODE, TB_DCM)
            time.sleep(DelayTime)
            WriteByte(TB_2A_DIR, TB_STOP)
            time.sleep(DelayTime)
            WriteByte(TB_2B_MODE, TB_DCM)
            time.sleep(DelayTime)
            WriteByte(TB_2B_DIR, TB_STOP)
            time.sleep(DelayTime)

    # Drive the DC Motor
    # Direction 1 CW | 2 CCW
    # PWNDuty  0 ~ 100
    def DCMotorMove(self, MotorName, Direction, PWMDuty):
        if MotorName == 1:
            WriteByte(TB_1B_DIR, Direction)
            time.sleep(DelayTime)
            WriteOneWord(TB_1B_DUTY, PWMDuty*10)
            time.sleep(DelayTime)

        if MotorName == 2:
            WriteByte(TB_1A_DIR, Direction)
            time.sleep(DelayTime)
            WriteOneWord(TB_1A_DUTY, PWMDuty*10)
            time.sleep(DelayTime)

        if MotorName == 3:
            WriteByte(TB_2B_DIR, Direction)
            time.sleep(DelayTime)
            WriteOneWord(TB_2B_DUTY, PWMDuty*10)
            time.sleep(DelayTime)

        if MotorName == 4:
            WriteByte(TB_2A_DIR, Direction)
            time.sleep(DelayTime)
            WriteOneWord(TB_2A_DUTY, PWMDuty*10)
            time.sleep(DelayTime)

    # Stop the DC motor
    def DCMotorStop(self, MotorName):
        if MotorName == 1:
            WriteByte(TB_1B_DIR, TB_STOP)
        if MotorName == 2:
            WriteByte(TB_1A_DIR, TB_STOP)
        if MotorName == 3:
            WriteByte(TB_2B_DIR, TB_STOP)
        if MotorName == 4:
            WriteByte(TB_2A_DIR, TB_STOP)
        time.sleep(DelayTime)

    # init the Servo
    def ServoInit(self, ServoName, Frequency):
        if ServoName == 1:
            WriteHalfWord(SVM1_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM1_STATE, SVM_ENABLE)
            time.sleep(DelayTime)

        if ServoName == 2:
            WriteHalfWord(SVM2_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM2_STATE, SVM_ENABLE)
            time.sleep(DelayTime)
        if ServoName == 3:
            WriteHalfWord(SVM3_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM3_STATE, SVM_ENABLE)
            time.sleep(DelayTime)

        if ServoName == 4:
            WriteHalfWord(SVM4_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM4_STATE, SVM_ENABLE)
            time.sleep(DelayTime)
        if ServoName == 5:
            WriteHalfWord(SVM5_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM5_STATE, SVM_ENABLE)
            time.sleep(DelayTime)

        if ServoName == 6:
            WriteHalfWord(SVM6_FREQ, Frequency)
            time.sleep(DelayTime)
            WriteByte(SVM6_STATE, SVM_ENABLE)
            time.sleep(DelayTime)

    def ServoMoveAngle(self, ServoName, Angle):
        if ServoName == 1:
            WriteHalfWord(SVM1_ANGLE, Angle)
            time.sleep(DelayTime)

        if ServoName == 2:
            WriteHalfWord(SVM2_ANGLE, Angle)
            time.sleep(DelayTime)

        if ServoName == 3:
            WriteHalfWord(SVM3_ANGLE, Angle)
            time.sleep(DelayTime)

        if ServoName == 4:
            WriteHalfWord(SVM4_ANGLE, Angle)
            time.sleep(DelayTime)

        if ServoName == 5:
            WriteHalfWord(SVM5_ANGLE, Angle)
            time.sleep(DelayTime)

        if ServoName == 6:
            WriteHalfWord(SVM6_ANGLE, Angle)
            time.sleep(DelayTime)

#def myloop():

    #time.sleep(1)
    #motor.StepperMotorBMove(-1000,1000) # 20 steppers  1000us every step
    #time.sleep(1)
    #motor.StepperMotorBMove(1000,1000)  # 20 steppers  1000us every step

if __name__=="__main__":
    print("Hello!")

    #motor = MotorBridgeCape()
    #motor.StepperMotorBInit()
    #motor.StepperMotorBMove(1000,1000) # 20 steppers  1000us every step
    #myloop()

...

That is the MotorBridge.py file or call it whatever, e.g. as long as you call the MotorBridge or self-named file in the next file to handle your Motor Bridge Cape and motors or whatever you are using it for currently.

And...here is a simple test to see motor movement! This will make some DC Motors (12v) move around and back and forth and change direction:

import MotorBridge
import time

MotorName        = 1
MotorName        = 2
ClockWise        = 1
CounterClockWise = 2
PwmDuty          = 90
Frequency        = 1000

if __name__=="__main__":
    motor = MotorBridge.MotorBridgeCape()
    motor.DCMotorInit(1, 1000)
    motor.DCMotorInit(2, 1000)
    for i in range(1, 51):
        motor.DCMotorMove(1, 1, 90)
        motor.DCMotorMove(2, 1, 90)

#Making a U-Shape in the lawn
#Left motor on chassis goes while the right motor ccw
    for i in range(1, 3):
        motor.DCMotorMove(1, 1, 90)
        motor.DCMotorMove(2, 2, 90)

#All Flanks...Straight Ahead!
    for i in range(1, 51):
        motor.DCMotorMove(1, 1, 90)
        motor.DCMotorMove(2, 1, 90)

#Make another U-Turn but this time, motors go in the opposite direction!
    for i in range(1, 3):
        motor.DCMotorMove(1, 2, 90)
        motor.DCMotorMove(2, 1, 90)

#Straight Ahead
    for i in range(1, 51):
        motor.DCMotorMove(1, 1, 90)
        motor.DCMotorMove(2, 1, 90)

    print("Testing, Testing\n, 1\n, 2\n, 3\n")

Then, after those files are in your cloned git repo. from https://github.com/silver2row/bbg and after changing line 302 to what this specific repo. states for smbus2, add the BB-UART2-00A0.dtbo in your /boot/uEnv.txt file under the uboot overlays section.

Seth

P.S. I think this covers it. Please let me know what you think thus far. I am not sure what I could be missing since mine works.

@silver2row
Copy link

silver2row commented May 31, 2021

@tomek242 ,

Oh and...

If you have time, please use a venv for this specific instance if you are having issues. So, sudo apt install python3-venv and then type this command for your venv after cloning the repo. from above, python3 -m venv bbg .

Seth

P.S. This may help you exclude specific issues so we can debug a bit better. Also, while in the venv called bbg, use pip3 freeze > requirements.txt . If that requirements.txt file is not already available, make it with touch requirements.txt.

Check underneath the Motor Bridge Cape to check your DIP switches. They can be altered to handle different I2C addresses!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants