Nixie Display (4): Final Program and One Nixie

[other parts of this series]

By now I had two working Arduino programs (sketches) and a PHP script on my own web server. When you call it (type in it’s address: http://mixedtinkerings.com/tillefon/calcscplays.php?SCUserID=0&SCApiClientID=JlZIsxg2hY5WnBgtn3jfS0UYCl0K8DOg) the PHP script uses the SoundCloud API to retrieve JSON-formatted information about a user and a list of all of a user’s tracks. From this the script calculates the total play count of that user and gives it as a JSON-formatted object.

One of my Arduino sketches was getting this total play count from the PHP script by calling it up and put the number into a variable. The other Arduino sketch can take any given number and send it to the shift registers so that the corresponding glyphs inside the Nixie tubes light up.

Marrying the two Arduino sketches that I got working was actually easier than I thought. To test the result I added a routine that makes the Nixies count from 0 to 9 in unison. This is also helpful to prevent what is called cathode poisoning. It occurs if one of a Nixie’s glyph stays lit for too long. That’s why I make the Nixies cycle through all their glyphs overtime the total play count changes.

So far I have only added one actual Nixie tube to my breadboard test setup. I have yet to solder all the connections to the rest of my Nixies.

Download my Final Sketch

Nixie Display (3): Serializing Digits

[other parts of this series]

Next I had to come up with some Arduino methods that would take a number and make a series of 0s and 1s out of it and then output those through the pins of my chip to the shift registers that are switching the Nixie digits on and off.

This is the Arduino sketch I made. Without a lot of help of my dear friend O. I wouldn’t have made it. If you want to have a look, you can download the sketch.

I then attached some LEDs instead of the first Nixie Tube so I could check the functionality without getting involved into that horrid 160V business just yet.

Nixie Display (2): APIs and Parts

[other parts of this series]

The first thing I did was go on eBay and buy twelve cheap Nixie IN-12A tubes. They don’t have the decimal point like the IN-12B but I don’t need it.

Then I watched Dave’s EEVBlog videos again quite a few times and I was able to screen capture his schematics for the electronic layout. The whole system relies on a Wemos D1 mini. This is a micro controller with built-in WiFi than can be programmed using the Arduino software on you computer. To actually switch on the Nixies which require 160V Dave found some really cheap shift registers called TPIC6B595 that can handle the high voltages.

Next I bought a high voltage power supply on eBay. It was a set containing a little PCB, all the components and a manual. I had some breadboards and jumper wires still lying around at home.

While I waited for all the goodie to arrive I fired up the Arduino software on my laptop and began programming the Wemos D1 mini. The sad thing was that I couldn’t find the code that Dave had written for his own project so I was stuck having to come up with my own code. I am NOT good at this so it took me quite a while to understand what I had to do. And I’m still not done yet. But I have made some really good progress.

My research involved getting to know the SoundCloud API and learning how to get to the numbers that I need through it. Since there’s no way to ask for the total play count of a given user, I had to parse an answer that is in the JSON format that holds a huge list of all of a user’s tracks including descriptions, keywords and everything else. I had to find the number of plays for every single track in this huge mess of characters. To do this with Arduino, I installed the famous Arduino JSON library and looked at the example code they provide with it. It took me a while to figure out that the SRAM memory of the tiny micro controller I use is way too small to hold that entire string. So I failed searching or parsing the string for the entries I needed.

My brother came up with an idea for a solution to this: write a PHP script for your WordPress server, then you give it the SoundCloud user ID and your own secret API ID key handle and it returns the total number of plays! Yay! For a big server computer the parsing of a huge JSON string is no problem. And the tiny answer that it gives can be parsed by the Arduino running on the Wemos D1 mini.

Download the PHP script or try it out at
http://mixedtinkerings.com/tillefon/calcscplays.php?SCUserID=0&SCApiClientID=JlZIsxg2hY5WnBgtn3jfS0UYCl0K8DOg

The Arduino sketch I have so far logs into my WiFi, reads the answer that my PHP script gives and prints it on the serial monitor. I am sooo happy!

Download Arduino sketch here to look at it!

As soon as my shift registers arrived, I started to place them on my breadboards. I don’t want to connect the hight voltage yet and that’s why my next step will be using LEDs instead of all the segments of the tubes to try out if my software works. Since my software is not finished yet, I stopped putting stuff together on the breadboard so I can focus on getting the numbers out of the computer chip into the real world!

Nixie Tube Display (1): Play Counter for SoundCloud, The Idea

[other parts of this series]

I want to build a counter display that tells me how many people have hit PLAY on my track on SoundCloud in total in all times so far. The idea came to me when I watched Dave’s EEVblog Youtube video of his Nixie Tube subscriber display he made out of his YouTube silver award. Of course for SoundCloud the project has to be tweaked a little.

As I progress I will make new entries in this series of blog posts about the nixie counter display. Click here for a

list of all posts related to the Nixie display project.

My First Multimeter: “DT-3800” From 1990

This is my very first multimeter. I bought it in 1990 when I was 14 years old. Back then it cost DM50,- (Deutsche Mark in West Germany). It still works, though I don’t really use it anymore. Its best feature is its instant continuity buzzer.
8)
Today I use a Fluke 177 and the EEVblog multimeter.

My DT-3800 multimeter is still working.

Fluke 177 and EEVblog’s Brymen 235