04 May 2023

No output from Arduino TVOUT examples

I am in the process of reverse engineering an industrial monochrome 12" monitor, mainly trying to figure out the pinout to drive it.

My initial analysis of the circuit, based on TDA1175 and TDA1180, concluded that it needed a composite video. So I programmed the PAL sample of the TVOut Arduino library on a Nano (clone) and got nothing. I got no signal on the TV, and nothing was moving under the oscilloscope scrutiny.

The library is scarcely documented, but reading here and there I understood that the resulting circuit was originally meant to produce overlay text on an existing video stream. This means that the Arduino sketch needs a sync input to stay ... in sync. Without an input sync, there's no composite output (this was confirmed later).

I checked the code and in the setup() portion there is this initialisation call:

TV.begin(PAL|OVERLAY);

Well, changing it to remove the OVERLAY requirement like this:

TV.begin(PAL);

Recompile, reflash ... and the composite video comes out.


Green phosphors here I come!

27 March 2023

IC decapping with paint remover heat gun

I'm not sure where I read about an easy way to decap integrated circuits with heat, but it's certainly not three years ago (when the author published his demonstration video):


Well, while looking for something else in a storage area I found a good candidate to try the same experiment, but in WDIP package: a part marked R3268B with no daatsheet on the Net.

It takes more time to setup the heat gun (paint remover) that doing the job itself. The plastic case gets brittle with heat and it breaks in small pieces. Be careful they don't fall inside the heat gun.

This is the result of my first exposed IC:


I think I was unlucky as something covers the active area. The other side is uniform, like a large ground plane. I could see that pins were quite thick, so perhaps the IC was a motor driver or something that carried large currents. I'll try again with other chips.

 

 

 

08 December 2022

Behringer BX1200 Ultrabass

A friend's son plays bass. He was given a Behringer BX1200 Ultrabass combo amplifier with some problems, and he asked me for help.

The amplified bass was distorted, but using a back panel input the output was ok. Then the fuse blew up and that was the end of their troubleshooting. So they brought it over together with a schematic diagram found online (revision H in our case), which is very helpful.

At the first glance I noticed something weird at the front input sockets, that I had to rebuild following the schematic. Actually I wired it for a passive instrument because someone had removed the switching sockets in favour of simple 3-terminal ones, and the boy has a passive bass. It's a compromise I will document.

I went all the way to remove the large heatsink to check capacitors and PSU voltages, that were within specs. Hint: don't touch this area if voltages are correct. You can pick voltages across the diodes. I added the screws that secure 7815 and 7915 to the heat-sink since who came before me had forgotten them.

This gave me a working BX1200 that still needed a new master volume potentiometer. The diagram just mentions 50kB. The specific part is marked ALPS. Digging through the Alpine technical documentation I came up with these specifications:

Alpine ALPS 50k 30mm (total height) 3 pin, vertical, with collar, flat shaft, without detent, shaft length 25 mm. The closest part I could get is RK09D1130A1L, giving up the logarithmic response. We bought an Alpine part but there are alternatives too. In 2022 money one of these Alpine potentiometers costs 2€/US$.

If you have to replace the master volume pot chop off its pins and then desolder and remove what is left on the board: you will not be reusing that pot anyway! Remove all solder leftovers or the new one will not enter the holes.

That was an easy fix, at last!


26 November 2022

The 4-weeks challenge: deliver a Nixie clock from scratch

Last weekend of October a curious teenager guest noticed the Nixie clock in our living room. The most eye-catching element was the short depoisoning routine that runs once a minute. B-5750 Nixies have their numbers 0-to-9 back-to-front, which is an even more eye-catching feature.

So I quickly explained him and his family some basics of these lovely tubes, showed them my lab/workshop/messy room and of course I told them I had designed and built that clock.

The next day I came up with a self-challenge: design and build a fully functional Nixie clock that I could give the teen at our next (and probably last for a very long time) meeting four weeks ahead.

With a small personal "library" of hardware design and AVR firmware I was quite sure I could get over all the small challenges inside this project:

  • design a working circuit and receive the PCB from the fabhouse
    • sub-task: fix the KiCAD footprint for the chosen ZM1020 Nixie
  • design a suitable case and get it 3D printed (this then turned to laser cut)
  • build it without easy access to my lab for the same period of time
  • write a user's manual

The PCB was designed with KiCAD and etched by JLCPCB. To save on board space and stay into the chosen round design I used a bare AVR ATmega uC with its internal 8 MHz clock; it also drives the voltage booster. On the board I included an ICSP header which is very useful if you're debugging or adjusting the firmware code. I used a ZM1020 round top view tube

While waiting for PCBs to arrive I learned how to use OpenSCAD to design the case, which is plain geometry applied to programming. I also risked to have no AVR microcontroller for the clock as the ATmega48 doesn't have enough program memory (or I would have needed to do heavy optimizations). I managed to unbrick a couple of ATmega168 that are enough for my firmware (wrong fuse settings).

The circuit diagram was correct. The PCB was suitable, meaning I kept HV and LV separated enough. The laser cut case (two plates) was perfect and I picked it at 3.5 weeks into the challenge. In the last week I did some firmware corrections and upgrades and today the clock has been delivered to a happy teenager.

Here it is!

Single Digit Nixie Clock with ZM1020
Single Digit Nixie Clock with ZM1020



16 November 2022

Arduino based AVR ATmega fuse doctor

Given the ongoing semiconductors shortage and needing urgently a bare ATmega168/P/328/P chip, I had to reset two 168's unresponsive to the usual avrdude programmer command.

Actually I could have spent about 10€ to buy an ATmega328P rather than spend two hours assembling the fuse doctor.

According to my own blog posts, back in 2010/2011/2012 I had already built a fuse doctor, but the link doesn't work anymore. Well, I found this Fuse Reset by Thuta Kyaw on Instructables. It uses an Arduino Nano, which I still had at home. This time I decided to do a permanent build, in case I will need it again 10 years from now.

My build of Thuta Kyaw's Fuse Reset.
My build of Thuta Kyaw's Fuse Reset.

Building it with wires requires patience and a steady hand. There is no radiofrequency involved, so there's no need to do careful planning of the layout.

Operation is easy. Fit the ATmega patient in the socket, apply 12V, wait few seconds for the LED to switch off. Enjoy.

07 November 2022

OpenSCAD for 3D printing

If you are a software programmer/developer of some sort in any high-level language and you need to design an object for 3D printing, I think that OpenSCAD is for you.

I am designing a case around a PCB I have ordered. It's a cylinder with a diagonal cut, three supports for the PCB and two holes for the buttons. In OpenSCAD the final object is described as sum/difference of basic shapes (cylinder, cube, ...) in a simple programming language.

The GUI provides both auto-completion and 3D preview.

The following code makes an empty cylinder with a diagonal.Try reading it through:

module cylcut()
{
    difference()
    {
        difference()
        {
            cylinder(h=80, r=39);
            translate([0,0,-1]){
                cylinder(h=82, r=37);
            }
        }
        
        translate([-40,-40,80]){
            rotate([-20,0,0]){
            cube([100,100,40]);
            }
        }
    }
}

cylcut();

There is a long way to go and learn before I get to the STL file for the printer, but I like it!

18 October 2022

HP 3734A Electronic Counter

I really enjoyed Mombarone HAM Fest (near Asti, Italy), October 2022. The visitors flow was relaxed and I could spend time looking above and below stands.

In a corner I spotted a device that supposedly contained Nixie tubes. The seller, who had a stand of regular wristwatches, said: "it's for the Nixies". It was wrapped in plastic, I could see it had physical damage. He asked 15€ but had no change, so I raised the swap to 20€, which is closer to the current ZM1022 quotation (2022AD). That's 4€ per tube, plus the transformer and .... a true HP device!

So I got an "HP 3734A Electronic Counter". The Nixies tested OK for gas but one side of the case has heavy damage with broken aluminium brackets! The plastic display bezel is broken as well as a corner of the protective glass (it is composed of an orange plastic sheet over a clear glass).

As looked from above it is also not square but a bit rhombic. Nothing a light hammer and a 3D printer cannot fix, right?

Since I had nothing to loose, I powered it up (with the right "163" cable). This was the pass mark to decide on fixing or scrapping the whole device (minus the Nixies).Well, the verdict is "fixing" since it did power up! Without smoke.


I haven't found a free PDF manual online, but it's not that hard to understand how it works, showing either a frequency or its period. Unfortunately it doesn't work even if the internal 100 kHz oscillator is runnng.

There is also a pulse counter function controlled with start/stop/reset buttons which obviously bypasses all signal conditioning and averaging circuitry. It counts either an EXTernal or and INTernal source. Well, selecting "INT" on the front knob combined with "INT" on the backside switch makes the counter use its own 100 kHz clock as source. Et voilĂ , Nixies were running as soon as I hit "START".

If the case can be re-aligned and rebuilt, there is enough working electronics to make a five digit clock. A big plus is that input/start/stop controls are available on the back panel too so everything can be hidden inside or behind. Nice!

HP 5512A-4A display boards

Each Nixie is mounted on a removable board. The concept of this 3734A is similar to HP 5212A, 5512A, 5232A, 5532A counters from the same lustrum (1960-1965) as they share the display architecture. Earlier 5512A had the option to install a board with 10 neon lamps or with the "inline" indicator (a Nixie).

I will look for a manual of these other devices to grab an idea of the circuit diagram.

 

 

HP 5512A-4A insideEach display board uses a mix of transistors and a rudimentary integrated circuit as visible in the last picture (click to enlarge as usual).


Next step is to remove all boards and try to straighten the case.