I²C (Inter-Integrated Circuit) is a multi-drop serial bus invented by Philips (now NXP) for communication between ICs on the same PCB, i.e. short distance.

learn more… | top users | synonyms

1
vote
1answer
43 views

SWD and i2C hardware layer differences

Both I2C and SWD are two-wire protocols. I wonder what are the main differences of the hardware layer of these protocols and what are the pros/cons of each one? It's also interesting that the maximum ...
6
votes
6answers
736 views

Sending I2C reliabily over Cat5 cables

I am considering implmenting an home automation system around my Raspberry Pi but I found the price and space requirement of inserting a Pi every place some control is required too much but the Cat5e ...
0
votes
2answers
88 views

How to avoid short circuit when connecting a microcontroller and device using I2C bus?

I am attempting to connect an 8051-compatible microcontroller to an accelerometer using the I2C bus. Both devices operate at the same voltage, 3.3v. However, I am failing to understand something: ...
0
votes
0answers
56 views

What LCD is this and how to connect it? [on hold]

A friend of mine asked me which LCD is this and how can he connect it? It has 7 chars plus a battery symbol and a few other words.
1
vote
1answer
81 views

Can I2C bus be left open circuit?

While trying to make a TV tuner radio like I saw here I got myself a I2C PLL Tuner from an old TV and powered it up without connecting I2C bus lines to the circuit. Not even to the pull-up resistors. ...
0
votes
1answer
24 views

help with QT1070

I am using AT42QT1070 touch IC in comms mode with I2C communication.I have used 10k pullups with SDA and SCL line and 47k pullup with CHANGE line(active low) as mentioned in datasheet. The CHANGE ...
3
votes
2answers
447 views

What do hardware address pins do?

I have been delving deep into digital logic and am trying to understand some memory architecture basics. I have started looking at data sheets to get a grasp on some real-world components and noticed ...
2
votes
5answers
104 views

Maximum I2C Bus Length?

What is the maximum length of cable that could be used to connect two I2C devices (I2C master-> I2C slave)? Yes, I know that I2C is really designed for intra-board communication. I have been tasked ...
0
votes
0answers
23 views

NXP i2c temperature probe locking up

I have an issue with an NXP SE95 temperature probe that has been working just fine up until now on other systems. At some point, either on boot or soon after, the probe will have some sort of meltdown ...
2
votes
2answers
50 views

Unpowered devices on I2C/SPI bus

I'm trying to develop a board that includes I2C and SPI devices that are unpowered for the majority of the time to save power. I found that for these particular devices (Honeywell HSC pressure ...
0
votes
1answer
58 views

Problems with I2C on PIC18F25K22

I've been googling for about two weeks now and I still can't seem to get my I2C working. I've used this (what seems to be complete) tutorial. I followed the Master Write and Master Read examples to ...
2
votes
1answer
66 views

Problem using DS1337 - RTC

I am trying to use a edited version of the library given at this link. I basically changed some of the included file and some of the changed function of the wire.h library. Though I am not a hardcore ...
0
votes
0answers
49 views

I2C Reading START STOP but nothing else

I am working on getting a LED driver (pca9635 - datasheet ) to work with a PIC32. Below is my code ...
2
votes
2answers
58 views

I2C General Call Confusion

I'm trying to understand how the I2C "General Call Address" is supposed to work for implementing in a microcontroller. According to the I2C Specification (PDF), Section 3.1.13: When bit B is a ...
0
votes
1answer
31 views

I2C access on M41T00CAP RTC device

I am trying to access "M41T00CAP RTC" device through I2C. there are other I2C devices also, which I am able to access perfectly. but in case of RTC device , I am not able to read the register ...
1
vote
1answer
86 views

Relationship between clock speed and I2C bus speed

I have understood how the I2C protocol works. The I2C protocol specifies three modes, namely 100kbps (original speed), 400kbps (fast mode) and 3.4 Mbps (high speed mode). One thing I didn't understand ...
1
vote
0answers
49 views

MCP23017s and arduino problems

I'm not native English speaker, so forgive me my bads. Ok. Here's the deal. In my Arduino UNO I need more outputs and inputs. I bought 3 MCP23017s. One of them for receive states from 8 ...
1
vote
1answer
121 views

What is purpose of zener diodes in this circuit?

I am reading the I2C tutorial: https://learn.sparkfun.com/tutorials/i2c/all Why wouldn't it work without the zener diodes? What functionality are they adding? They are just there to keep the voltage ...
1
vote
1answer
100 views

Bit-banging I2C question

When bit-banging I2C using 2 PIO lines do these lines still need to be pulled high? Obviously using a dedicated I2C bus the lines must be pulled high as the pins are open-drain outputs but PIO pins ...
2
votes
1answer
63 views

bitbanging i2c problem with ACK from slave

I am trying to implement bit-banging i2c to communicate between an atmega128A's GPIO and an SHT21 (I2C bus was used for some other devices). The first task is to send a write sequence to the SHT21. ...
4
votes
3answers
291 views

How is the clock frequency established between master and slave in I2C protocol?

This is a follow-up question to What happens if I omit the pullup resistors on I2C lines? In a digital wall clock I designed (using the DS1307 RTC and the ATmega328 MCU), I accidentally omitted the ...
0
votes
2answers
85 views

Select channel from multiplexer to show temperature values in c programming

I have question regarding selecting channel from multiplexer. I'm trying to receive some temperature reading from the two sensors which shared the same address and while I'm using one sensor, it can ...
9
votes
6answers
1k views

What happens if I omit the pullup resistors on I2C lines?

Just now I realized that the I2C data and clock lines (SDA and SCL) must have pullup resistors. Well, I've built a couple of clocks using the DS1307 RTC (see datasheet) according to the schematic ...
0
votes
1answer
73 views

Where to find I2C register information for MAX21000+?

The datasheet for the MAX21000+ IC contains a table listing all of the registers and their default values but doesn't include any description of each of the register bits. I assume there must be a ...
2
votes
1answer
80 views

HD44780 initialization for 4-bit mode?

I have successfully implemented the I2C protocol necessary to communicate with the device, but I am absolutely stumped on the initialization sequence to get it to work. I have tried countless ...
3
votes
1answer
68 views

I2C communication with AVR - how to let the lines “float”?

I am trying to implement I2C using an AVR controller without the designated internal TWI registers. The I2C protocol requires that the Master device drives the SDA and SCL lines to begin with in ...
2
votes
3answers
95 views

Do you always need a GPIO expansion chip when using i2c?

SUMMARY: I'm trying to learn the basics of understanding how to wire up a simple circuit using the i2c. I'm wanting to build just a simple project involving an LED and a push button with my raspberry ...
2
votes
1answer
62 views

Is it possible to use a digital pressure sensor with a ATtiny4313?

I have a pressure sensor as follows, tested and works great with the Arduino Uno: Output is digital through SCL/SDA..... Will I be able to use this directly with the ATtiny4313 coding with Arduino ...
1
vote
1answer
129 views

Interrupt Service Routines and I2c together

I would like to ask a question that has been on my head for a while I have done coding small ISR's for pic and AVR controllers and i have successfully tested them on board.And i have just learned ...
0
votes
3answers
48 views

LTC2485 I2C Data Format

I am trying to understand the I2C data format of a 24 bits ACD (LTC2485). The data sheet says it returns 4 bytes (32 bits integer), but is unclear as to where the 24 bits I seek are located. Here is ...
2
votes
2answers
110 views

How to ensure data integrity when using I2C with a PIC

When master device transfers a piece of data, slave will acknowledge back once the data has been received by slave. So it's not possible to ensure the data integrity by only polling ACK. I ...
1
vote
3answers
78 views

I2C Level translation

In our current design, we have two devices which communicate with each other using I2C. But their I2C logic levels are different, so we need to use a level translation? Can I use a simple level ...
0
votes
0answers
111 views

How to connect Arduino Uno to PIC18F4620 using I2C

Anyone have an idea about how to connect Arduino Uno to PIC18F4620, the following circuit illustrates what I mean: I want to use Arduino as a master and 2 PIC18F4620 microcontrollers as slaves, the ...
0
votes
4answers
179 views

How to find out how many sensor you can add to a I2C or SPI protocol?

I am having problems to find out exactly how to connect sensors to make a project. The main issue is that I cannot find a device that can drive enough analog sensor, so I need to use either SPI or ...
1
vote
1answer
97 views

I2C bus and Arduino Uno

I'm not really sure if this is the correct place but here we go. I'm in the process of creating a robot for Uni and the hardest part for me is the hardware side of it, specifically the electronics. ...
0
votes
0answers
226 views

PCA9685 (12-bit PWM I2C LED controller) and Arduino

I tried to get a PCA9685 to work at the moment I am using an Arduino with this library to test it but I can't get it to work. I have the Arduino Uno rv3 I wired the scl of the Arduino with the scl of ...
0
votes
1answer
87 views

STM32F207 I2C errors

I am learning embedded development on the STM3220G-EVAL board with the STM32F207 microcontroller. I am testing the I2C interface by interfacing the two I2C2 and I2C3 modules on the same chip and ...
1
vote
0answers
77 views

problem with CPLD and 24C16 EEPROM interface

Can any one say if it is possible to implement this code in ATMEL 24C16 EEPROM device for write the data. While I am implementing this with CPLD xc9572 I/O Pin declared as sda, scl there won't have ...
2
votes
2answers
60 views

Low profile i2c level shifting solution

I have a system that involves two boards and i2c communication between them. One of the boards uses 2.8V for i/o (including i2c) and the other 3.3. The 3.3V board is always the master and the 2.8V ...
4
votes
1answer
52 views

Wiring multi node devices with i2c

I wanted to confirm that my approach is correct for wiring multiple devices together communicating over I2C when each node is utilizing DC\DC converters. Should I be including a ground connection over ...
2
votes
3answers
129 views

Changing I2C address

I need to connect two Si114x light sensors to one I2C bus. I don't have them physically yet. Every sensor has the same I2C address, so connecting them with the default settings would mean a conflict. ...
1
vote
2answers
93 views

Can I2C Master Stretch the clock?

The I2C manual by NXP allows Clock Stretching (holding SCL low) by slave devices in order to have the master wait for them to process data, interrupts and the like. This is all fine and well, although ...
0
votes
1answer
84 views

MCP23017 Failing After Several Minutes?

I just bought an MCP23017 port expander and hooked it up to my an Arduino card. I used the sample code to turn on four LEDs when the program launches. Works great, except that after several minutes ...
0
votes
0answers
51 views

Using PIC16F707 and Raspberry Pi for Touchscreen display

I've been asked to make a static touch screen for a store display with a very low budget. Due to the cost limits and large number of 'buttons' required, I've considered the PIC16F707 since it has 32 ...
0
votes
1answer
65 views

Function setting on SPLC780D LCD

I'm drawing a bit of a blank with this. I have a 1602A-1 16x2 LCD screen hooked up to an i2c port expander chip. I'm using the screen in 4 bit mode so I have DB4-7 hooked up to GPIO 0-3 respectively. ...
1
vote
1answer
100 views

I2C slave not pulling down SDA data line for the full clock cycle

I am communicating with some slave devices via multiple busses, however even though they are all the same device (http://www.invensense.com/mems/gyro/mpu3050.html) and all receive the same ...
1
vote
3answers
89 views

What does overlaping indicate in i2c timing diagram

I am studying how i2c devices works...and I have downloaded a power point presentation from Google, I have understood almost every basic concept, like, how the start and end of the transfer occur, ...
0
votes
1answer
233 views

Why does last data of I2C DMA transfer break?

I used DMA to transfer I2C data, but I always lose the last data. hardware configuration is shown below: ...
2
votes
2answers
453 views

Contacting InvenSense MPU9150 auxiliary magnetometer

I am trying to reach InvenSense MPU9150 magnetometer using master mode disabled and bypass mode enabled. These values are written to and then confirmed from the MPU9150 : ...
1
vote
1answer
69 views

How to determine I2C Master timing parameters

I am relatively new to I2C, but I have done much reading on the topic and I am confused as to the timing parameters necessary when designing an I2C Master. I know of this chart from the manual on ...