Maker Pro
Maker Pro

Serial number rom ic, with spi or i2c interface?

A

Adrian Hjelmslund

Hi group.

I'm searching for a "serial number ic" which is a rom device with a
pre-programmed unique serial number.

Till now I've only found the Dallas DS2401/2411
(http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3711) but it's with a 1-wire
interface and I'm not so eager to use that.

Can anyone recommend a device that have SPI or I2C interface and with ROM'ed
serial number?

Thanks in advance
Adrian
 
M

Mike Harrison

If you can't find one... a cheapo 8-pin microcontroller from Microchip,
Atmel, etc.

There are also some eeproms with write-protect block locking facilities.

Note that most of these type of devices are fairly easily circumventable so should not be relied
upon for secure applications.
 
Mike said:
Note that most of these type of devices are fairly easily circumventable so should not be relied
upon for secure applications.

With a micro you can implement a reasonably secure challenge-response
system. The weak point then probably becomes the chip's code protection
mechanism.
 
M

Mike Harrison

With a micro you can implement a reasonably secure challenge-response
system. The weak point then probably becomes the chip's code protection
mechanism.
Agreed.
This would be more secure than most of the EEprom type devices which use password type access
control, or write-once/password-write devices that can simply be replaced or emulated.
 
A

Adrian Hjelmslund

Thanks guys :)
Anyway, my problem is not security, but a simple matter of lazyness :eek:)
Most important for me is that it's preprogrammed, so I dont have to do
anything other than mount the device and read the id number.
 
M

martin griffith

Thanks guys :)
Anyway, my problem is not security, but a simple matter of lazyness :eek:)
Most important for me is that it's preprogrammed, so I dont have to do
anything other than mount the device and read the id number.
they ponyprog eeprom writer software has an auto-increment serial
number function


martin
 
P

petrus bitbyter

Adrian Hjelmslund said:
Hi group.

I'm searching for a "serial number ic" which is a rom device with a
pre-programmed unique serial number.

Till now I've only found the Dallas DS2401/2411
(http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3711) but it's with a
1-wire
interface and I'm not so eager to use that.

Can anyone recommend a device that have SPI or I2C interface and with
ROM'ed
serial number?

Thanks in advance
Adrian

FAIK Dallas is unique. But what's the problem with that 1-wire interface?
It's as easy as :) or as difficult as :( SPI or I2C. Only if you have
absolutely no pin left for it and you need to connect it using an existing
SPI- or I2C-interface you can put a micromicro in between. So an eight or
six pins Microchip or AVR. Of course it makes it little easier for the bad
guys to fiddle with it but you can easily find this out if you need to.

petrus bitbyter
 
P

Paul Burke

petrus said:
what's the problem with that 1-wire interface?
It's as easy as :) or as difficult as :( SPI or I2C.

It's an absolute pig if you have multitasking or interrupts, because
unlike SPI and I2C, you can't just hold levels in mid- process. So he'll
have to read it before that bit of the program starts.

Paul Burke
 
Paul said:
It's an absolute pig if you have multitasking or interrupts, because
unlike SPI and I2C, you can't just hold levels in mid- process. So he'll
have to read it before that bit of the program starts.

I've used the 2401 in a number of projects. What I usually do is to
read it as part of the startup sequence and store the contents into RAM
before interrupts are enabled.
 
Anyway, my problem is not security, but a simple matter of lazyness :eek:)
Most important for me is that it's preprogrammed, so I dont have to do
anything other than mount the device and read the id number.

If the serial number is not "special" then maybe you can implement it
in on-chip EEPROM. When you power the unit up for the first time at the
factory, you can either have the tester enter a number on the local
interface, or use an external or internal [pseudo]random source to set
the serial#.
 
A

Anthony Fremont

Paul Burke said:
It's an absolute pig if you have multitasking or interrupts, because
unlike SPI and I2C, you can't just hold levels in mid- process. So he'll
have to read it before that bit of the program starts.

Well.......that statement requires a bit more qualification. There are
places you can't pause due to timing or power constraints, but you can
pause between the bit sequences for days if you like.
 
A

Adrian Hjelmslund

Thanks guys, you've been very helpfull.

I've been thinking bit more and I think I have to stick to the 1-wire
solution eventhough I'm not too happy about it.

Problem is that it is timing dependent and that I don't have other 1-wire
devices, so it will feel bit messy to implement it just because of a serial
number, but the alternatives aren't much better I must say.

I came to the conclusion that Bobs solution about reading during the
initialisation process, before enabling other interrupts or timer, is the
solution that suits me best.

Thanks for advices and inspiration :)
Adrian
 
Top