Hi Rob, I tested the "no delay" speed setting on a 12F683 running on the 8MHz internal oscillator and connected to a 128x32 I2C OLED display and it worked just fine. I'll try faster (crystals) at some point, as well as the 32MHz internal oscillator of the 12F1840 and 16F1825 that I know I have.
Regards, Mike On Saturday, February 28, 2026 at 11:18:12 AM UTC-5 Rob CJ wrote: > Hi Mike, > > Seems like a good addtion. I updated the library with your suggestion. If > you are OK with it, I will add it to Jallib. > > I also added some extra info about the bus speeds. > > Kind regards, > > Rob > > ------------------------------ > *Van:* 'Mike' via jallib <[email protected]> > *Verzonden:* zaterdag 28 februari 2026 16:56 > *Aan:* jallib <[email protected]> > *Onderwerp:* [jallib] Re: I2C software library request > > The code should have been this: > > procedure _i2c_wait() is > > if i2c_bus_speed == 255 then > return > elsif _i2c_bus_speed == 10 then > ; i2c_1MHz > delay_1us() > return > elsif _i2c_bus_speed == 4 then > ; i2c_400kHz > delay_2us() > return > else > ; i2c_100kHz > delay_5us() > return > end if > > end procedure > > On Saturday, February 28, 2026 at 10:51:01 AM UTC-5 Mike wrote: > > The current I2C software library supports three speeds: 1MHz, 400kHz, and > 100kHz. But many aftermarket I2C devices can go much faster than that, > such as the small OLED displays. > > Long ago I modified my local copy of the library to support an "unlimited" > speed and I'm asking that this option be added to jallib. See below. > > Regards, > Mike > > procedure _i2c_wait() is > > if i2c_bus_speed == 255 then > return > if _i2c_bus_speed == 10 then > ; i2c_1MHz > delay_1us() > return > elsif _i2c_bus_speed == 4 then > ; i2c_400kHz > delay_2us() > return > else > ; i2c_100kHz > delay_5us() > return > end if > > end procedure > > -- > You received this message because you are subscribed to the Google Groups > "jallib" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion visit > https://groups.google.com/d/msgid/jallib/5a402fef-1c22-4228-8d65-9caf569c4346n%40googlegroups.com > > <https://groups.google.com/d/msgid/jallib/5a402fef-1c22-4228-8d65-9caf569c4346n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "jallib" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/jallib/5c386650-0eb8-4b9d-ba00-333ca4fee698n%40googlegroups.com.
