PDA

View Full Version : Unique ID



Humanoido
12-29-2009, 11:49 AM
Using SPIN, it is possible to to CHIPVER to get the Propeller's version number.



V := chipver


However, is there a unique ID from chip to chip, and a method for recall?
(like a serial number)

James Long
12-29-2009, 11:58 AM
Hey,

That is a useful question........I too would like to know this.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Phil Pilgrim (PhiPi)
12-29-2009, 12:15 PM
To my knowledge, there's nothing in the chip that's designed for that purpose. But you might be able to take advantage of process variations (e.g. the internal RC oscillator frequency) to concoct something. But, even then, neither uniqueness nor repeatability would be guaranteed. A more reliable approach at the system level would be to program a serial number into the EEPROM or to include a one-wire silicon serial number from Maxim.

-Phil

Peter Jakacki
12-29-2009, 12:16 PM
No, the Prop uses a mask rom which means it's exactly the same for every prop and you can't change it plus a unique ID would complicate the process and add real costs to the price of the chip. Very very few chips have unique IDs embedded in them at the factory.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*

James Long
12-29-2009, 12:28 PM
Well it was a great idea......

I can't have everything in a Propeller that I want, but it definitely has enough..

I guess I'll serialize the EEprom.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Humanoido
12-29-2009, 02:53 PM
There is no eeprom connected to this circuit and I don't want to add any more components. However, I like the idea of programming a serial number into the prop chip. Is there a way to burn in the number, and keep the number stored inside when the power is removed?

Now I wish the Prop chip had a tiny flash memory inside somewhere... Just think of the possibilities!

Post Edited (humanoido) : 12/29/2009 7:01:45 AM GMT

James Long
12-29-2009, 02:58 PM
humanoido said...
There is no eeprom connected to this circuit and I don't want to add any more components. However, I like the idea of programming a serial number into the prop chip. Is there a way to burn in the number, and keep the number stored inside when the power is removed?


Nope,

The propeller memory (volatile) is emptied when powered off. You would need to have the ID stored in the propeller eeprom itself. The problem with that, is the normal security issue. It could be read with a savvy person with a I2C logging system.

If your not using an eeprom, how is the propeller loaded for operation?

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Humanoido
12-29-2009, 03:05 PM
James Long said...
The propeller memory (volatile) is emptied when powered off. You would need to have the ID stored in the propeller eeprom itself. The problem with that, is the normal security issue. It could be read with a savvy person with a I2C logging system.
The circuit has no eeprom external to the prop chip. Security is not an issue. It's ok if anyone reads the unique ID. The goal is to establish a unique ID, with repeatability, without adding any external parts.

James Long
12-29-2009, 03:38 PM
humanoido said...

James Long said...
The propeller memory (volatile) is emptied when powered off. You would need to have the ID stored in the propeller eeprom itself. The problem with that, is the normal security issue. It could be read with a savvy person with a I2C logging system.
The circuit has no eeprom external to the prop chip. Security is not an issue. It's ok if anyone reads the unique ID. The goal is to establish a unique ID, with repeatability, without adding any external parts.


I see....this prop must be being feed it's program from another prop (you being the super computer type of guy).

I'm not sure how you could do that, unless you use some of the I/O to give it an ID like an eeprom would (or something else on an I2C bus).

Would that work? Like using P0-P3 to address the propellers? Then the program could let each chip decide where it is in the matrix.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Post Edited (James Long) : 12/29/2009 7:44:23 AM GMT

Rayman
12-29-2009, 09:50 PM
The FTDI chip has a unique number, if you want USB too...

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
My Prop Info&Apps: ·http://www.rayslogic.com/propeller/propeller.htm

Leon
12-29-2009, 09:57 PM
Dallas Semi/Maxim have a 1-Wire ID chip.

Leon

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM

Humanoido
12-30-2009, 12:11 AM
James Long said...
If your not using an eeprom, how is the propeller loaded for operation?
It loads the program directly from the prop tool into RAM using the RAM option on the software tool.

Ok, so far we have some basic ideas.

* load a unique ID into EEPROM
* Use prop pins to read an external device
* Wire an external serial ID chip to the circuit
* Read a unique USB circuit for each chip

* Another idea, a self incrementing serializing code that changes each time it loads into a chip on the array. The loading sequence maintains the chip position in the array while the increment determines the serial number ID.

So... we think there is absolutely nothing inside the propeller chip that can be prodded to become unique and serve as a serializing derived number with repeatability...

James Long
12-30-2009, 01:35 AM
humanoido said...

James Long said...
If your not using an eeprom, how is the propeller loaded for operation?
It loads the program directly from the prop tool into RAM using the RAM option on the software tool.

Ok, so far we have some basic ideas.

* load a unique ID into EEPROM
* Use prop pins to read an external device
* Wire an external serial ID chip to the circuit
* Read a unique USB circuit for each chip

* Another idea, a self incrementing serializing code that changes each time it loads into a chip on the array. The loading sequence maintains the chip position in the array while the increment determines the serial number ID.

So... we think there is absolutely nothing inside the propeller chip that can be prodded to become unique and serve as a serializing derived number with repeatability...


And *take 4 pins with resistors to provide a 4 bit address for the propeller using I/O.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Humanoido
12-30-2009, 12:08 PM
Thanks James. Updating the Unique ID list.

Ways to Develop a Unique ID for the Propeller Chip
* take 4 pins with resistors to provide a 4 bit address for the propeller using I/O
* load a unique ID into EEPROM
* Use prop pins to read an external device
* Wire an external serial ID chip to the circuit
* Read a unique USB circuit for each chip
* Self incrementing serializing code that changes each time it loads into a chip on the array. The loading sequence maintains the chip position in the array while the increment determines the serial number ID.

So... we think there is absolutely nothing inside the propeller chip that can be prodded to become unique and serve as a serializing derived number with repeatability...??????????

Phil Pilgrim (PhiPi)
12-30-2009, 12:22 PM
humanoido said...
So... we think there is absolutely nothing inside the propeller chip that can be prodded to become unique and serve as a serializing derived number with repeatability...??????????

That's been answered conclusively here more than once. Wishing it otherwise isn't going to change anything.

-Phil

Humanoido
12-30-2009, 12:48 PM
@ Phil:

I still have hope that there remains some method to access an internal feature towards the goal of uniqueness. I still think there is some process inside the Propeller chip that has some degree of uniqueness, even if it's a randomness, signal orientation, rc uniqueness, or a result from a variation in substrate.

There are always variations in manufacturing processes. If not, then there would be no need to test chips. Even the internal RC circuit should vary. If it did not, then Parallax would not post a range of possible clock frequencies when engaging the internal circuit.

I think this may be one key to solving this chip's "internal" challenge. It's internal and it can vary from chip to chip based on the resistor capacitance combination. I think this is covered in the two Propeller books as I recall. I am sure this effect can be measured from chip to chip.

Phil Pilgrim (PhiPi)
12-30-2009, 01:09 PM
I had already raised the "process variation" approach above but discredited it in the same post it since "neither uniqueness nor repeatability would be guaranteed." Nothing has changed since I made that assertion.

-Phil

Peter Jakacki
12-30-2009, 01:15 PM
h, this is not a "challenge", it's just a load of *&^%!

Thinking something is fine but it is of no use unless it is based upon something factual and can be applied. Thinking that there is some process inside the Prop is quite different from knowing if there might be but variations in tolerances is hardly a way of trying to classify a degree of uniqueness. The RC oscillator is never a measure of "uniqueness", it's just something that varies with temperature, voltage, and process but is never constant. There is no unique process, it is just a sliver of silicon, that's all and silicon can have unique IDs embedded in them but this is usually a special (expensive) process. Sure, pay Parallax enough (I don't mind if you do) and they will even embed Flash in there for you too. I love reading Sci-Fi novels where they can wish and want and somehow come up with something impossible but unfortunately we have to live and breathe in the real world where things don't happen that way.

For networks I have software that generate a random number on each node during the enumeration process (a bit like a MAC address) and the "master" successively approximates addresses until it gets a single response after which it assigns a sequential ID (bit like a IP address). As there is always a remote chance that two or more devices have the same random address there is also a resolution process where those conflicting nodes generate new random addresses. I have also used DALLAS single-wire ID chips as well and even used a similar approach to assigning local addresses with them. Failing that there is always the DIP switch approach, sure n certain.

So, please separate fact from fairy-tale and research it yourself so that you have some basis for your "beliefs".

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*

Nick McClick
12-30-2009, 02:20 PM
You could also do an R/C decay - different cap values would change the decay time. It wouldn't be secure and the address space would be somewhat limited (maybe 50 different address?), but it would only take one pin.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Forums RSS Feed! (http://www.nicholasm.com/proprss/)

Gadget Gangster - Share your Electronic Projects (http://www.gadgetgangster.com)

Humanoido
12-30-2009, 02:25 PM
Peter Jakacki said...
The RC oscillator is never a measure of "uniqueness", it's just something that varies with temperature, voltage, and process but is never constant.
What values did you see returned from the internal oscillator in your circuit, and holding temperature and voltage as constants, what was the median error in repeatability?

James Long
12-30-2009, 02:33 PM
Nick McClick said...
You could also do an R/C decay - different cap values would change the decay time. It wouldn't be secure and the address space would be somewhat limited (maybe 50 different address?), but it would only take one pin.


Nick,

That is a great idea.......didn't think of that one. Saves 3 pins from my scenario.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

heater
12-30-2009, 03:29 PM
How about using positional information to generate a unique ID at start up?

Consider a linear array of Props linked via some serial connection, Prop to Prop to Prop...horizontally.

1) Each Prop sends a "who am I" ID request to the neighbour on its right and then waits for a reply.
2) Each Prop gets a reply from its right hand neighbour which it uses as its own ID in future communications.
3) Each Prop increments it's own ID number and uses the result to return as an ID in reply to the "who am I" request from it's left neighbour.
4) The most right hand Prop has no neighbour to the right. So it times out the "who am I" request and uses zero as it's own ID.

This can be extended to a 2 dimensional grid easily. Three dimensions and hyper cubes get progressively more tricky.

Problem comes with rings, spheres, toroids etc where there are no "edges" and everyone has neighbours in all directions. Looks like you have to create some artificial "edges" as reference, points, lines, planes etc in that case.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.

James Long
12-30-2009, 03:39 PM
heater said...
How about using positional information to generate a unique ID at start up?

Consider a linear array of Props linked via some serial connection, Prop to Prop to Prop...horizontally.

1) Each Prop sends a "who am I" ID request to the neighbour on its right and then waits for a reply.
2) Each Prop gets a reply from its right hand neighbour which it uses as its own ID in future communications.
3) Each Prop increments it's own ID number and uses the result to return as an ID in reply to the "who am I" request from it's left neighbour.
4) The most right hand Prop has no neighbour to the right. So it times out the "who am I" request and uses zero as it's own ID.

This can be extended to a 2 dimensional grid easily. Three dimensions and hyper cubes get progressively more tricky.

Problem comes with rings, spheres, toroids etc where there are no "edges" and everyone has neighbours in all directions. Looks like you have to create some artificial "edges" as reference, points, lines, planes etc in that case.


Well....I would say the first prop with a program would constitute an edge. So all edges would align there. Considering one of the props has to start the cascade.

I have a problem with some of this. How are the props going to power up. Since they must receive a program from somewhere.......where will they receive it?

You can not use one eeprom.......too many talking at once (no program internally to tell them not too). They can't ask their neighbor.....it may not have a program yet.

I would think this will need a cascade power up sequence as well. Each prop would turn on it's neighbor then give him/her the program.

I come up with the worst problems.......... I wouldn't want to have to manually power up the system every time it was shut down, or needed a new program.

(sorry....didn't mean to ask an slightly off topic question.......but I would like to know).

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

heater
12-30-2009, 03:53 PM
I'm not really sure where all this is going James but there have been discussions here about booting up arrays of Props. Generally I think this comes down to having:
1) A master Prop that can reset and program all the others or
2) Chaining Props so they can reset and program their neighbours.

Given the chain loading it would be possible to put a unique ID into the binary images prior to booting your neighbour with it. Sort of combine the ID generation process with the booting.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.

James Long
12-30-2009, 04:06 PM
heater said...
I'm not really sure where all this is going James but there have been discussions here about booting up arrays of Props. Generally I think this comes down to having:
1) A master Prop that can reset and program all the others or
2) Chaining Props so they can reset and program their neighbours.

Given the chain loading it would be possible to put a unique ID into the binary images prior to booting your neighbour with it. Sort of combine the ID generation process with the booting.


That is what I was getting at.

If it is a cascade power up (which I think would be needed), each Propeller could be programmed with a unique ID. I wouldn't think you could program all of them at once from one. This is due to the capacitance of the traces(single bus...all RESn tied together). The closest will ack before the others do (if they ack...I really don't know....never read into it).

I guess you could have a master tied to each other prop reset using an I/O pin for each one (RESn), but that would use a bunch of I/O. I would think the chain would be better to prevent a lot of I/O wasted.

Just rambling on the whole idea.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Peter Jakacki
12-30-2009, 04:08 PM
humanoido said...

Peter Jakacki said...
The RC oscillator is never a measure of "uniqueness", it's just something that varies with temperature, voltage, and process but is never constant.
What values did you see returned from the internal oscillator in your circuit, and holding temperature and voltage as constants, what was the median error in repeatability?


Research this yourself if you want to know. I don't care about this particular RC oscillator's characteristics, it's an RC oscillator, the datasheet says what it says.

@Nick: For a smaller number of nodes it is possible to use an RC network (yes, I've done that too). But caps vary widely with temperature and age so you need a good margin and different values of resistors, not a good thing for production though. There is even the I2C SAA1064 which using one address pin selects 4 devices.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*

Peter Jakacki
12-30-2009, 04:14 PM
James Long said...

heater said...
I'm not really sure where all this is going James but there have been discussions here about booting up arrays of Props. Generally I think this comes down to having:
1) A master Prop that can reset and program all the others or
2) Chaining Props so they can reset and program their neighbours.

Given the chain loading it would be possible to put a unique ID into the binary images prior to booting your neighbour with it. Sort of combine the ID generation process with the booting.


That is what I was getting at.

If it is a cascade power up (which I think would be needed), each Propeller could be programmed with a unique ID. I wouldn't think you could program all of them at once from one. This is due to the capacitance of the traces(single bus...all RESn tied together). The closest will ack before the others do (if they ack...I really don't know....never read into it).

I guess you could have a master tied to each other prop reset using an I/O pin for each one (RESn), but that would use a bunch of I/O. I would think the chain would be better to prevent a lot of I/O wasted.

Just rambling on the whole idea.

James L


Way way back I posted an idea for a chain loader that as each Prop loaded up it would use a location in eeprom for it's address and then increment that for the next prop. The last prop on the line would have a pullup resistor on it's control line and know to zero that location instead of incrementing it. Each control normally has a pulldown on it to prevent the next prop from booting until enabled. The prop's all share the same eeprom.

RESET IN------->[reset PROP #1 control]------->[reset PROP #2 control]------->[reset PROP #3 control]------->[reset PROP #4 control]-----pullup resistor

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
*Peter*

James Long
12-30-2009, 04:22 PM
Peter Jakacki said...

Way way back I posted an idea for a chain loader that as each Prop loaded up it would use a location in eeprom for it's address and then increment that for the next prop. The last prop on the line would have a pullup resistor on it's control line and know to zero that location instead of incrementing it. Each control normally has a pulldown on it to prevent the next prop from booting until enabled. The prop's all share the same eeprom.

RESET IN------->[reset PROP #1 control]------->[reset PROP #2 control]------->[reset PROP #3 control]------->[reset PROP #4 control]-----pullup resistor


Basically what I said, just a different way to implement it. All the props couldn't load at the same time.

You could basically do the same thing prop to prop, but would take more code.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

hippy
12-30-2009, 09:13 PM
If there were hooks in the PropTool you could run a plug-in to place an incrementing 32-bit ID / timecode into the Eeprom image and that could be poked at ( or moved to ) a convenient location to form a return value for myId := GetMyId(). The number would change on every download but would be permanent if burnt to Eeprom.

The PropTool doesn't provide such hooks, but you can jump through hoops to achieve it, or maybe use one of the third-party compilers and loaders and insert a step in the middle.

Ask nicely and one of the third-party developers may include a named 'constant' which gives a different value every time it runs.

Post Edited (hippy) : 12/30/2009 1:18:29 PM GMT

CannibalRobotics
12-30-2009, 11:02 PM
I'd be really happy with a versioning capability within the PropTool that would deploy a single revision number accross all code files as a comment and·available in the code as a prop CONstant.
It would automatically increment·all files·for each save or archive.

·http://forums.parallax.com/images/smilies/yeah.gif


▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Signature space for rent!
Send $1 to CannibalRobotics.com.

mctrivia
12-31-2009, 01:07 PM
you can always use the id object in the obex: obex.parallax.com/objects/410/ (http://obex.parallax.com/objects/410/)

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder. (http://forums.parallax.com/showthread.php?p=848975)

James Long
12-31-2009, 01:37 PM
mctrivia said...
you can always use the id object in the obex: obex.parallax.com/objects/410/ (http://obex.parallax.com/objects/410/)


MC,

That only works for one propeller on an eeprom, with multiples loading the same code from one eeprom, that wouldn't work.

James L

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
James L
Partner/Designer
Lil Brother SMT Assembly Services (http://www.lil-brother.com)

Are you addicted to technology or Micro-controllers..... then checkout the forums at Savage Circuits (http://www.savagecircuits.com). Learn to build your own Gizmos!

Humanoido
12-31-2009, 01:45 PM
mctrivia said...
you can always use the id object in the obex: obex.parallax.com/objects/410/
Excellent find. In reading the comments of the random number generator, established by Chip Gracey, this is actually the first time that I have seen a "truly random" random number generator.
Chip Gracey said...
This object sets up a cog's CTRA PLL to run at the main clock's frequency. It then uses a pseudo-random sequencer to modulate the PLL's target phase. The PLL responds by speeding up and slowing down in a an endless effort to lock. This results in very unpredictable frequency jitter which is fed back into the sequencer to keep the bit salad tossing. The final output is a truly-random 32-bit unbiased value that is fully updated every ~100us, with new bits rotated in every ~3us. This value can be sampled by your application whenever a random number is needed.

mctrivia
12-31-2009, 02:15 PM
to boot n devices from 1 eeprom you need to do 1 of the following:

1) dedicate pins for ID
1.A) binary input requires quite a few pins(log n/log 2)
1.B) analog input using RC timing effect. With properly chosen RC components several(x) symbols can be defined and accuraetly measured reducing pin count needed( 2*log n/log x)
1.C) pwm input. through the use of a 555 timer you can provide a pwm signal that is uniqe to every device. requires only 1 pin for most smaller applications but do to tolerances of components more may be needed(log n/log x)

2) Serial Boot. For devices that do not reboot often you can use 1 address of memory as an id number. the first prop boots from eeprom and gets its id increments the number and then resets the next prop. This will cause the eeprom to wear out after about 1,000,000/n boots and will take an extremely long time to boot up for large values of n. requires only 1 pin. also id of each device will not necessarily be the same each time.

3) Broken Ring Bus. By having the first device receive a low or high on its RX at all times it can determine it is the first device. Shortly after startup each device(except first) will receive its id number from the previous increment it and then transmit it to the next. Requires only 2 pins on each device, faster then a full serial boot, and id numbers will always be the same each time.

4) Random Generated ID. If each prop needs a uniqe id but it does not need to be the same each time you can use real random object to calculate a random id. if you use an id of large enough size then no 2 props will likely have the same id. if you must have absolute sertenty of different ids serial communication technics can be used on scl,sda to check integrity of ids. I would recommend using an id at least log n/0.075 bits long. Requires no extra pins.

did I miss any?

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder. (http://forums.parallax.com/showthread.php?p=848975)

mctrivia
12-31-2009, 02:18 PM
humanoido i wrote it a while back when I had need of unique ids. Unfotunetly obex search engine sucks and if you type in "id" you will find it a long way down a long list of results instead of at the top where a 100% match to the title should be.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board now in. $21.99 has backlight driver and touch sensitive decoder. (http://forums.parallax.com/showthread.php?p=848975)

Humanoido
01-01-2010, 12:35 PM
Excellent! We now have numerous ID choices for varied circuit/interface/operating designs with multiple Propeller chips. Thanks much to everyone that put thought into this post. Of course, any new techniques or ideas, please continue to post.

Humanoido
01-03-2010, 02:57 PM
This thread is related to one of the postings and provided for reference only.
HOW TO GET THE SERIAL NUMBER (AND MORE) FROM AN FTDI CHIP
http://forums.parallax.com/showthread.php?p=863510