Controlling a Flip Dot Display

Hi everyone,
I’ve just received this small 14x28 flip dot display from a public transport firm in Belgium.
I would like to control it with my Arduino.
(My final aim is to display text from RSS feed with the Ethernet Shield.)
I’ve got 6 ULN2803 and some 74HC595.

Everyone who as already done that kind of thing can guide me please ?

I thank you in advance!
Florentin

Nice gadget.

Clearly need to suss out the circuit, or even better find data according to its model numbers on the Internet.

Presumably you have tried that? (No surprise if no success.)

Usually a flip-dot needs a pulse of current to flip it one direction, and then a pulse in the other direction to flip it back - so a circuit like an H-bridge is needed.
With your 14 x 28 display, presumably there is some multiplexing going on to select which row and which column is getting those pulses.
So definitely controllable with an Arduino and maybe some additional hardware. But not until more is known about the 5 headers pins and the 2 black items - are those ICs, rubber bumbers, ?

The 2 black items are only protections.
All my ICs are there.(See pictures)

But maybe is the flip dot panel easiest to control without all the Krueger material which is working with a particular protocole.

I don’t know.

I know that I can use some ULN2803 but I don't know how exactly.

Oh, you're too funny. You've got a control board which runs a display, reads a keyboard, and drives a 14 x 28 display. Looks to be salvaged from something else. And presumably you have no documentation?

Okay, imagine you have a smaller display, 3 rows left and right, and 4 columns up and down.

To make dot C0RO flip black to yellow, you need to drive Column0 High and Row0 How.
To make dot C0R0 flip yellow to black, you need to drive Column0 Low and Row0 High.

Same for other dots, say C2R2 - drive Column2 High, Row 2 Low, or Column2 Low and Row2 High.

ULN2803 can only drive its outputs low, so something more is needed.

To be able to drive current in both directions, you need an H-bridge IC, such as this
http://www.digikey.com/product-detail/en/TA7291SG(O,J)/TA7291SGOJ-ND/1730027
http://www.toshiba.com/taec/components2/Datasheet_Sync/200706/DST_TA7291P-TDE_EN_3604.pdf

Tho it is not exactly clear from the picture on sheet 2 of the datasheet (which has 3 sets of pins shown for 3 different package types), here’s how it works:

When IN1 is High, current will flow from Vs thru the top-left transistor, thru the motor M from top to bottom, thru the bottom right transistor, to Gnd.

When IN2 is High, current will flow from Vs thru the top-right transistor, thru the motor M from bottom to top, thru the bottom left transistor, to Gnd.

See the Function Table on Page 3 as well.

So you need to work out if your card is wired up similarly, and if so, you can work out the connections for 42 H-bridge chips. Or 1 chip and a bunch of relays. Or something else.

Ok thank it's clearer in my mind.
So do you think i can get chip from the Krueger material. Such as ULN2804, UDN2982LW,14028B,9251H,9350H,HEF40106BP, MC14504BCP, G655C51P, TC55257CPL, etc...,etc....
So I wont buy more chip.

I've done researches on the internet but can't distinguish what chip got the role of the H-Bridge.

ULN2804,

UDN2982LW,

14028B,

9251H, Unknown
9350H, Unknown
HEF40106BP,

MC14504BCP,

G655C51P, Unknown.
TC55257CPL, Unknown.

It is likely quite possible to make H-bridge type circuit with those chips.
Some are no longer procurable, and/or only procurable as surface mount parts.

Have you had any success determining the wiring layout of the flip dot board?

Oh, so you have the controller for it!

Now you could be in business. Is it working? That's the first step. Connect it up, determine the working voltage, power it and play with it. There is most certainly no other way you will be able to operate this display.

The microcontroller on that board - I can't quite see the number - looks suspiciously like a Hitachi HD6803 or similar, for which specifications and disassemblers are available. As such you just have to read the EPROMs and disassemble the code, with perhaps some assistance of tracing parts of the wiring around the PIO chips.

Quite a task but - it definitely isn't going to happen any other way unless you were so amazingly lucky as to come across the original design materials.

Yes indeed I’m lucky about that.
I think understanding the whole wiring and protocole from Krueger will be quite a task. My final aim is to display infos from the web with a personalized type. This flip dot display was originally used to display the number of the bus line (ex.148A).

The big chips on the right are HD63B09P, G65SC51P, G65SC22P, TC55257CPL. And the other ones are sticked.

This is how the matrix works:

florentindm:
I think understanding the whole wiring and protocol from Krueger will be quite a task.

True. But infinitely easier than attempting to build your own interface.

florentindm:
The big chips on the right are HD63B09P, G65SC51P, G65SC22P, TC55257CPL. And the other ones are sticked.

Even better! A 6809 processor - something with which I personally am very familiar, having re-written (for my own personal use) the FLEX09 Disk Operating System back in the eighties. Tools for this (including disassemblers) as well as documentation (including the 6551 UART used for programming this display unit and the 6522 PIO) should be readily available.

Unfortunately it has possibly lost its BBRAM memory by now, so what it will do when you "fire it up" one cannot fully predict.

The chart above shows 28 columns, 14 rows - I bet a simple test pulsing the current from row to column and from column to row will show that the multiplexing I describer earlier will work.

I tried some combinations of pins and ended by writing this schema down. So now it's more clear.

Here is a list of the components and their roles.
Am I right if I say some ULN2804, HEF4514BP and G655C22 would be THE parts I need for inversing and demultiplexing?
ULN2804: Darligton, sink current
UDN2982: 8-Channel source driver
14028B: BCD to decimal decoder
HEF4016BP : inverter based on the Schmidt Trigger
HEF4516BP : edge-triggered synchronous u/d 4-bit bin counter
HEF4556BP : 1 of 4 decoder/demultiplexer
HEF4019BP : Quadruple 2 input decoder
HEF4514BP : 1 of 16 decoder/demultiplexer with input latches
HEF40244BP : octal buffer with 3-state output
MC14504BCP : HEX level shifter for TTL to CMOS or CMOS to CMOS
M74HC368B1 : HEX Bus buffer
G65SC51P 1-2 : Asynchronous Communication Interface adapter
TC55257CPL : memory
G65SC22P 1-1 : Versatile Interface Adapter, Shift Register, I/O, TImer, Counter
HD63B09P : 8-bit microprocessor

Now imagine I would take the option : "hacking" of the Krueger display.
Do you know guys what kind of language/protocole do they use to control the display and communicate with the control device?

No idea.

I’ve done researches on the internet but can’t distinguish what chip got the role of the H-Bridge.

It’s control appears to be very similar to the way latching relays work (impulse driven). What I’ve read is that they have a permanent magnet like shown here. Notice the separate SET and RESET impulse.

If that’s the case, then if it’s single coil driven, a method of reversing the polarity across the coil would be needed (i.e. mini-relay or H-bridge). If it has a dual-coil configuration (or centre-tapped coil) to flip the dots, then no H-bridge is required. It looks to me here that part numbers ULN2804 and UDN2982 are used to drive the coils.

Note that latching relays need an impulse (i.e. 50-100 ms) to operate and would suffer damage if driven continuously at rated coil voltage. I think the idea here is similar (something to investigate).

In any case, once the dots can be controlled, the required code would be very similar to that which drives an led matrix.

florentindm:
Now imagine I would take the option : "hacking" of the Krueger display.

I do think it is by far your best option. It is already set up to do exactly what is necessary.

florentindm:
Do you know guys what kind of language/protocol do they use to control the display and communicate with the control device?

The primary "language" is Motorola 6809 assembler, a very elegant symmetric machine code with which I used to be fluent. You would need to disassemble the code in the EPROM (which you have not identified; you need to take a look under the label), not particularly difficult with a decent disassembler though deciphering compiled "high-level" languages can be a challenge.

Needless to say, the interface with the programming device which you do not have, would be arbitrary and proprietary, but would be implicit in the firmware you have.