I need advice from propeller/i2c experts :)
I have a propeller circut I am working on using the propeller serial servo controller. I have my custom firmware almost all written. but not tested. all my items have arrived. but my question is this.. I am using 4 blinkm devices, and they will be daisy chained off the same data/clock lines. do I need a pull up on each one. or just where it exits the propeller board?
the chain will be a total of about 2-3 feet long.. with perhaps 2 blinkm's at the 1 foot and then 2 foot mark..
please advise [noparse]:)[/noparse]
the chain will be a total of about 2-3 feet long.. with perhaps 2 blinkm's at the 1 foot and then 2 foot mark..
please advise [noparse]:)[/noparse]
Comments
2-3 feet is about the longest you'd want to run an I2C bus...
It's really not meant to go out on cables, but a couple feet would probably be OK.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
My Prop Products:· http://www.rayslogic.com/Propeller/Products/Products.htm
the more capacitance you have and that slows down the rise/fall times through the 10k pullups...
There are a couple different I2C communication speeds and probably the slow speed would work with long cables...
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
My Prop Products:· http://www.rayslogic.com/Propeller/Products/Products.htm
So you should be able to get 5 ft out of it without too much trouble
Although a single 10k ohm is normally used, I've seen designs down to about 2k ohm for the pullup. I can't see why distributed resistances wouldn't work if you needed to improve noise robustness
In the Arduino world (5 volt) they are pretty fond of 4.7K instead of 10K. I have used both values and see no difference. But one each on the SDA and SCL is all that is needed.
2-3 feet is "by the book" .. I was on an OOPIC forum where guys there regularly approached 10 feet, but it had to in an electricly VERY quiet environment withe carefully selected cables. @todd ... 30 feet !!?? you must be in an electricly DEAD ZONE!
cheers ... BBR
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
cheers ... brian riley, n1bq, underhill center, vermont
The Shoppe at Wulfden
www.wulfden.org/TheShoppe/
www.wulfden.org/TheShoppe/prop/ - Propeller Products
www.wulfden.org/TheShoppe/k107/ - Serial LCD Display Gear
Post Edited (Todd Chapman) : 5/28/2010 9:20:19 PM GMT
1. Reduce the clock rate. Since the Prop I2C stack is in software this is trivial and if you don't need the bandwidth, neatly solves the problem.
2. Run each high frequency line as half of a twisted pair, twisted around a ground wire. This cancels out most EMI. CAT5 works nicely for this. Under no circumstance ever run two high frequency signals on the two wires of a single twisted pair. For even better performance, use individually shielded instrumentation cable such as Belden 8723.
There are also schemes afloat for optically isolating and buffering the signal, but there you're getting into a lot of work.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm
My Prop Products:· http://www.rayslogic.com/Propeller/Products/Products.htm