IN-4 ghosting, once again.

87 views
Skip to first unread message

Mateusz Dziuba

unread,
Jan 7, 2021, 12:20:57 PM1/7/21
to neonixie-l
Hi all,

I am working on nixie clock and experiencing ghosting between neighboring tubes. Please see attached photo.

1.jpg

I am using 6xIN-4 nixies, Arduino with Atmega328, 6xTLP627 transoptor for driving anodes and K155ID1 chip for driving cathodes. I am multiplexing nixies in interrupt. Code attached.

What i tried so far:
1. I connected 10x 1N4148 fast switching diodes from cathodes bonding points to mid voltage of 90V. It didn't help a bit and increased power consumption only.
2. I removed the diodes and tried "center-pull" all anodes and cathodes bonding points through 500k ohm resistors. Didn't help, although reduced decay of anodes after switching off.

Some photos below:
4.jpg
5.jpg2.jpg3.jpg

What comes to my mind, I might try to increase/rewrite blanking interval but i am not sure how to do it inside interrupt. Maybe I should rewrite it to the main loop.

All help, comments, suggestions are welcome. 
nixieclock.txt

Bill van Dijk

unread,
Jan 7, 2021, 12:32:35 PM1/7/21
to neoni...@googlegroups.com

Can you post the schematic? First I notice that a bright 1 has a ghost 2, and it seems every number has a ghosted lower number. Could be timing (discussed many times), or perhaps the KD1551s are too slow depending on your multiplex speed. What is you multiplex sequence, i.e. 2x3, 3x2, 1x6 ?

 

Bill

--
You received this message because you are subscribed to the Google Groups "neonixie-l" group.
To unsubscribe from this group and stop receiving emails from it, send an email to neonixie-l+...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/neonixie-l/ed921226-078c-4a66-bae2-bf79fad2b9b8n%40googlegroups.com.

image001.jpg
image002.jpg
image003.jpg
image004.jpg
image005.jpg

Mateusz Dziuba

unread,
Jan 7, 2021, 1:27:05 PM1/7/21
to neonixie-l
I did not develop specific circuit diagram for my clock, but it is build around this project: (please don't mind wrong polarity of opto. Someone draw it wrong.)
e44b2492e18895184e259a89f71556fc.jpg

Mateusz Dziuba

unread,
Jan 7, 2021, 1:38:25 PM1/7/21
to neonixie-l
I am multiplexing anodes one by one,  from left to right. Frequency is around 40Hz per lamp.

Bill van Dijk

unread,
Jan 7, 2021, 2:05:27 PM1/7/21
to neoni...@googlegroups.com

This is a 1x4 multiplex, each tube is lit 25% of the time if no “dead space” is built in the software. I have not checked the data sheets, but it looks strange that the 0 output from the 74141goes to the 1 of the tube, and so on. Anyway, with your problem, program a space between switching digits, length to be experimentally done since different tubes switch faster than others. The other thing to try is a resistor of a few hundred K between the tube anode and ground to dissipate the space charge in the tube quicker. (not sure if that works; I have not tried that myself). Generally speaking it is not recommended to multiplex Nixies, it surely dims them.

image001.jpg

gregebert

unread,
Jan 7, 2021, 3:09:11 PM1/7/21
to neonixie-l
It looks like you are using PWM dimming. Can you disable it for now, and then focus on optimizing dead-time between cathodes and the anode timing.

I'm fairly certain you want to turn OFF the anode before changing the cathode signals, allowing some dead-time, then turning on the next anode. I cant tell from the waveforms above if there is any dead-time or overlap/underlap.

Mateusz Dziuba

unread,
Jan 8, 2021, 2:42:56 AM1/8/21
to neonixie-l
@Bill van Dijk  It's 1x6 multiplexing actually. Posted schematic is not mine, I used it just as reference. It seems someone mixed tube connections as well. I tried adding resistors before, but without success.

@gregebert I am not using PWM yet, but I am planning to do so, to make automatic dimming of nixies. I am not sure how it will interact with multiplexing.

Taking into account all your ideas I worked on timing again. First I added 700ms delay inside interrupt before switching next anode on. I know it is huge no-no, so I rewrited all multiplexing to the main loop and add some delays - experimentally found I need 1ms after switching off all anodes and 3ms before switching them off.

Thank You for all your time and help. I may return to this post if implementing pwm will challenged me.

gregebert

unread,
Jan 8, 2021, 10:27:23 AM1/8/21
to neonixie-l
Another thing....If you see random oddities, it's possible the CPU is doing housekeeping tasks. I dont know about Arduino, but definitely on a Raspberry Pi the Linux OS will periodically do mandatory OS functions and it will definitely affect timing loops. When I was analyzing performance on a parallel I/O port I implemented in software, I found random cases where the OS would take a few milliseconds away from my tight-timing loop.

Although I use a RasPi in all of my projects since 2017, when I need timing-critical work done, I offload it to an FPGA and use software to interact with the FPGA in a non-timing-critical manner. The other advantage of the FPGA is the logic is programmable, so it's easy to make changes, fix bugs, etc.

Toby Thain

unread,
Jan 8, 2021, 11:15:20 AM1/8/21
to neoni...@googlegroups.com, gregebert
On 2021-01-08 10:27 a.m., gregebert wrote:
> Another thing....If you see random oddities, it's possible the CPU is
> doing housekeeping tasks. I dont know about Arduino, but definitely on a
> Raspberry Pi the Linux OS will periodically do mandatory OS functions
> and it will definitely affect timing loops. When I was analyzing
> performance on a parallel I/O port I implemented in software, I found
> random cases where the OS would take a few milliseconds away from my
> tight-timing loop.
>

Arduino like many other MCU's does not usually run an operating system,
but you will still see timing related jitter if interrupts are
occurring. (However this is in the microsecond range, not millisecond.)

--Toby
> Nixies, it surely dims them.____
>
> __ __
>
> *From:*neoni...@googlegroups.com
> [mailto:neoni...@googlegroups.com] *On Behalf Of *Mateusz Dziuba
> *Sent:* Thursday, January 07, 2021 1:27 PM
> *To:* neonixie-l <neoni...@googlegroups.com>
> *Subject:* Re: [neonixie-l] IN-4 ghosting, once again.____
>
> __ __
>
> I did not develop specific circuit diagram for my clock, but
> it is build around this project: (please don't mind wrong
> polarity of opto. Someone draw it wrong.)
> e44b2492e18895184e259a89f71556fc.jpg____
>
> czwartek, 7 stycznia 2021 o 18:32:35 UTC+1 Bill van Dijk
> napisał(a):____
>
> Can you post the schematic? First I notice that a bright
> 1 has a ghost 2, and it seems every number has a ghosted
> lower number. Could be timing (discussed many times), or
> perhaps the KD1551s are too slow depending on your
> multiplex speed. What is you multiplex sequence, i.e.
> 2x3, 3x2, 1x6 ?____
>
>  ____
>
> Bill____
>
>  ____
>
> *From:*neoni...@googlegroups.com
> [mailto:neoni...@googlegroups.com] *On Behalf Of
> *Mateusz Dziuba
> *Sent:* Thursday, January 07, 2021 12:21 PM
> *To:* neonixie-l <neoni...@googlegroups.com>
> *Subject:* [neonixie-l] IN-4 ghosting, once again.____
>
>  ____
>
> Hi all,____
>
>  ____
>
> I am working on nixie clock and experiencing ghosting
> between neighboring tubes. Please see attached photo.____
>
>  ____
>
> 1.jpg____
>
>  ____
>
> I am using 6xIN-4 nixies, Arduino with Atmega328,
> 6xTLP627 transoptor for driving anodes and K155ID1 chip
> for driving cathodes. I am multiplexing nixies in
> interrupt. Code attached.____
>
>  ____
>
> What i tried so far:____
>
> 1. I connected 10x 1N4148 fast switching diodes from
> cathodes bonding points to mid voltage of 90V. It didn't
> help a bit and increased power consumption only.____
>
> 2. I removed the diodes and tried "center-pull" all
> anodes and cathodes bonding points through 500k ohm
> resistors. Didn't help, although reduced decay of anodes
> after switching off.____
>
>  ____
>
> Some photos below:____
>
> 4.jpg____
>
> 5.jpg2.jpg3.jpg____
>
>  ____
>
> What comes to my mind, I might try to increase/rewrite
> blanking interval but i am not sure how to do it inside
> interrupt. Maybe I should rewrite it to the main loop.____
>
>  ____
>
> All help, comments, suggestions are welcome. ____
>
> --
> You received this message because you are subscribed to
> the Google Groups "neonixie-l" group.
> To unsubscribe from this group and stop receiving emails
> from it, send an email to neonixie-l+...@googlegroups.com.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/neonixie-l/ed921226-078c-4a66-bae2-bf79fad2b9b8n%40googlegroups.com
> <https://groups.google.com/d/msgid/neonixie-l/ed921226-078c-4a66-bae2-bf79fad2b9b8n%40googlegroups.com?utm_medium=email&utm_source=footer>.____
>
> --
> You received this message because you are subscribed to the
> Google Groups "neonixie-l" group.
> To unsubscribe from this group and stop receiving emails
> from it, send an email to neonixie-l+...@googlegroups.com.
>
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/neonixie-l/e3a07d84-34e0-4f4a-9ab1-65ff8e128d2dn%40googlegroups.com
> <https://groups.google.com/d/msgid/neonixie-l/e3a07d84-34e0-4f4a-9ab1-65ff8e128d2dn%40googlegroups.com?utm_medium=email&utm_source=footer>.____
>
> --
> You received this message because you are subscribed to the Google
> Groups "neonixie-l" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to neonixie-l+...@googlegroups.com
> <mailto:neonixie-l+...@googlegroups.com>.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/neonixie-l/a9de3c84-6a4d-4ae1-a77b-f89197a43173n%40googlegroups.com
> <https://groups.google.com/d/msgid/neonixie-l/a9de3c84-6a4d-4ae1-a77b-f89197a43173n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Reply all
Reply to author
Forward
0 new messages