Just to help others out look here for the bitbanged approach that @UFD created
https://community.onion.io/topic/2312/i2c-detect-slave-method
Posts made by Joachim Lindborg
-
RE: I2C i2cdetect command not working on my Onion2+
-
RE: I2C Detect Slave Method?
@UFD Thanks for this "solution" (or more workaround). This was the only way I was able to get my Python code towards a keller pressure meter work. So I'm lifting this fabioulus post
I'm still unable to fix my related problem with write a byte wait 8ms then read 5 bytes without specifying register.
http://community.onion.io/topic/2674/access-to-i2c-low-level-calls-through-python-onioni2cthere seems also to still be a open drain issue
https://community.onion.io/topic/2603/omega2-i2c-bus-is-not-open-drainWhy hasn't this been fixed in Omega2+? I have scanned several posts in the forum that probably has problems that are related to this. I2C is a vital bus doing smart IoT stuff for real. So if Onion would like to be part of commercial projects I2C needs to have top priority.
Could any of the staff comment? -
Access to i2c low level calls through python onionI2C
I'm using a keller pressure meter PA-4LD and it has some tricks in it's i2c communication that isn't really like others.
Therefore I need to send a writeByte and wait a while before doing the read. That is not possible beacuse the readBytes() call is not able to wait and I cannot do a separate writeByte and then the readBytes() because readBytes resends the address which seems to confuse the device.
Is there any possibilty to extend onionI2C to have the same interface as smbus on rasperry etc and also the low level calls to be able to craft more special communication. https://www.kernel.org/doc/Documentation/i2c/smbus-protocol
I'm not very skilled in C and accessing the libs directly. Python is much easier