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.

Reply via email to