ftd2xx
ftd2xx copied to clipboard
eeRead() - OSError: exception: access violation reading 0x....
Describe the bug
While reading the EEPROM of a FT232RQ through eeRead()
an exception occurrs on some chips.
Traceback:
File "update_eeprom_config.py", line 34, in update_eeprom eeprom_data = device.eeRead()
File ".venv\\lib\\site-packages\\ftd2xx\\ftd2xx.py", line 609, in eeRead call_ft(\_ft.FT_EE_Read, self.handle, c.byref(progdata))
File ".venv\\lib\\site-packages\\ftd2xx\\ftd2xx.py", line 176, in call_ft status = function(\*args)
OSError: exception: access violation reading 0x0000028690BF93A5
To Reproduce Before calling eeRead() the following commands are called:
-
ftd2xx.listDevices()
-
ftd2xx.open()
-
getDeviceInfo()
Expected behavior return EEPROM data without exception
Desktop:
- OS: Windows
- OS Version: Windows 10
- Python Version: 3.10.2
- FTDI driver version: ftd2xx 1.3.8
Additional context
- the reported address is different each time
- about 50% of the FT232RQ chips we have, fail with this exception type, even when retrying a hundred times
- however, the affected chips are read and writable with FTDI FT_Prog Utility Tool
- once programmed with the FT_Prog tool, it is readable again through ftd2xx eeRead()
Any idea?