
MovieMaker
USA
Asked
— Edited
It was hard to get the compass installed because of the short length of wires. But, I finally did it. Now, the Compass works. But, when I change directions or if it is on for about 5 to 10 seconds , after giving me directions, it disconnects the wireless from the EZ board.
weird, do you think I need some pullup or down resistors? Is this what is happening. do you have these resistors built into the EZB or do we have to add them?
mel
Yes I've noticed the mentioning of EZ-Bits and it sounds like a solution to a lot of things Ive been wondering about. Though Im not quite sure when to expect it to be available for purchase. When it is I will certainly be placing another order.
..though Im still curious about the I2C connection. I really only need a Compass and accelerometer to keep it leveled and a sense of direction. I can get a single compass with 3 axis accelerometer that allows reading the raw data of all these components and would in theory be all I need to both purposes. the only thing standing in my way is a lack of understanding of how to work with I2C devices.
I want to keep it as minimal as possible and wont be adding much more, other then possibly the wireless camera. So if I can keep it leveled and a sense of direction with 1 device on the I2C header, that would be ideal.
Is it possible to control and read I2C devices with ARC? I can probaby find example code on this device in VB or something and use the VB scriptwindow in ARC and maybe go from there. But if I am facing thousands of lines of advanced coding just to manually be setting the right slave and master adresses, then Im not sure how far I want to go with that. If it is too complicated for me than maybe I should infact wait for the EZ-Bit and stick with using just analog and serial devices that are somewhat easily accesible through ARC.
Ever I2C device has a byte address so 127 I2C devices can be attached to one bus. Each device has multiple registers where the data can be read or write to, not all registers can be write to. There are spliting in data registers that require 2 bytes instead of one in this case they are split into register high and register low where the user must read both registers and then combine the two using shifting and an or operator. I believe there should be a func onder scripting to allow for i2c(address,register) however their is a certain way in order to access each register based on whether reading or writing, this deals with the reading and writing bit that must be set when accessing the registers.
7-bit addressing for i2c (8th bit is for direction). You can read about it here: https://synthiam.com/Tutorials/Hardware.aspx and there is a link within that page for more information here: https://synthiam.com/Community/Questions/322
The first EZ-Bit (compass module) is sent to the printers for our prototype. I should have that in a few days, then it'll be mass produced within a week if all tests are GO.
I'm surprised you needed pull-up for the module because the ez-b has pull-up's on the i2c interface already. plus, the compass module datasheet says it has pull-ups. That's a lot of pull-up's
It's almost an ultimate wedgy for i2c!
Hey Group, I too am working on a sure I2C compass. I did everything you all have suggested and no more than 10 seconds of compass readings and then the Ez-B Bluetooth starts blinking and then the Ez-B white led turns from solid lit to blinking and the board disconnects and the ARC locks up. I think it's my Mini ITX. I don't think it has the possessor power it needs. It most likely the same issue why I can't run 2 web cams as well. I will keep you all posted on my progress.
Sounds like the wires are too long. I2c is goofy. Some devices need short wires. Some need long. Some need the wires separated from positive and gnd. Others need additional resistors for pull-up.
First try shortening the wires. This thread will cove that if you read some of the posts I believe. If my memory works
Thanks DJ and all the others, Yeh I know and under stand from reading everybody's issues. My signal wires are 3/4" to 1" long with farite beads on them with 10k ohm pull up resistors from the I2C 5v to each of the signal wires. It might be an RF issue as well. My mini ITX ,the EZ-B, the wifi card, the compass module and the PC's bluetooth dongle are all on top of each other. I am going to try using my netbook to run the robot and see if that make a difference. My netbook has more power then the ITX I build for the robot thats onboard. I will let you all know on my findings. The easy thing to do now is to eliminate the onboard pc with an external one. I talked to you be for DJ about the dual web cam. My onboard ITX doesn't have the horsepower to run 2 web cams , but my netbook can. So my thinking is that it might the same for the the I2C compass module as well. Thanks again for all the help and DJ, your the greatest. Thank you
Hello all, This update on my progress. I disconnected the robots onboard pc and connected it to my external netbook. No change. The ARC and the EZ-B run fine until I insert any of the I2C controls. As soon as I do, 10 seconds of reading and the ARC locks up, The EZ-B Bluetooth stars flashing and the EZ-B whit light goes out completely. Then I have to ctrl/alt-del to close ARC. Remove the power to the EZ-B and restart everything and the same thing happens. Now I saw a post to put the 10K ohm resistors from signals to ground. Tried that too with the same outcome. I have also got power and ground from another location on the EZ-B. No change. I guess today I am going to Radio Shack to find a PC board to mount the compass module. As of now, I am using a proto board. That might be what is giving me the effects of longer wires. Any ways I will keep you all posted.