Making an SPI VFD work with PICAXE

nick12ab

Senior Member
Making a SPI VFD work with PICAXE

Note: This thread is regarding an issue with the display. Detailed info on interfacing the display can be found in this thread.

After Buzby recently pointed out cheap VFDs on eBay I decided I'd get one. I didn't get the one he linked but I got an alphanumeric dot matrix one instead. I found the datasheet but I simply can't get it to work properly.

The VFD is correctly connected to a regulated 12V power supply and the PICAXE is powered off a 7805 connected to this power supply. Yes there is a decoupling capacitor!

Attempt using hardware SPI (to display 'PICAXE'):
Code:
#picaxe 28x2
#no_table
symbol cs = C.2

	high cs
	pause 200
	hspisetup spimode10e,spislow
	'Also tried spimode10
	low cs
	pause 10
main:
	hspiout ($60)
	pulsout cs,100
	hspiout ($57)
	pulsout cs,100
	hspiout ($3F)
	pulsout cs,100
	hspiout ($70)
	pulsout cs,100
	hspiout ($10,"PICAXE")
This code and slight modifications would only result in nothing or the entire display lit.

Attempt using bit-banging (to display "PICAXE"):
Code:
#picaxe 28x2
#no_table
symbol cs = C.2
symbol clock = C.3
symbol dataout = C.5
symbol dataoutpin = pinC.5

main:
	output dataout
	high clock
	high cs
	pause 200
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,1,0),dataoutpin		'Set display length
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,1,1,0,1,0,1,0),dataoutpin		'Use maximum brightness
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,1,0,0),dataoutpin		'Turn off commas and decimal points
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,1,1,0),dataoutpin		'display on/off
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,0,0,0),dataoutpin		'set character position
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	high cs
	do:loop
All the uncommented for : next loops are character codes. At first, I was just trying to send an 'A' which gave me a checkerboard pattern in all but the first square and a garbled mess in the first square. I then extended it to '!!!!!!!!!!!!!!!A' (in the code above) and on the display every occurence of '!' has a slight ghosting of 'A' in the background and the 'A' in the last square has '!' over it at the same brightness. And the commas were on.

Then I tried to display 'PICAXE' and also tried a different method of turning off the commas:
Code:
#picaxe 28x2
#no_table
symbol cs = C.2
symbol clock = C.3
symbol dataout = C.5
symbol dataoutpin = pinC.5

main:
	output dataout
	high clock
	high cs
	pause 200
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,1,0),dataoutpin		'Set display length
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,1,1,0,1,0,1,0),dataoutpin		'Use maximum brightness
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 15
		low clock
		lookup b0,(0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0),dataoutpin		'Turn off commas and decimal points
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,1,1,0),dataoutpin		'display on/off
		pause 1
		high clock
		pause 1
	next
	high cs
	pause 1
	low cs
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,0,0,0),dataoutpin		'set character position
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,1,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,1,0,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,1,0,0,0,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,0,0,0,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,1,1,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(1,0,1,0,0,0,1,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	pause 1
	for b0 = 0 to 7
		low clock
		lookup b0,(0,0,0,0,0,1,0,0),dataoutpin
		pause 1
		high clock
		pause 1
	next
	high cs
	do:loop
There was still a lot of ghosting and only the first comma turned off (I repeated the second byte of the comma setting loop and more commas turned off so there's no problem with the commas anymore).

How do I get rid of this ghosting?
 

Attachments

Last edited:

Buzby

Senior Member
Hi Nick,

Looks good !.

Regarding ghosting, I've not been through your code in detail, but you have plenty 'pause 1' in there, so it's unlikely you are clocking too fast.

I would try reducing brightness to the default. This might cure it, and will make your display last longer !.

Cheers,

Buzby
 

Buzby

Senior Member
Hi Nick,

I can't run code on my hardware today, I'm traveling, but I've a few ideas.

This display does not need continual refresh, it's not like the DMD.

Your code ends with an empty do:loop, so your code only runs once, is that what you intended ?
If so, the ghosting can't be caused by dynamic effects from the PICAXE.

What are the pin states at the end of the run ?.

What does it look like with no commas, and just a single character near the middle of the display ?

Cheers,

Buzby
 

hippy

Senior Member
@nick12ab : Rewrite the code so it's a series of "b0=%xxxxxxxx : Gosub Send" commands. That way it will be easier to follow what you are sending.

Note : Write the %xxxxxxxx values as normal, MSB to the left, let the Send routine deal with the fact it needs to send LSB first.

That requiring LSB first is probably why HSPI doesn't work
 

nick12ab

Senior Member
This display does not need continual refresh, it's not like the DMD.
I know. It's similar to a HD44780-based parallel LCD only much harder. (although I'm sure it won't be once everything's been figured out)

Your code ends with an empty do:loop, so your code only runs once, is that what you intended ?
If so, the ghosting can't be caused by dynamic effects from the PICAXE.
Yes it is.

What are the pin states at the end of the run ?.
Should be high chipselect, high clock, low data.

What does it look like with no commas, and just a single character near the middle of the display ?
Will try that later.

I can't run code on my hardware today, I'm traveling, but I've a few ideas.
SO you have a VFD like mine? If you see some fruit machines, can you see if they have the ghosing problem? Probably not.
 

Buzby

Senior Member
Hi Nick,

No, I've not got a VFD, but I have worked with these many years ago in AWP machines, so I know a bit about them.

The fact that your code is stopped and the ghosting is still there makes me think this is a hardware issue.

The 'graduated' ghost across the width is related to the volts dropped along the horizontal heater filaments.

Double check the power, and don't run at higher or lower than it should be.
Low volts can upset the balance of the various rails that the inverter generates.

I would definitely stay at default brightness, and try the single character test.

Cheers,

Buzby
 

nick12ab

Senior Member
try the single character test.
Tried single character in the middle of the screen. There was ghosing of the character at the left and right sides of the display with brightness reducing towards the middle, there the single charcter was displayed as normal.

@nick12ab : Rewrite the code so it's a series of "b0=%xxxxxxxx : Gosub Send" commands. That way it will be easier to follow what you are sending.

Note : Write the %xxxxxxxx values as normal, MSB to the left, let the Send routine deal with the fact it needs to send LSB first.

That requiring LSB first is probably why HSPI doesn't work
Yes I'll get round to that.

Double check the power, and don't run at higher or lower than it should be.
Low volts can upset the balance of the various rails that the inverter generates.
12.04V

ADDED: If I use the display length command and set the shortest display length (which is 9), only the first 9 characters work as characters and are brighter but the ghosting is still present on the unused characters.
 
Last edited:

Buzby

Senior Member
Hi Nick,

I wonder if it's some kind of earth loop, common or un-common grounds, or something like that.

Put some text on, then disconnect all clock wires and stuff, just leave the display powered with no other connections.

If the ghosting still exists then I'm stumped. It would look like a hardware problem.

Cheers,

Buzby
 

nick12ab

Senior Member
I wonder if it's some kind of earth loop, common or un-common grounds, or something like that.

Put some text on, then disconnect all clock wires and stuff, just leave the display powered with no other connections.
Tried that. There's still ghosting.

Interestingly, when there is nothing on the display there is a dim green glow on the end character spaces.

The voltage across the end pins on the VFD glass is about 76V.
 

Buzby

Senior Member
76v seems a bit high, usually these are run at about 40v.

Can you find the datasheet for the glass, or the DC-DC convertor ?
 

nick12ab

Senior Member
76v seems a bit high, usually these are run at about 40v.
Oh well, that almost got my hopes up as that could have been the cause of the problem. I must have misread something as I just remeasured it and it was -38V on both end pins in relation to Gnd.

Can you find the datasheet for the glass, or the DC-DC convertor ?
There is no sticker on the back of the glass, and there is no proper DC-to-DC converter chip, just small discrete transistors, one large transistor marked 'C3303' and a transformer marked '16LF12 1465'. The driver chip is marked 'M9202-04' and is powered by an on-board surface mount 78L05.
 

Buzby

Senior Member
Hi Nick,

Just got back home now, with glass of Bunnahabhain, and my breadboard !.

Unfortunately I've not got a VFD similar to yours, well, not a working one, just the raw glass.

I do have one on a PCB, but it's in a dark crevice somewhere, and it's too late to go searching tonight.

Together we will sort this !.

Cheers,

Buzby
 

Buzby

Senior Member
Wow ! Google is quick !

Search for '16LF12 1465' and the first result is Nicks's post from 3 o'clock !
 

nick12ab

Senior Member
Any more help?

I tried replacing the electrolytic capacitors on the VFD and that hasn't fixed the problem.

I measured the voltages of random pins on the VFD glass relative to GND and they were all either around -35V or a voltage between -30 and 0 with the greater negative voltage being on pins nearest the ends of the glass and pins with voltage near 0V being in the middle.
 

Buzby

Senior Member
Hi Nick,

I dug out my PCB mounted VFD, and #$$@*!!, it hasn't got the invertor on it, it's external !.

Have you got the driver chip datasheet ?.

The one attached below is for a similar model, but it has two 'bars' above each character, not a 'comma'.

The anode count will be similar, 35 for the 'dots' but just 1 for the 'comma'.

Looking at the specs we should be able to work out roughly what voltages to expect on the various pins, but they are multiplexed, so it really needs a scope to see the actual levels. Probably best first to test the 'all dots off' voltages, as the multiplex will have least effect there.

The 'graduated' effect keeps bringing me back to something wrong with the heater voltage relative to the grid voltage, so it could be either !.

If you can post a few good photos I'll see if I can spot anything.

Cheers,

Buzby
 

Attachments

nick12ab

Senior Member
The datasheet you posted is the datasheet for the driver chip!

I will take some photos and measure more voltages soon.

In case it's important, the VFD glass is lukewarm to the touch but not hot.
 

Buzby

Senior Member
Hi Nick

The datasheet is close, but not exact.

MSM9202 is the basic chip, but the -01 -02 -03 etc. is different anode configurations.
I couldn't find the -04 version.

VFDs do get slightly warm, due to the heater. After all, they are valves !.

Have you got a scope ?

Cheers,

Buzby
 

nick12ab

Senior Member
Have you got a scope ?
No.

What voltage will I expect to find for the heater? What does the heater look like and how many are there?

ADDED: When there's nothing on the display there is dim glowing at the ends which stays there when RST is shorted to GND.
 

Buzby

Senior Member
Well, at least we know the heater is not being overdriven !.

The heater is usually two fine wires running the length of the glass, closest to the viewing.

The construction of the VFD is in three parts.

Closest to the viewer is the heater. This just gets hot and emits electrons.
Next are the grids, one per character. These look like a wire mesh, and switch the flow of electrons on and off for the character.
Last are the anodes, the dots. These are phosphor coated, and glow when the dot is +ve.

The most important voltages are the power pins to the chip.

VDD = + 5v, this both the logic supply voltage, and the voltage the VFD pin is switched to when it is +ve. i.e dot is on.

GND = 0v, common reference

VFL = -60v, the voltage on the filament relative to Ov.
( Note : This is not the voltage *across* the heater, that's about 3v or 6v, and is obtained from the datasheet for the glass. )

Measure these voltages at the chip, and we'll go from there !.

Is either the chip or the VFD socketed ? ( Don't try removing anything yet, not even socketed stuff.

Cheers,

Buzby
 

nick12ab

Senior Member
The heater is usually two fine wires running the length of the glass, closest to the viewing.
I see six!

VDD = + 5v, this both the logic supply voltage, and the voltage the VFD pin is switched to when it is +ve. i.e dot is on.
4.98V

GND = 0v, common reference
0V

VFL = -60v, the voltage on the filament relative to Ov.
-37.7V. Not meant to be -60V as the capacitor connected between this and GND is only rated for 50V.

Is either the chip or the VFD socketed ? ( Don't try removing anything yet, not even socketed stuff.
Nothing is socketed. The controller chip seems to be a bit warm too.
 

Buzby

Senior Member
Supply voltages all look good !.

Your mention of replacing electrolytics gave me an idea.
Try adding a .1uF across 0v and Vdd near the chip, and another near the 7805.
( There should be some already, but a bit more won't do any harm, and I've had it fix 7805 problems before !. )
EDIT : Just to clarify, a 7805 can show 5v on a testmeter, but can be throwing out huge voltage swings faster than the meter can follow.

If you look at the datasheet page 3 you can see the driver circuit, it switches between Vdd ( 5v) and Vfl ( -38v ).

To turn a dot 'on' the anode goes to +5v and attracts electrons from the heater, which is permanently at -38v.
To turn dot 'off' the anode goes to -38v, same as the voltage on the heater, so no attraction of electrons occurs.

With no dots lit, the voltages on the anodes should be close to Vfl, i.e. -38v.

Can you check this ?

Cheers,

Buzby
 

Buzby

Senior Member
Hi Nick,

I'm stumped !.

All I know is how a VFD works when it's working normally.

We either need an oscilloscope, or a valve expert.

The only thing we've not tested is the heater voltage distribution, but without knowing the pinouts of the glass we are a bit stuck.

Sorry I can't help more, maybe someone else can chip in ?

EDIT : We've not checked the grids. These are tricky because they are multiplexed.

If a grid is +ve while the anode is -ve, in theory the dot should be off.
But when the grid is +ve electrons are accelerated towards it, and can 'shoot through' thus causing a glow.

How can we measure the multiplexed grid volts without a scope ?.

I have one idea, but it's really off-the-wall. We stop the multiplexing !.
( I need to think on this more, so don't ask me yet how it will help. )


Cheers,

Buzby
 
Last edited:

nick12ab

Senior Member
I measured ALL the pins on the VFD glass and they were all -37.8V, with the exception of 16 pins which were -35.4V. There 16 pins were divided into two sets of eight, either side of a bunch of pins in the middle that are cut short and not connected to anything on the PCB.

I have no idea where the voltage for the heater goes in so is it possible that the heater is being powered by the -37.8V but the current is too feeble to make the heater wires glow red?

I've taken some photos of the back of the module. That one capacitor looks out of place because I accidentally took one of the pads off the PCB so had to wire a capacitor to something else that was connected to the pad.
 

Attachments

nick12ab

Senior Member
When in darkness, I can actually see the heater wires glowing a dim orangey colour. There are also some tiny specs of green glow all around the VFD.
 

Buzby

Senior Member
When in darkness, I can actually see the heater wires glowing a dim orangey colour ...
I've never seen a heater glowing, but then I've never studied one in the dark !.

The whole issue is that electrons are getting to the anodes when they shouldn't be.

The voltages all look good, and I'm assuming the slight increase in voltage on the grids, from -37.8 to -35.4, is due to multiplexing.
( A rough estimate of (( 15 * -37.8 ) + ( 1 * 4.98 )) / 16 = -35.126v )

So if the display voltages are OK, maybe the heater is throwing out too many electrons for the grid to cope.

We really need to understand the heater circuit.

The app note for the chip shows the heater driven from a centre-tap winding on a transformer, but this not the only way.
It can have a centre tap on the heater, with the tap connected to Vfl.

The purpose of the tapped coil or tapped heater is to minimise the volt drop along the length of the heater.

Imagine the heater as a chain of resistors of equal value, with Vlf applied at one end only.

The 16 character positions pull electrons from the junctions between the resistors, say 6mA for each character.
So the first resistor in the chain passes 16 * 6mA, the second 15 *6mA, the third 14 * 6mA, and so on.

This means that there is a different voltage at the junctions between each resistor, which means a different voltage relative to Gnd or Vdd, which means different electron acceleration, which means different brightness.

To combat this effect, the Vfl is applied to both ends of the heater, thus supplying the current demand from both ends, which means less volt drop per 'resistor'.

Alternatively, if Vfl is connected the centre of the heater, then the effect is the same, as the current is split 'outwards' from the centre, instead of being supplied in 'two halves' at each end.

The description above describes the effect on brightness due to the electron flow pulled by the characters, but there is another current going through the heater as well. This is the current needed to heat the heater !.

This is needed to get the heater hot enough to release electrons, maybe it's too hot ?.

I can't find the datasheet for the glass, so I've no idea how the heater is wired, or what current it needs.

With the power off, the only pins on the glass which should have a low resistance between them should be the heater(s).
Unfortunately the transformer may have one or more winding in parallel, so the apparent resistances maybe very low.

A bit of tracing tracks and measuring resistances should get us the circuit for the heater, or heaters - there maybe more than one.
Note : Multiple heaters will be tricky to trace, as they will be connected together via the Vfl line.

I really wish we had the datasheet for the glass !.

Cheers,

Buzby
 

MartinM57

Moderator
Question from a occasional reader to this thread, learning stuff about VFDs on the way....so is this VFD brand new full spec device, or some sort of second hand / swapped out as faulty / new but from a rejected batch / etc device?
 

nick12ab

Senior Member
Question from a occasional reader to this thread, learning stuff about VFDs on the way....so is this VFD brand new full spec device, or some sort of second hand / swapped out as faulty / new but from a rejected batch / etc device?
It is listed as used:
Used: An item that has been previously used. The item may have some signs of cosmetic wear, but is fully operational and functions as intended.
There is nothing in the listing that states otherwise.
 

Buzby

Senior Member
Hi Nick,

I'm not giving up on this !.

There are only two significant things that can go wrong with the glass part of the VFD.

1 - It gets cracked. End of VFD, no display at all. The vacuum is destroyed, and the electrons can't get through the air molecules.
Usually the heater burns out as well, because it oxidises quickly in the air.

2 - The heater goes open circuit. Can't get hot, so no electrons emitted.
The VFD *might* work, just because of weak electron emission due to the high potential difference, but the display is dim and unreliable.

This display doesn't seem to have either of these problems, so it's worth carrying on.

We already know 16 of the pins on the glass. The two groups of 8 are the grids.

How many pins are left ?

There will be a lot of anodes, 35 for the dots, and 1 for the comma. There may even be a couple of unused ones.

There will be at least 2 for the heater, but more likely 3. If there are multiple heaters then there will be more, say 4 or 6.

There may also be a few unused pins, just to make it trickier.

Make a drawing of the pins, then mark off the 16 grids already known.

Then, with the power off, find all the pins that have low resistance between them. Mark these on the drawing.
These will be the heater pins, but we won't know which is which yet, that's the next step.

It's real pain trying to find faults on circuits with soldered chips, even worse when they are surface mount.

Cheers,

Buzby
 

nick12ab

Senior Member
I don't think a drawing would help. I've counted the pins and there are...
  • 36 pins for segments
  • 16 grid pins
  • 17 unconnected pins in the middle (well not quite middle, there's 3 more connected pins to the right than to the left)
  • Four pins, two at each end, which connect to weird metal things at the ends of the VFD and they are all shorted together
  • One mystery pin

There's absolutely no flicker in the glow so the glow isn't anything to do with the multiplexing.
 
Last edited:

Buzby

Senior Member
[*]Four pins, two at each end, which connect to weird metal things at the ends of the VFD and they are all shorted together
Those are the heater wires. The metal things are the supports. Can you see exactly which heater wires connect to which support ?

They will all measure close to zero ohms, because (a) they are very low resistance, and (b) they are all connected to Vfl somewhere.

Four pins ?.

Could be two sets of 3 wire heaters.
Code:
           |~~~~~~~~~~~~~~~~~|
       o---|~~~~~~~~~~~~~~~~~|---o
           |~~~~~~~~~~~~~~~~~|


           |~~~~~~~~~~~~~~~~~|
       o---|~~~~~~~~~~~~~~~~~|---o
           |~~~~~~~~~~~~~~~~~|


Or one set of 6, with dual connections
Code:
           |~~~~~~~~~~~~~~~~~|
       o---|~~~~~~~~~~~~~~~~~|---o
           |~~~~~~~~~~~~~~~~~|
           |~~~~~~~~~~~~~~~~~|
       o---|~~~~~~~~~~~~~~~~~|---o
           |~~~~~~~~~~~~~~~~~|

Or some other arrangement, with taps.

Can you trace the PCB tracks for the four pins ?

Cheers,

Buzby
 

nick12ab

Senior Member
Each pair of pins has a trace on the PCB shorting them and the pins of each pair are connected to the same bit of metal, so it's one set of 6 with dual connections then.

ADDED: There are two separate pins for the commas, so that's what the mystery pin is for.
 
Last edited:

Buzby

Senior Member
Hi Nick,

If only two effective pins, it's probable that the transformer has a centre tap.

Can you trace the heater pins back to the transformer ?
Then measure resistance again, this time to find 1 or more transformer pins which have low ohms to the known heater pins.
It could be a centre tapped coil, with just 3 pins. Or it could be two series connected coils, with the tap at the joint. In this case using 4 pins.

Then, with power on, what is the voltage across the heater ?.
( This will be AC at way higher than 50Hz, so it's not a very accurate measurement. )

Regarding the glow you see from the heaters, do you see it on all wires, and at which ends ?


Cheers,

Buzby
 

Buzby

Senior Member
Consistant glow means no broken heaters, but I'm not sure they should be visibly glowing.
 
M

mkstevo

Guest
The glow is only visible in darkness and even then is very dim. COuld you check your VFDs to see if they glow in darkness?
I would say that this is normal. Having spent many years repairing video recorders which often used this type of display, being able to see a faint orange glow (often only visible in near darkness, as you describe) from the heaters was a good sign!

Regarding the ghosting, check (ideally by replacement) all the electrolytic capacitors on the display board, particularly the one that provides the negative supply for the VFD cathodes (probably the heater?).
If that does not help, it could be inter-electrode leakage in the actual VFD itself.
 
Last edited:
Top