I2C bus

Kn1ght L0rd kn1ghtl0rd.01 at gmail.com
Wed Jul 18 13:06:19 UTC 2007


Ok that sounds good.  One of the things we were going to try was to build a
nonvolitile memory circuit that we could attach to the openPCD or the
openPICC using the I2C bus, or connect them both at the same time and have
the PCD send all read data to the memory and have the PICC look for data in
the memory address and pull that data out and broadcast it.  Or just output
data to the memory connected to only the PCD and then be able to "unplug"
the circuit board and plug it into the PICC at a different time to broadcast
the data stored on the memory.  I am just trying to build the cross
communication functionality first though so this is a good step in getting
the firmware on both units to talk to each other.  I guess my next question
is what include file should I look in to get the syntax and functions for
the serial debug interface?  Is this just a straight serial connection, I
mean could we knock out the I2C theory and just use the serial debug
interface as long as we are using serial EEPROM?  Also if I wanted to use
the unit without connection to a PC how would you suggest I power the
unit/units?

I will give you a basic overview of what we are trying to do.  Make a
standalone unit with the openPCD and openPICC(when we get one) that work
together to transfer read data from the PCD to the PICC at read time.  The
scenario being you walk by someone with a RFID card of some type and as you
walk by you read the card and the PCD passes that information to the PICC in
which it broadcasts that data so you have essentially cloned the card
without any transaction taking place other than the PCD/card transaction.
We thought about using an additional memory circuit for modularity and also
have the possibility to maybe work in an LCD screen and a keypad so say as
you are walking by that person then have multiple RFID cards on them, you
can cycle through the data using the LCD and touch pad and select which card
you wish to emulate at that time.  We also thought it would be a nice module
to offer to the project as a whole so people can have some extra memory to
play with on the unit(s).

Since out initial discussion Milosch, I have read a couple books about
embedded systems and embedded systems programming and I am starting to
really understand how all this stuff works at the low level.  One of the
other things I wanted to do was to have the firmware brute force protocols
by handling the carrier modulation programmatically until it gets a hit back
for the different tags.  I was trying to look for the code for handling the
carrier modulation and I wasn't able to see anything.  Granted I am still
getting used to the whole embedded programming syntax and model so it is
very possible I am just overlooking it.  Can you point me in the right
direction?

Back to the I2C bus for a second.  I looked through the datasheet a little
bit yesterday and did a search for I2C in the text and it didn't return
anything.  Do you know what section it would be in?  I noticed the datasheet
is quite big and it would take me a little while to scan all that data.  I
mean if I have to then obviously I will.  Our goal for the conference is to
get this theory working because I think it would be a great proof of concept
and also some really good data to contribute back to the project which is
ultimatly my personal goal.  I want to really know how these devices work so
I can be a productive member of the development team so I am working really
hard at all this.  Any help that can be provided would be awesome.  Thanks.

On 7/17/07, Milosch Meriac <meriac at bitmanufaktur.de> wrote:
>
> Dear Dave,
>
> Kn1ght L0rd:
> > Is the I2C defined in the include files for use?  I was looking through
> > the source files and found a few things but not very much on the bus
> > addresses and registers.  I also didn't see any functions defined for
> > sending/recieving data on each bus so I am just verifying that
> > information.  Thanks.
>
> I2C is not implemented yet, but pretty straightforward to implement if
> you don't need DMA -just refer the AT91SAM7 datasheet.
> Anyway I suggest to connect OpenPCD/OpenPICC by using the serial debug
> terminal - just connect RX to TX of OpenPCD to TX and RX of OpenPICC
> (like a null modem cable). This allows you to use the existing debug
> functions to transmit and receive data between two devices. You can set
> the baud rate to a much higher value in this case.
>
> Milosch
> --
> Bitmanufaktur :: Schwedter Strasse 23 :: 10119 Berlin
> Fon +49 (0)30 4172 5006 :: Fax +49 (0)30 4172 5054
> meriac at bitmanufaktur.de :: http://bitmanufaktur.de
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.openpcd.org/pipermail/openpcd-devel/attachments/20070718/f7a74c34/attachment.html


More information about the openpcd-devel mailing list