FTDI Community

Please login or register.

Login with username, password and session length.
Advanced Search  

News:

Welcome to the FTDI Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ FTDI Support


New Bridgetek Community is now open

Please note that we have created the Bridgetek Community to discuss all Bridgetek products e.g. EVE, MCU.

Please follow this link and create a new user account to get started.

Bridgetek Community

Author Topic: Performance difference in libft4222's windows and linux drivers  (Read 690 times)

krish_iyer

  • Newbie
  • *
  • Posts: 3
    • View Profile

I have been interfacing an IMU(BNO080) with an umft4222ev board. I am interfacing it over I2C protocol and wrote exact code for windows and linux. The windows program works perfectly fine but the linux program couldn't read on time(within 10ms of data available) due to which my sensor resets. I feel the I2C master write function is missing some clock cycles or resolution. Is there any workaround for this?

Details of the device: 'FT4222 A' Chip version: 42220400, LibFT4222 version: 01040409
« Last Edit: June 24, 2020, 07:01:11 AM by krish_iyer »
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 484
    • View Profile
Re: Performance difference in libft4222's windows and linux drivers
« Reply #1 on: June 26, 2020, 05:03:32 PM »

Hello,

You are using a very old revision of silicon.
Please test with the latest revision of FT4222H silicon which is Rev D.

You can find the chip errata here:

FT4222H Errata Technical Note
FT4222H Rev.D Technical Note

Also ensure that you are using the latest versions of LibFT4222 found here:

https://www.ftdichip.com/Products/ICs/FT4222H.html

Best Regards,
FTDI Community
Logged

krish_iyer

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Performance difference in libft4222's windows and linux drivers
« Reply #2 on: June 27, 2020, 04:20:57 PM »

Ok, here's the issue.  imprint on my chip ends with 'D' hence I am actually using revision 'D' of the silicon. In windows with "FT prog" software, my chip version is detected as 'D' but in linux it's 'A'. Also, I am using latest Llibft4222(linux) version.

I am using Ubuntu 18.04 on 64bit machine.

am I missing something?
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 484
    • View Profile
Re: Performance difference in libft4222's windows and linux drivers
« Reply #3 on: July 01, 2020, 04:55:20 PM »

Hello,

In Linux, 'FT4222 A' is the interface 0 description of device. Not the chip code of the device.
See code output below:

Code: [Select]
cc get-version.c -lft4222 -WI,-path,/usr/local/lib
sudo./a.out

Device 0: 'FT4222 A'
  Chip version: 42220400, LibFT4222 version: 01040409

I have requested support from our R&D engineers to see if there are any known issues with LibFT4222 which could cause issues like you are seeing. Please expect significant delays in the process.

Best Regards,
FTDI Community
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 484
    • View Profile
Re: Performance difference in libft4222's windows and linux drivers
« Reply #4 on: July 06, 2020, 04:34:38 PM »

Hello,

We have measured i2c write/read on Windows and Linux platform.

The test consists of:
1.            Read / Write 10 bytes
2.            Using different frequency 500Kbps/1000Kbps/3400Kbps

The difference is very small:

Linux i2c write                                 
500Kbps  1000Kbps   3400Kbps
305us      206us        250us

Windows i2c write                                         
500Kbps  1000Kbps   3400Kbps
309us      170us        250us

Linux i2c read                                   
500Kbps  1000Kbps   3400Kbps
818us      760us        577us

Windows i2c read                                           
500Kbps  1000Kbps  3400Kbps
712us      660us       652us

So this shouldn't cause an issue of data within 10ms of data available.

You are also in contact with our support team via email. Please work with the support person and post any resolution here to help other community users.

Best Regards,
FTDI Community
Logged