Hi, I do have one. It was designed to run on STM32F103s where the I2C peripheral has some errata limitations. I have used it extensively on many projects without any issues. Although I used it only for "simple" transfers of just a few bytes, I don't see any reason it wouldn't work in any other scenario. Apart from the low performance, of course.
It is properly documented, and generally uses my own HAL. So hardware calls are abstracted and self-explanatory. Two issues: 1. It needs some work to get into NuttX. It has a very different structure, it's not just styling that needs to be changed. I believe however that it is a good basis. I am also willing to help with testing this on my targets. 2. License. I am only using it on some of my small personal projects, so I just didn't pay much attention to licencing. It loosely originates from an open source library. I think it was the arduino-compatible library of Maple (https://www.leaflabs.com/maple), but I am not sure. Surely I have re-written most of it, to the point that I don't know whether there is actually any original code in there, but again it may need to be checked. In any case, it may serve as a basis for freshly written NuttX code. If this is of any interest to you, please tell me and I can provide the code. Στις Δευ, 18 Ιαν 2021 στις 7:29 μ.μ., ο/η Matias N. <mat...@imap.cc> έγραψε: > Hi, > > by any chance does anyone have a software I2C implementation laying around > (but tested) that could be submitted to NuttX? If the basis is there I can > do any required adaptation. > > Thanks, > Matias