i2c

How can you flush a write using a file descriptor?

It turns out this whole misunderstanding of the open() versus fopen() stems from a buggy I2C driver in the Linux 2.6.14 kernel on an ARM. Backporting a working bit bashed driver solved the root cause of the problem I was trying to address here. I'm trying to figure out an issue with a serial device driver in Linux (I2C). It appear...

Do you recommend TTL, SPI or I2C with SunSPOT

I am starting to try to interface with some external components (Skyetek M1 Mini or M1 RFID scanner) than supports the following protocols TTL, SPI or I2C. I am wondering which one of these routes you would recommend. The app that is running on the spot needs alot of processing time (a continuously running gesture matching algorithm) and...

reading / writing fram using I2C on Linux

I'm trying to read/write to a FM24CL64-GTR FRAM chip that is connected over a I2C bus on address 0b 1010 011. When I'm trying to write 3 bytes (data address 2 bytes, + data one byte), I get a kernel message ([12406.360000] i2c-adapter i2c-0: sendbytes: NAK bailout.), as well as the write returns != 3. See code below: #include <linux/i...

How do I write a new Linux driver for an i2c device?

I have a usb device with some i2c control functions and I would like to add a userspace API for twiddling those bits. How do I add i2c support to my device's existing driver? ...

I2C ISR and Interrupts

Platform - ARM9 I have a third party device connected via I2C to the ARM9. My problem is the I2C read/write is getting in a twist. It appears the IRQ line is asserted but never de-asserted when there is data to read. The read fails as the third-party device NACKs the address packet. So any subsequent write fails. I am wondering if my i...

PIC I2C slave ack on data

Hi! I am looking into the I2C protocol for PIC16F88X. What I would like to do, is to enable an I2C slave to either ACK or NACK depending on the data received on the I2C. The PIC can ACK or NACK on the I2C address sent on the line, but from what I've read it will always ACK on the subsequent received bytes. Is that correct? In the foll...

How do I open an file in AVR Studio?

Hello, there: I have two ATMEGA88 (master and slave) working correctly by sending a test[] via I2C. Working enviroment: AVR Studio using C. What I need is to allow the master be able to send a indicated file such as mydoc.txt to the slave. Should I be using another application to build the UI? How can I connect a different IDE and m...

I2C write acknowledge polling in Linux Kernel

The lackluster response here made me wonder this. I've been saddled with a device (Analog Devices 525x) that (from the data sheet, pg 16): disables the I2C interface during the internal [EEPROM] write cycle. That doesn't seem fair, as in "I'm getting off the couch now, so don't use it for a while because I let one rip in the s...

Making a pointer that points to two bytes

Hello. I'm a complete novice in everything except maybe breathing, so sorry if I'm not being clear, but here goes: I have a function in C which writes bytes to a circuit via an I2C bus, and in the header file it looks like this: BOOL WINAPI JidaI2CWrite(HJIDA hJida, DWORD dwType, BYTE bAddr, LPBYTE pBytes, DWORD dwLen); hJida: Bo...

Regarding help for i2c-Dual Uart Driver

Hi As i have completed the xr20M1172 driver.And i am able to access as a uart very well. But one problem i am facing is i am not able to access both uart at a time with i2c communication. i am running both uarts at a time using i2c-communication.Its giving following bug,and i think deadlock is happening because following message is pr...

Regarding interrupt based communication

We have a simple architecture : Main chip (arm9 based) PIC controller The PIC communicates to ARM via an interrupt based I2C communication protocol for transfer of data. Inside the interrupt we signal a task which reads the data from the I2C layer (bus). In case the data is limited we usually won't have much problem to read the data...

How to retrieve data from an i2c device over usb in linux

Hi All, I have a temperature sensor, which is connected using an USB-I2C adapter (http://www.robot-electronics.co.uk/htm/usb%5Fi2c%5Ftech.htm) I attached this device to my linux computer (suse10). I typed dmesg and saw usb 3-3: new full speed USB device using ohci_hcd and address 10 usb 3-3: new device found, idVendor=0403, idProduct...

i2c on silicon image c8051f32x (using USBXpress)

I have the I2C (SMBus) working properly in this uC and have a VB GUI which can communicate over USB (using USBXpress) and do I2C transactions from the uC to a separate IC. The problem is that I am having the uC poll a register on the IC every 1s. When I do an asynchronous GUI I2C transaction, every once in a while, I believe it collides ...

Is forcing I2C communication safe?

Hi. For a project I'm working on I have to talk to a multi-function chip via I2C. I can do this from linux user-space via the I2C /dev/i2c-1 interface. However, It seems that a driver is talking to the same chip at the same time. This results in my I2C_SLAVE accesses to fail with An errno-value of EBUSY. Well - I can override this via ...

Embedded Linux PowerPC: How to access of dts file from an i2c detect function

I am working on an embedded linux kernel project for a 83xx powerpc using a 2.6.24 kernel and having some issues extracting information out of the open firmware DTS file for a i2c device driver. For a memory mapped device I would add normally add entry in the DTS file that specified the address / IRQ parameters etc. Then in the associat...

HID input report queues on C8051F320

Hi, it seems that as soon as data is ready for the host (such as when I use WriteFile to send a command to the HID in which I tell the HID to give back some data such as the port value) and the in packet ready bit is set, the host reads it (as confirmed by another USB interrupt) before ReadFile ever is called. ReadFile is later used to p...

When to best implement a I2C driver module in Linux

I am currently dealing with two devices connected to the I2C bus within an embedded system running Linux. I am using an exisiting driver for the first device, a camera. For the second device, I have successfully implemented a userspace program with which I can communicate with the second device. So far, both devices seem to coexist happi...

C/C++-Library for EEPROM wear-leveling under Linux?

Hi, does anybody know of a library for storing data securely in an 8k-EEPROM, which is attached over the I2C-interface? I am especially interested in wear-leveling as I have a write-intensive application where the EEPROM should/must be used as a NVRAM for often-chaning measurement data. Thanks in advance, Martin ...

Probe problem when writing a I2C device driver...

Hi all, I am a newbie in writing linux device driver, forgive me if anything stupid a asked and my poor English^^ I am trying to write a driver for a touch panel, which communicate with CPU via I2C. I tried to add a device driver into linux platform, and the register was success, I mean the driver was loaded, but the probe function did...

Help monitoring battery status through SMBus

I am currenlty trying to monitor my battery status through SMBus. I have a battery along with a contorl board which constantly outputs the battery status. This control board is then connected to my mother board through a I2C-USB module. I need to write some program to recognize the SMBus connection and transmit the battery status to the ...