Does ncs 2.5.0 implement the suggested workaround for https://docs.nordicsemi.com/bundle/errata_nRF52840_Rev3/page/ERR/nRF52840/Rev3/latest/anomaly_840_219.html ?
If not, will it be implemeted later?
Does ncs 2.5.0 implement the suggested workaround for https://docs.nordicsemi.com/bundle/errata_nRF52840_Rev3/page/ERR/nRF52840/Rev3/latest/anomaly_840_219.html ?
If not, will it be implemeted later?
Hi,
Unfortunately, this is not implemented in the nrfx_twim drivers and should be overridden in the application space.
I will suggest internally that this should be handled for the driver setup on nRF52840.
Kind regards,
Håkon
Do you have a formula or register value available for setting the TWIM I2C frequency to e.g. 380 kHz in the FREQUENCY register (to make some headroom)?
We are using a https://www.ti.com/product/LDC1612 which seems to be very sensitive when being close to 400 kHz
The anomaly workaround works most of the times, but on some very few boards, 390 kHz is still too fast, but we do not want to go as far as down to 250 kHz
BTW: our I2C bus pullups are 3K3
Hi,
The baud-rate approximation posted here will also work for I2C:
RE: UART BAUDRATE register values
If the current value of .FREQUENCY=0x06200000 is generating a too high frequency, then the next step would be lowering the value to 0x06100000 (or lower) for instance.
Are you using nrfx_twim directly? or are you using the "i2c" zephyr driver?
Kind regards,
Håkon
We have one product that uses zephyr, but the product we have problems with uses nRF5 SDK and nrfx_twim.
But should probably be fixed in nrfx drivers anyhow
We used the formula to set to 370 kHz, with register value 0x05EB8000UL, which works fine
Hi,
We have one product that uses zephyr, but the product we have problems with uses nRF5 SDK and nrfx_twim.
Thanks for clarifying. For nRF5, you can override this by accessing the register directly after initializing.
But should probably be fixed in nrfx drivers anyhow
I agree, I reported this back to the nrfx team just before the holiday period.
We used the formula to set to 370 kHz, with register value 0x05EB8000UL, which works fine
Great to hear! This also cleared up any issues/incompatibilities with the external sensor as well?
Kind regards,
Håkon