Author |
Topic |
|
mwmock
8 Posts |
Posted - 05 Aug 2003 : 11:02:35
|
I'm putting an I2C device on a custom board for BitsyX. Since the I2C bus is shared internally on BitsyX, I assume arbitration is via addressing to a specific device. What address should I use for an external I2C device to ensure there are no conflicts with the internal devices? |
|
akidder
1519 Posts |
Posted - 05 Aug 2003 : 12:42:10
|
Hi Michael. The reserved I2C device addresses for the BitsyX (and AGX) are 0x20-0x22 and 0xD0 0x68. Note that the software hooks for the I2C interface aren't currently exposed on the BitsyX.
Drop us a line with details about how you plan to use the I2C bus and we'll get you hooked up with what you need in the way of drivers.
Edited by akidder 2-oct-2006: Correct RTC I2C address from 0x68 to 0xD0. |
|
|
EllenP
2 Posts |
Posted - 03 Oct 2003 : 11:24:22
|
Are the software hooks exposed for AGX? Is there any CE OAL documentation? For right now, I'm specifically interested in I2C related info. |
|
|
akidder
1519 Posts |
Posted - 08 Oct 2003 : 13:38:57
|
We're in the process of creating an AGX build that will allow you to use the I2C bus. We'll post here when the build is available. |
|
|
akidder
1519 Posts |
Posted - 02 Mar 2004 : 15:52:17
|
We've gone through a couple builds that support the I2C driver since this post in October. BitsyX build 4.20.05 and upcoming AGX build 4.10.16 support the latest revision of the CE I2C driver, for which sample code is posted at topic 1402.
Subscribe to the AGX and Bitsy release history pages to be informed of new CE builds. |
|
|
pacsciinst
15 Posts |
Posted - 10 Mar 2005 : 19:23:06
|
I am interested in communicating with a device on the SMBus (I2C bus) in BitsyX. To be specific, I am trying to communicate with the LTC1760 Dual Smart Battery Charger. My application is being written in C#.
I found the example for writing to the RTC and thermometer (topic 1402) written in VC++, and the example CEPorts written in C#. I am in the process of porting the code from I2CTest to C#, and using CEPorts as a guide. However, the problem I see I will have is putting the data into the IIC_MESSAGE struct - it uses a pointer to the actual data. Any ideas on how I can implement this in C#? I am able to write data onto the I2C bus, but it's not formatted correctly (just a single byte.)
|
Edited by - pacsciinst on 10 Mar 2005 19:24:30 |
|
|
ctacke
877 Posts |
Posted - 11 Mar 2005 : 09:11:35
|
Interesting that you should ask. I'm currently in the process of writing a C# wrapper for the Philips PCA9555 I2C device. You're right that creating the IIC_MESSAGE struct is not a straightforward implementation due to the way the CF marshaler works. It requires manually dealing with the data pieces in a byte array as well as handling unmanaged memory allocation and deallocation. When I'm finished I'll post the result in the forums. |
|
|
pacsciinst
15 Posts |
Posted - 11 Mar 2005 : 10:04:45
|
I'm going to implement the IIC_MESSAGE struct using C# unsafe code - that will be my interim solution. I'm looking forward to seeing your post.
Thanks! |
|
|
akidder
1519 Posts |
Posted - 16 Mar 2005 : 15:32:39
|
We've found that there is something going on in the marshaller that is giving fits to the I2C driver as it's currently written. We're going to open a support ticket for that issue, but in the meantime, we're going to look at restructuring the I2C driver to get better performance. Stay tuned! |
|
|
pacsciinst
15 Posts |
Posted - 17 Mar 2005 : 19:33:38
|
Thanks for the update. Can you give me a timeline on this issue? The SMBus driver portion of my software project can potentially cause me to miss the required completion date. Hopefully, we can find a solution before this happens. |
|
|
akidder
1519 Posts |
Posted - 17 Mar 2005 : 21:05:37
|
We've got a beta build already done. Email us your contact info and we'll get it to you so you can test it alongside us. |
|
|
|
Topic |
|