EmbeddedRelated.com
Forums

Barcode scanner reverse engineering

Started by D Yuniskis May 19, 2010
Hi,

I have a box full of Scanplus 1800 SR's.  I am trying to
use them in a project for a local 501(c)3.  To do so, I
need to fabricate some cables that will make available
the "RS232" interface from the scanner.

[for those unfamiliar with these types of scanners, in
general, they typically have several interfaces on board
and *one* is selected for use by the choice of cable
connecting the scanner to <whatever>.  So, the trick here is
to figure out which pins carry the RS232 signals -- usually
RD/TD with RTS/CTS possibly added]

I've not been able to find any documentation indicating
the pinout of this connector.  "Google, thou doth fail me!"

I've made the expected sacrifice to the god of barcode
scanners and successfully disembowled a unit.  I was hoping
to find an obvious level translator and just trace foils.

Alas, the gods look down in disfavor and refuse to
share their secrets with me.  :<

There's a small serial flash (configuration?), a parallel flash
(program store?), an LM358 (probably some signal conditioning
for the optics?), an AD8051 driver (probably for the deflection
servo) and a TI QFP marked with "house numbers" (probably a masked
DSP that does the real work!).

The only other actives are a bunch of discrete Q's scattered
around the board.  No doubt, one of these is acting as the Tx
translator (?).

Unless, of course, there are some bits in the *cable* assy
that contribute to the interface  :<  (not likely -- at least
in most of the other scanners I've tinkered with).

Obviously, the DSP (?) is a good place to start.  Regardless
of the code therein, knowing the pinout could be a big win
towards narrowing down which pins are likely to be of interest.
Anyone with enough *breadth* of knowledge re: TI's offerings
able to comment if there is a core pinout shared among devices?
Or, are there just too many flavors to choose from?  :<

(I'll have to remove the deflection assy to see if there
are any other goodies cowering underneath...)

Thx,
--don
D Yuniskis wrote:
> Hi, > > I have a box full of Scanplus 1800 SR's. I am trying to > use them in a project for a local 501(c)3. To do so, I > need to fabricate some cables that will make available > the "RS232" interface from the scanner. > > [for those unfamiliar with these types of scanners, in > general, they typically have several interfaces on board > and *one* is selected for use by the choice of cable > connecting the scanner to <whatever>. So, the trick here is > to figure out which pins carry the RS232 signals -- usually > RD/TD with RTS/CTS possibly added] > > I've not been able to find any documentation indicating > the pinout of this connector. "Google, thou doth fail me!" > > I've made the expected sacrifice to the god of barcode > scanners and successfully disembowled a unit. I was hoping > to find an obvious level translator and just trace foils. > > Alas, the gods look down in disfavor and refuse to > share their secrets with me. :< > > There's a small serial flash (configuration?), a parallel flash > (program store?), an LM358 (probably some signal conditioning > for the optics?), an AD8051 driver (probably for the deflection > servo) and a TI QFP marked with "house numbers" (probably a masked > DSP that does the real work!). > > The only other actives are a bunch of discrete Q's scattered > around the board. No doubt, one of these is acting as the Tx > translator (?). > > Unless, of course, there are some bits in the *cable* assy > that contribute to the interface :< (not likely -- at least > in most of the other scanners I've tinkered with). > > Obviously, the DSP (?) is a good place to start. Regardless > of the code therein, knowing the pinout could be a big win > towards narrowing down which pins are likely to be of interest. > Anyone with enough *breadth* of knowledge re: TI's offerings > able to comment if there is a core pinout shared among devices? > Or, are there just too many flavors to choose from? :< > > (I'll have to remove the deflection assy to see if there > are any other goodies cowering underneath...) > > Thx, > --don
Don We do a lot of work with scanners, so I might be able to offer some assistance. You probably have found most of this already, but I will repeat it here, just in case. ScanPlus series were Intermec scanners (http://intermeccorp.com/pdf/1800gs21.pdf). The part number for the RS-232 cable is 0-364032-00. You might consider buying one as a model and then building what you need from that. Quick peek shows cheapest a $ 29.00. Your time has to count for something. The POS market has a large number of used equipment sellers/refurbishers. One may be able to help you out. This stuff has many lives and tends to live forever. The interface is usually just TX, Power, and Ground. Most POS systems do not employ or depend on handshake lines. Just detect a label and output the results. Pictures of this scanner with the RS-232 cable show an external power conversion box which typically contain a regulator to 5 V DC. b. Farmer
On May 19, 11:11=A0am, D Yuniskis <not.going.to...@seen.com> wrote:
> Hi, > > I have a box full of Scanplus 1800 SR's. =A0I am trying to > use them in a project for a local 501(c)3. =A0To do so, I > need to fabricate some cables that will make available > the "RS232" interface from the scanner. > > [for those unfamiliar with these types of scanners, in > general, they typically have several interfaces on board > and *one* is selected for use by the choice of cable > connecting the scanner to <whatever>. =A0So, the trick here is > to figure out which pins carry the RS232 signals -- usually > RD/TD with RTS/CTS possibly added] > > I've not been able to find any documentation indicating > the pinout of this connector. =A0"Google, thou doth fail me!" > > I've made the expected sacrifice to the god of barcode > scanners and successfully disembowled a unit. =A0I was hoping > to find an obvious level translator and just trace foils. > > Alas, the gods look down in disfavor and refuse to > share their secrets with me. =A0:< > > There's a small serial flash (configuration?), a parallel flash > (program store?), an LM358 (probably some signal conditioning > for the optics?), an AD8051 driver (probably for the deflection > servo) and a TI QFP marked with "house numbers" (probably a masked > DSP that does the real work!). > > The only other actives are a bunch of discrete Q's scattered > around the board. =A0No doubt, one of these is acting as the Tx > translator (?). > > Unless, of course, there are some bits in the *cable* assy > that contribute to the interface =A0:< =A0(not likely -- at least > in most of the other scanners I've tinkered with). > > Obviously, the DSP (?) is a good place to start. =A0Regardless > of the code therein, knowing the pinout could be a big win > towards narrowing down which pins are likely to be of interest. > Anyone with enough *breadth* of knowledge re: TI's offerings > able to comment if there is a core pinout shared among devices? > Or, are there just too many flavors to choose from? =A0:< > > (I'll have to remove the deflection assy to see if there > are any other goodies cowering underneath...) > > Thx, > --don
Since you seem to be involved in a charitable enterprise, perhaps the manufacturer would be willing to help with some engineering, equipment or at least documentation.
Bit Farmer wrote:
> D Yuniskis wrote: >> I have a box full of Scanplus 1800 SR's. I am trying to >> use them in a project for a local 501(c)3. To do so, I >> need to fabricate some cables that will make available >> the "RS232" interface from the scanner. >> >> I've not been able to find any documentation indicating >> the pinout of this connector. "Google, thou doth fail me!" >> >> Unless, of course, there are some bits in the *cable* assy >> that contribute to the interface :< (not likely -- at least >> in most of the other scanners I've tinkered with). > > Don > > We do a lot of work with scanners, so I might be able to offer some > assistance. You probably have found most of this already, but I will > repeat it here, just in case. > > ScanPlus series were Intermec scanners > (http://intermeccorp.com/pdf/1800gs21.pdf). > The part number for the RS-232 cable is 0-364032-00.
Yes, I have found a smattering of documentation. But, nothing "under the hood". E.g., metrologic scanners tend to have more of the little details available (I have a few of those that I could fall back to -- but not nearly enough; hence the desire to use the intermec parts -- "use what you have" :> )
> You might consider buying one as a model and then building what you need > from that. Quick peek shows cheapest a $ 29.00. Your time has to count > for something.
Yeah, that's an option. I don't want to have to buy "one for each scanner" as that gets expensive. In which case, why not find the *right* scanner for the job (instead of "making do"?) Of the devices I have "accumulated", the best bet seems to be a "cordless" scanner (can't recall if it is metrologic, intermec, etc.). This would better fit some of the other applications it needs to address (I would hate to have to support lots of different scanners; this is a "pro bono" effort on my part :< ). Ideally, I'd buy some wireless barcode "terminals" - but most of those seem to run proprietary software (i.e., I just want access to the barcode data and the screen... move all the smarts *out* of the terminal)
> The POS market has a large number of used equipment > sellers/refurbishers. One may be able to help you out. This stuff has > many lives and tends to live forever.
I've made a few calls and they all think what they have is "priceless". Sheesh!
> The interface is usually just TX, Power, and Ground. Most POS systems > do not employ or depend on handshake lines. Just detect a label and > output the results. Pictures of this scanner with the RS-232 cable show > an external power conversion box which typically contain a regulator to > 5 V DC.
I am hoping to find scanners that I can "talk to". At the very least, so I can disable the "beep on scan" annunciator and use the annunciator for *my* purposes (too often, scanners beep independent of theapplication and convey the *wrong* information!). Ideally, I would like to be able to do all of the configuration through the interface, too (the wireless scanner I mentioned has this ability, IIRC). This would make it a lot easier for these people to "reinitialize" a hung scanner: scan the "RESET" barcode and then let my software initialize you the way I want you to be initialized (done at each IPL). [I don't want to write myself in for a "free lifetime support" role, here! :> ] There are several different uses for the scanners so I am trying to find some common ground -- in terms of the interface (hardware and software) and mechanical characteristics. At the front door, a stationary scanner will be used to scan "ID" cards. We're not concerned about forgery; the folks who are "trusted" have no incentive to forge an ID as there is no money involved, etc. The folks who are *not* trusted are monitored during check-in and check-out (the software protocols require an "authorized user" to vouch for each "sign in/out"). The scanner used here must be stationary and can't be allowed to be "re-aimed" -- some of the folks who come through are developmentally disabled. You *know* they will *want* to "look at the pretty red lines"! :< Elsewhere, I use the scanners as alternatives to keyboard/touchpanel. E.g., scan a label affixed to a parcel to identify that parcel. Scan the label affixed to a scale to associate the weight displayed on that scale with that parcel. Etc. Here, cordless can be a real win -- attach a charging base to each forklift so the forklift operator can scan the appropriate labels without leaving the cab! Still other places the scanners are semi-fixed -- like the "price checkers" at WalMart, Target, etc. In other places, they can be tethered to a rolling cart (e.g., when we are taking inventory and need to scan all of the boxes in each room, etc.). The folks using these devices aren't tech savvy. Some have problems with dementia, vision, development disabilities, other physical disabilities, etc. Much of my "value added" is in designing a system that gives them lots of leeway in how they use it as *enforcing* some rigid protocol would just result in lots of bad data and frustrated users. E.g., a classic "wand" would be a non-starter. Folks with parkinsonian tremor would not be able to pass it uniformly across a label. Some of the develomentally disabled folks would treat it like a *crayon* and try to "scribble" with it. etc. :< I.e., it is a delightfully challenging application. Trying to do it while spending no *money* makes it even moreso! :> Part of that is picking devices that we have lots of -- to eliminate the need for any cash outlays. And, to have a stockpile of "spare parts" to draw on in the future (again, I don't want to put myself into a support role!)
1 Lucky Texan wrote:
> On May 19, 11:11 am, D Yuniskis <not.going.to...@seen.com> wrote: > >> I have a box full of Scanplus 1800 SR's. I am trying to >> use them in a project for a local 501(c)3. To do so, I >> need to fabricate some cables that will make available >> the "RS232" interface from the scanner. > > Since you seem to be involved in a charitable enterprise, perhaps the > manufacturer would be willing to help with some engineering, equipment > or at least documentation.
Yes, that's my fallback position. But, if I end up having to contact a manufacturer "on letterhead", then i will want to ask for what I *ideally* want (and not what I am willing to settle for! :> ) So, I am trying to exhaust my options *before* that point.
In article <ht128b$ajt$1@speranza.aioe.org>, not.going.to.be@seen.com 
says...
> Hi, > > I have a box full of Scanplus 1800 SR's. I am trying to > use them in a project for a local 501(c)3. To do so, I > need to fabricate some cables that will make available > the "RS232" interface from the scanner. > > [for those unfamiliar with these types of scanners, in > general, they typically have several interfaces on board > and *one* is selected for use by the choice of cable > connecting the scanner to <whatever>. So, the trick here is > to figure out which pins carry the RS232 signals -- usually > RD/TD with RTS/CTS possibly added] > > I've not been able to find any documentation indicating > the pinout of this connector. "Google, thou doth fail me!" > > I've made the expected sacrifice to the god of barcode > scanners and successfully disembowled a unit. I was hoping > to find an obvious level translator and just trace foils. > > Alas, the gods look down in disfavor and refuse to > share their secrets with me. :< > > There's a small serial flash (configuration?), a parallel flash > (program store?), an LM358 (probably some signal conditioning > for the optics?), an AD8051 driver (probably for the deflection > servo) and a TI QFP marked with "house numbers" (probably a masked > DSP that does the real work!). > > The only other actives are a bunch of discrete Q's scattered > around the board. No doubt, one of these is acting as the Tx > translator (?). > > Unless, of course, there are some bits in the *cable* assy > that contribute to the interface :< (not likely -- at least > in most of the other scanners I've tinkered with).
That's exactly case with an EconoScan that I'm now using. There's a 10-pin ethernet-type connector in the unit which sends CMOS-level signals to a lump in the cable. I purchased the RS-232 version, and upon disassembly, found an RS-232 level shifer inside the cable lump. I suppose that there are just different components inside the cable for the USB and keyboard wedge versions.
> > Obviously, the DSP (?) is a good place to start. Regardless > of the code therein, knowing the pinout could be a big win > towards narrowing down which pins are likely to be of interest. > Anyone with enough *breadth* of knowledge re: TI's offerings > able to comment if there is a core pinout shared among devices? > Or, are there just too many flavors to choose from? :< > > (I'll have to remove the deflection assy to see if there > are any other goodies cowering underneath...) >
Mark Borgerson
Hi Mark,

Mark Borgerson wrote:
> In article <ht128b$ajt$1@speranza.aioe.org>, not.going.to.be@seen.com > says... >> I have a box full of Scanplus 1800 SR's. I am trying to >> use them in a project for a local 501(c)3. To do so, I >> need to fabricate some cables that will make available >> the "RS232" interface from the scanner. >> >> I've not been able to find any documentation indicating >> the pinout of this connector. "Google, thou doth fail me!" >> >> I've made the expected sacrifice to the god of barcode >> scanners and successfully disembowled a unit. I was hoping >> to find an obvious level translator and just trace foils. >> >> Alas, the gods look down in disfavor and refuse to >> share their secrets with me. :< >> >> There's a small serial flash (configuration?), a parallel flash >> (program store?), an LM358 (probably some signal conditioning >> for the optics?), an AD8051 driver (probably for the deflection >> servo) and a TI QFP marked with "house numbers" (probably a masked >> DSP that does the real work!). >> >> The only other actives are a bunch of discrete Q's scattered >> around the board. No doubt, one of these is acting as the Tx >> translator (?). >> >> Unless, of course, there are some bits in the *cable* assy >> that contribute to the interface :< (not likely -- at least >> in most of the other scanners I've tinkered with). > > That's exactly case with an EconoScan that I'm now using. > There's a 10-pin ethernet-type connector in the unit which
Yes! That seems pretty common as the attachment interface on the scanner end. (why the hell they couldn't trim two pins off it so you could use an "RJ45" connector really irks me! I can't fabricate 10-pin cables :< )
> sends CMOS-level signals to a lump in the cable. I purchased > the RS-232 version, and upon disassembly, found an RS-232 > level shifer inside the cable lump. I suppose that there
Ouch! That is unfortunate. The metrologic devices have all of the interfaces in the scanner. The cable is nothing more than an appropriate set of connections and connectors.
> are just different components inside the cable for the > USB and keyboard wedge versions.
I suspect that is the case with this unit. :< Though it is still possible that the necessary signals are there along with the translators (using discretes -- "STL" :> ) Unfortunately, there is no guaranteed way to probe signals to verify this. I think they shutdown or repurpose the interface pins depending on the configuration chosen.