I2C library call silently changes HKLM registry entry

Toradex CE library V2.0_20170524
While trying to diagnose RTC problems (a different question that is still in need of an answer), I ran into the problem that the I2c_Init(“I2C1”) call changes the HKLM\Drivers\Builtin\I2C1\Dll entry from “_i2cdriver.dll” to “i2cdriver.dll”. This seems contrary to the release notes issue “30702: Changed I2C driver to library” which seems to indicate that this setting is not recommended for use. This setting, “i2cdriver.dll”, if saved, will also keep the RTCSync utility from communicating with the RTC, so seems to be the incorrect setting.
This setting is changed and stays changed, so will alter the module operation if the registry is saved for any reason.
Unfortunately, I2C library will not function when the I2C driver DLL setting is disabled “_i2cdriver.DLL” as suggested. The call to I2c_Open() will fail.
So when the I2C driver DLL is disabled and the I2C library is used, the I2C calls will fail. Then you change another setting in the registry and save the registry and reboot the module, the calls to the I2C library will now work. But things that have been updated to not use the I2C driver DLL (like RTCSync) will stop working.

So in itself, this is a problem.
Another question is are there any other registry settings that are silently changed by library functions that effect the operation of the VF50 modules?!?!


We have updated our library to reflect the Changed I2C driver to library on 1.5 B4 image . This library not yet released, we are planning to release it soon till that you can use the preliminary version of that library for your application. This will not create edit “_i2cdriver.DLL” registry.
Let us know if you face any issue on that.