POV-Ray : Newsgroups : povray.off-topic : Bar codes Server Time
5 Sep 2024 11:22:40 EDT (-0400)
  Bar codes (Message 1 to 10 of 53)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Invisible
Subject: Bar codes
Date: 13 Oct 2009 11:23:33
Message: <4ad49b75$1@news.povray.org>
Bar codes. They're little bunches of black lines which can be read by a 
scanner. Right?

Hahaha, well... it turns out there are actually a miriad of different 
kinds. And they're ALL COMPLETELY DIFFERENT to each other.

I just did a cursory scan of my office. Here's what I found:

   Fruit bottle: EAN-13 barcode.
   Can of Dust-off: UPC-A barcode.
   Diary: EAN-13 barcode.
   SIIG USB-serial box: UPC-A barcode plus one of unknown type.
   StarTech USB-serial box: UPC-A barcode.
   Imation CD-R box: UPC-A barcode.
   Maxtor drive: 5 barcodes of unknown type.
   Integral RAM box: One barcode (from Insight UK) of unknown type.
   TNT shipping box: Two barcodes of unknown type.
   Gobel, Escher, Bach: EAN-13 barcode.
   Integral USB HD box: EAN-13 barcode.
   Other USB HD box: EAN-13 barcode.
   HP laptop adaptor: 3 barcodes of unknown type.

It's actually surprisingly hard to find barcodes. Usually you purposely 
ignore them, so when you *want* to see them they're actually quite hard 
to find.

It's great fun. EAN-13 is apparently an "extension" of UPC-A, and yet 
it's COMPLETELY DIFFERENT. The encoding is entirely unrelated. Of 
course, EAN-13 and UPC-A only encode digits. (And these digits encode a 
manufacturer ID and product ID.) Other codes can encode various 
additional characters. In particular, Code39 and Code128 allow text as 
well as digits.

The impressive thing is, as far as I can tell, almost all barcode 
scanners support almost all kinds of barcodes. Even though each coding 
scheme is utterly unrelated to any of the others. God only knows how 
this is physically possible...


Post a reply to this message

From: Mike Raiford
Subject: Re: Bar codes
Date: 13 Oct 2009 13:33:01
Message: <4ad4b9cd$1@news.povray.org>
On 10/13/2009 10:23 AM, Invisible wrote:

> scheme is utterly unrelated to any of the others. God only knows how
> this is physically possible...

usually using a diode laser, a rotating mirror and a photo sensor, which 
turns photons into electrons, where the circuitry then interprets the 
variations of electron flow into digital signals, which is then 
processed by a processor, running software that can interpret the 
encoding schemes of many different types of barcodes. It then sends 
signals (either by RS-232 or USB protocol) to the computer, a device 
driver reads the incoming signal, and interprets the signals as a series 
of characters, output to the desired application.
-- 
~Mike


Post a reply to this message

From: Gyscos
Subject: Re: Bar codes
Date: 13 Oct 2009 17:15:00
Message: <web.4ad4ed16e03ab628b46bd10b0@news.povray.org>
Isn't there some bars at the beginning or the end that indicate the encoding ?


Post a reply to this message

From: clipka
Subject: Re: Bar codes
Date: 13 Oct 2009 21:20:03
Message: <4ad52743@news.povray.org>
Invisible schrieb:

> The impressive thing is, as far as I can tell, almost all barcode 
> scanners support almost all kinds of barcodes. Even though each coding 
> scheme is utterly unrelated to any of the others. God only knows how 
> this is physically possible...

Not much magic in there.

Barcodes are designed to have a lot of redundancy, so that reading 
errors can be detected.

So a barcode scanner just checks whether the code it just read makes 
sense (i.e. check digits match etc.) when interpreted as any of the 
codes it supports.

Conflicts seldom occur /because/ the barcodes are so dissimilar. Still, 
it is a good idea to configure the scanner to recognize only barcodes 
you actually expect to use, especially if you expect to work with 
barcodes that may be smudged or otherwise messed up.


Post a reply to this message

From: clipka
Subject: Re: Bar codes
Date: 13 Oct 2009 21:43:35
Message: <4ad52cc7$1@news.povray.org>
Gyscos schrieb:
> Isn't there some bars at the beginning or the end that indicate the encoding ?

No, not really. Though many barcodes include some "frame" to (a) 
identify the side at which the barcode starts, and/or (b) calibrate for 
the size of the barcode; such frames can often double-act to prevent 
misinterpreting other barcode types.

For instance, Code39 IIRC always starts and ends with the bars it uses 
for the Asterisk (*).

EAN-13, on the other hand, uses one pair of simple bars at the 
beginning, end, and in the middle, respectively, to calibrate for size, 
while the reading direction can unambiguously be inferred from any 
"character" of the barcode "payload".

But these "frames" are only standardized for each individual barcode 
type, and there is no universal scheme to identify the type. All you can 
do is test for which types of barcode this particular specimen reads 
without error.


Post a reply to this message

From: scott
Subject: Re: Bar codes
Date: 14 Oct 2009 03:33:11
Message: <4ad57eb7@news.povray.org>
> It's great fun. EAN-13 is apparently an "extension" of UPC-A,

Those are used in supermarkets mainly, which is why you find them on all 
products sold to the public.

For non-public uses (eg on shipping cartons, internal parts of products etc) 
the company is obviously free to make up or use their own standard for the 
bar code.  You didn't find any 2D barcodes?


Post a reply to this message

From: Invisible
Subject: Re: Bar codes
Date: 14 Oct 2009 04:22:58
Message: <4ad58a62$1@news.povray.org>
scott wrote:
>> It's great fun. EAN-13 is apparently an "extension" of UPC-A,
> 
> Those are used in supermarkets mainly, which is why you find them on all 
> products sold to the public.

Yeah, apparently UPC-A is for America, EAN-13 is supposedly for 
everywhere, but almost all scanners support both. They can only encode 
numbers though - usually standardised product codes.

> For non-public uses (eg on shipping cartons, internal parts of products 
> etc) the company is obviously free to make up or use their own standard 
> for the bar code.

Yeah, the shipping box I've got has several extremely wide barcodes. 
These codes encode letters as well, but I can't determine exactly which 
system they are. (Assuming they're even a standard one...)

> You didn't find any 2D barcodes?

None.

However... The Royal Mail allow you to print your own stamps, for a fee. 
You give them money, they give you a PDF file containing a 2D barcode 
[which presumably encodes the date of purchase, since it apparently 
expires after so many days].

Now I'm thinking... it appears to be a standard Data Matrix barcode, so 
if I could figure out WTF the data encoded in it is, I could print as 
many of them as I like, without a fee...


Post a reply to this message

From: Invisible
Subject: Re: Bar codes
Date: 14 Oct 2009 04:33:22
Message: <4ad58cd2$1@news.povray.org>
Interesting fact: I actually have a barcode scanner here. Specifically, 
our tape robot has a barcode scanner. We've never used it, but 
apparently our Director of IT has suddenly decided that we're going to. 
In a few days' time I should have a stack of preprinted barcode labels.

I wonder what kinds the scanner can read?


Post a reply to this message

From: scott
Subject: Re: Bar codes
Date: 14 Oct 2009 04:47:48
Message: <4ad59034@news.povray.org>
> Now I'm thinking... it appears to be a standard Data Matrix barcode, so if 
> I could figure out WTF the data encoded in it is, I could print as many of 
> them as I like, without a fee...

Won't they encode a serial number in there? As soon as they detect a 2nd 
stamp in the system with the same serial number (or with one they know they 
haven't sold yet) there will be trouble.

Also it probably has some checksum, you'd need a shed load of stamps to 
figure it out probably.

And hope they don't encode your IP address or payment details in there too.

A bit like that system on Blu-Ray discs, where every player plays back a 
very slightly different version, so when someone rips and uploads to 
BitTorrent, they can tell exactly which player it was ripped from.


Post a reply to this message

From: Invisible
Subject: Re: Bar codes
Date: 14 Oct 2009 08:47:07
Message: <4ad5c84b$1@news.povray.org>
>> Now I'm thinking... it appears to be a standard Data Matrix barcode, 
>> so if I could figure out WTF the data encoded in it is, I could print 
>> as many of them as I like, without a fee...
> 
> Won't they encode a serial number in there? As soon as they detect a 2nd 
> stamp in the system with the same serial number (or with one they know 
> they haven't sold yet) there will be trouble.

Yeah, this is probably the main problem. If they know which numbers 
they've actually sold and which ones have actually been used, there's 
not much you can do.

> Also it probably has some checksum, you'd need a shed load of stamps to 
> figure it out probably.

Well, if you were going to reverse-engineer it, sure. But if you could 
figure out the algorithm...

It's like Windows license keys. Each one is a 20-character alphanumeric 
string. There must be some algorithm that Windows uses to decide whether 
the key you just entered is valid. If you somehow knew what that 
algorithm is.......

> And hope they don't encode your IP address or payment details in there too.

If you *knew* how they generate the barcode, you could put an arbitrary 
IP address in there. (Besides, knowing somebody's IP address doesn't 
really tell you a whole heap.) Payment details might be more fun...

> A bit like that system on Blu-Ray discs, where every player plays back a 
> very slightly different version, so when someone rips and uploads to 
> BitTorrent, they can tell exactly which player it was ripped from.

Really? That's news...


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.