element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Sensors
  • Technologies
  • More
Sensors
Sensor Forum AHT10 - I2C problem
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Sensors to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 41 replies
  • Subscribers 337 subscribers
  • Views 9300 views
  • Users 0 members are here
  • sensors
  • AHT10
Related

AHT10 - I2C problem

msimon
msimon over 2 years ago

I just bought AHT10 humidity and temperature sensor. I have seen that it supports I2C and it is cheap so I didn't think thoroughly and bought two. I wanted to try them then I encounter a problem that only a single AHT10 can be connected to single I2C bus. I thought it is related to static address but it is worse (breakout board also showing two address but no details in the datasheet). The datasheet says that "Only a single AHT10 can be connected to the I2C bus and no other I2C devices can be connected." It sounds like traditional serial communication like RS232 not I2C. 

Is it normal to advertise it as an I2C device? and I also wonder what is the technical issue preventing to connect other devices with different address. Did you have any experience similar to this on any other sensor?

  • Sign in to reply
  • Cancel

Top Replies

  • beacon_dave
    beacon_dave over 2 years ago +4
    Have you tried using the AHT10 with another device on the same I²C bus to see what happens ? It may be that it doesn't observe the stop condition so doesn't release itself from the host and continues…
  • BigG
    BigG over 2 years ago in reply to beacon_dave +4
    Both datasheets (AHT10 & AHT20) show that the sensor operates on microAmps, so powering by GPIO is possible too...
  • michaelkellett
    michaelkellett over 2 years ago +3
    I had a quick look at the data sheet. They don't appear to offer an explanation for why it doesn't work with other devices. I've used several other I2C humidity sensors and lots of I2C devices of other…
Parents
  • shabaz
    shabaz over 2 years ago

    Just curious, what is the scenario where they will both be deployed connected to the same microcontroller?
    Ordinarily, the distance cannot be too great with I2C (i.e. i2C not normally used for local/remote sensing, unless remote is something inside the same enclosure (usually). Do you intend to have the sensors connected over a long distance?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to shabaz
    shabaz said:
    Ordinarily, the distance cannot be too great with I2C (i.e. i2C not normally used for local/remote sensing, unless remote is something inside the same enclosure (usually).

    I've seen some pretty long VGA cables in my time... Slight smile

    DDC uses I²C to access the EDID data in the display device to report it back to the source device.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • shabaz
    shabaz over 2 years ago in reply to beacon_dave

    There are quite long lengths within large equipment chassis' too, since it's quite common for health/alarms etc from cards plugged into a motherboard, although they may use separate I2C bus segments in some situations. VGA etc is a bit of an exception, since it's only intended for one device, and the cable is designed for it (plus little will go wrong if someone extends it, because either they will get a display or they won't). Whereas for the more general use, I2C needs to configure chips, take measurements, etc.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • jc2048
    jc2048 over 2 years ago in reply to beacon_dave

    "DDC uses I²C to access the EDID data..."

    But not at the standard clock rate of 400kHz. They slowed it to about a tenth of that.

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to shabaz
    shabaz said:
    VGA etc is a bit of an exception, since it's only intended for one device

    Perhaps not strictly true as about 20 years ago VESA (and Philips) had already considered 'Internal Display Dependent Devices' and 'External Display Dependent Devices' to share the same I²C bus.

    The spec lists stuff like:

    • Smart Battery, Charger, Selector
    • Audio Processor
    • PAL/NTSC Decoder
    • DDC2B Monitor(memory) 

    and:

    • Touch Screen, Light pen or Remote Control Track Ball
    • Speaker / Microphone
    • Home Network IF (power line modem)
    • Luminance Probe or Colorimeter
    • IR keyboard and remote control pad (shared IR channel)

    As it progressed into DVI and then HDMI you then had HDCP handshaking on the bus as well.

    I've unfortunately encountered display equipment with loop through ports which can result in additional devices appearing on the bus often with the same address. 

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to jc2048

    I seem to recall that the early days DDC used the VSync clock, so was very slow in comparison.

    Isn't Standard Mode clocking 100kHz and Fast Mode is 400kHz ? Or is the new standard now fast mode ? Upside down

    I seem to recall that there is also a Slow Mode (at around 10kHz ?) which would probably have been more appropriate for EDID.

    With the introduction of bidirectional mode though I think 100kHz was standardised with the option to use 400kHz.

    It looks like the I²C peripheral SAM D21 in the MKR WAN can't be set below 100kHz which is unfortunate as the AHT10 has no minimum clock speed.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • beacon_dave
    beacon_dave over 2 years ago in reply to jc2048

    I seem to recall that the early days DDC used the VSync clock, so was very slow in comparison.

    Isn't Standard Mode clocking 100kHz and Fast Mode is 400kHz ? Or is the new standard now fast mode ? Upside down

    I seem to recall that there is also a Slow Mode (at around 10kHz ?) which would probably have been more appropriate for EDID.

    With the introduction of bidirectional mode though I think 100kHz was standardised with the option to use 400kHz.

    It looks like the I²C peripheral SAM D21 in the MKR WAN can't be set below 100kHz which is unfortunate as the AHT10 has no minimum clock speed.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
Children
  • jc2048
    jc2048 over 2 years ago in reply to beacon_dave

    Yes, you're right. The original I2C standard was 100kHz, but I got so used to working at 400kHz that I always misremember that as being the standard.

    The only reason I know anything about DDC/EDID is that I once designed a box to sit in place of a monitor, to take VGA, digitise it, and process it with an FPGA to drive LED screen modules that the company I worked for made. Long time ago, though. All the PC graphic cards we had at the time were driving the EDID somewhere around 30 or 40kHz. I don't know what the VESA standard said - we didn't want to pay thousands of dollars to join and find out - we just wanted it to work with real PCs that it might be connected to (the EDID, at our pseudo-monitor end, was just an EEPROM powered from the cable with appropriate data in it, so it was a very minor part of the system).

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • Cancel
  • beacon_dave
    beacon_dave over 2 years ago in reply to jc2048

    That sounds an interesting project as about 15 years ago was after something similar as I wanted to be able to grab part of a VGA display and simultaneously display it on a large LED matrix.

    The EDID data causes an interesting issue with some FPGA designs as the source is supposed to be able to read the EDID data even when the display device is powered off. Hence why the source supplies  a limited +5v to power the EDID memory device in the display.

    Even within the VESA standard documentation it keeps referring back to the I²C standard for more info on timing.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube