Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8774329
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T18:32:16+00:00 2026-06-13T18:32:16+00:00

I have been performing timing measurements on an application that communicates to a device

  • 0

I have been performing timing measurements on an application that communicates to a device by means of an I2C interface. I have discovered that single I2C read and writes are taking around 450us to execute. I have verified that the I2C interface is running at 400KHz, so I would expect I2C operations on a single byte to take around 170us. Could there be an overhead of over 250us to use the I2C drivers within android? Does anyone know of ways to improve this speed.

Thanks in advance.

Marc.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T18:32:18+00:00Added an answer on June 13, 2026 at 6:32 pm

    I guess your expected delay comes from the time/bit or something like that. But when you send data to the I2C from a system with an OS (Android or Linux or others), you have to go through all the layers to get to the actual I2C. And most likely, this driver is in the Kernel. Since it’s a hardware ressource, there is also some form of gating to prevent several piece of code to use the I2C at the same time. Also, sometimes for some devices, the system might not send the data immediately but it could be postponed a bit. It might not be your case though.

    Also, for some hardware devices, when you send data it does not go through a regular data write but it is sent through other means that might be more efficient for big chunks but less for small chunks costing you some latency to start with. An audio stream on the I2C is a good example of that. In the system, it’s often a data buffer and a DMA channel setup to transfer the data to I2C at the proper rate to get the audio you want. It’s very efficient for the audio streaming purpose but not great to send just a few bytes.

    So, I’m not surprised of your measurement.

    In my mind, if you want to improve it, you will have to go through the pain of writing your own driver. Then, you become platform dependent. If it’s a custom system, it’s fine but if it’s a consumer application that must run on any tablet, it’s a not viable.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Have been trying to encrypt an xml file to a string so that I
I have been using a tidy little routine that I found here to calculate
I have to write an application that is essentially a proxy server to handle
We have an ASP.Net application that provides administrators to work with and perform operations
I have an application that is retrieving data from Facebook. Users authorize the application
I have an application that does complex calculations for members. Each member can have
There have been some questions on SO recently on ADL that have got me
I have been searching this since yesterday and still nothing. From all that researching
I've got a series of SVG files that have been created in inkscape (or
I have written a web application that interacts with Google calendar (adds/edits/updates events). You

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.