Closed ventz closed 8 years ago
For the i2cdetect, I noticed that the "right" combination is:
snd-bcm2835 i2c-bcm2708 i2c-dev
blacklist snd_soc_tas5713 blacklist snd_soc_wm8804
After a reboot, the system no longer ties up those addresses (UU):
i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
But this would indicate that the module is not even picked up?
Hi, sorry it's taken me so long to get back to you on this.
Jumper 1 sets the address of the board -- can you confirm which pins are connected on JP1 for me, please?
Hi,
JP1 has the jumper on top (both pins - default, i think ot came that way).
This means it should be powered through the Pi and that it should not be powered through the board right?
I think i also tried at one point removing that and powering the board directly just to eliminate that as an issue.
Checking with a multimeter, the pins (board) are definitely getting the 3v.
Hi ventz,
Sorry, Tom meant Jumper 1 on the Accelerometer board. If possible could you take a picture of your board.
Thanks
Hi Thomas, Tom,
I'll take a few pictures and provide links later today (I don't have it with me).
For now, just to confirm -- we are talking about this part: http://www.element14.com/community/dtss-images/uploads/devtool/image/large/14e432dbc220d33f208504aec8cd50f8.png
It was my understanding that the data (x,y,z axis) is provided via the built-in pins back through the board, to the PI -- you don't need to manually connect any pins to JP1/solder wires right?
Here are two pictures from two different angles:
Just wanted to see if you were able to figure out what is causing this? I poked at it a bit more, but it looks to me like the accelerometer module is just not communicating at all. I don't have access to an oscilloscope in order to get more information.
i am getting the same error. based off the above statement was there just bad batch of devices or is there some extra configurations that are needed?
python3 /usr/share/doc/python3-microstacknode/examples/accelcat.py
Traceback (most recent call last):
File "/usr/share/doc/python3-microstacknode/examples/accelcat.py", line 8, in
sudo i2cdetect -y -q 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
so i disabled device tree now i get this i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Hi, sorry for the delay. It appears there has been a manufacturing fault on a couple of units -- you are missing the header pins for JP1 on your accelerometer. Fortunately you can fix this by connecting pins 2 and 3 under label JP1:
Alternatively, PM me and we can arrange to send you a working unit. Our apologies for any inconvenience this may have caused you.
"It appears there has been a manufacturing fault on a couple of units" I guess I'm the poor sob who got the other one!! It took quite a while to find this fix!! Might I suggest an edit to this: http://www.farnell.com/datasheets/1860445.pdf such that users are directed to add these lines are added to /etc/modules: i2c-bcm2708 i2c-dev
Tompreston, thanks. Finally I know why mine wasn't working! There are a handful of reports of this problem that could benefit from this information. I've just used a staple to jump JP1-3 to JP1-2. Is there a more permanent and simple solution?
I got the same problem, I soldered a wire between pins 2 and 3, and now it works!!! Thanks Tom.
Another one here with the same fault - no jumper between pins 2 and 3. Just purchased from element14 in Australia too. Lucky I found this and was able to add the jumper - accelerometer now working.
I'm going to close this since we know what the issue is and how to fix it.
Installed via apt (version: 0.1.0 of microstacknode) and getting:
python3 /usr/share/doc/python3-microstacknode/examples/accelcat.py
Traceback (most recent call last): File "/usr/share/doc/python3-microstacknode/examples/accelcat.py", line 8, in
accelerometer.init()
File "/usr/lib/python3/dist-packages/microstacknode/accelerometer/mma8452q.py", line 115, in init
self.standby()
File "/usr/lib/python3/dist-packages/microstacknode/accelerometer/mma8452q.py", line 127, in standby
self.ctrl_reg1.value &= 0xff ^ CTRL_REG1_SET_ACTIVE
File "/usr/lib/python3/dist-packages/microstacknode/accelerometer/mma8452q.py", line 213, in value
v))
File "/usr/lib/python3/dist-packages/microstackcommon/i2c.py", line 85, in transaction
ioctl(self.fd, I2C_RDWR, ioctl_arg)
IOError: [Errno 5] Input/output error
i2c seems to detect:
i2cdetect -y 1
00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Not sure what's causing this?
I also tried the latest version from github, that also has problems. Looking for any help on this.
Thanks.