IV-27M IceTube Clock Project

IV-27M IceTube clock Rev. 0.38 board oper­at­ing on 5.25 volt supply

Adapting the IV-18 IceTube clock design to use the 13 dig­it IV-27M VFD tube.

After suc­cess­ful­ly build­ing sev­er­al of the IV-18 revi­sion 2.2 clocks, and hav­ing an abun­dance of spare time due to the COVID-19 pan­dem­ic, I decid­ed that I want­ed to build a project that uti­lized the 13 dig­it IV-27M VFD dis­play tube.
My first thought was to build a cal­cu­la­tor to uti­lize the added dig­its, until I received a request from my wife for a clock that dis­played the day of the week con­stant­ly. That would def­i­nite­ly put to use the extra dig­its of the IV-27M tube, so I start­ed to see what changes would need to be made to adapt the IceTube clock design.

Maxim Integrated MAX6921AQI VFD dri­ver IC

The first issue was that the IV-27M tube need­ed dri­vers for 22 ele­ments and grids to uti­lize the full capa­bil­i­ties of the tube, and the MAX6921 dri­ver IC only has 20 out­puts. Another issue is that the IV-27M tube has con­nec­tions on both ends of the tube enve­lope, requir­ing some traces along the full length of the board. That was not a big prob­lem, but was some­thing to think about if I want­ed to main­tain a sim­i­lar board width to the IV-18 design.

Luckily the MAX6921 has a ser­i­al inter­face data out­put, DOUT, allow­ing any num­ber of devices to be cas­cad­ed on the same ser­i­al inter­face. So I start­ed my design using two of the MAX6921 IC’s and plac­ing them on oppo­site ends of the board near their asso­ci­at­ed tube connections.

The next issue was the the low­er fil­a­ment sup­ply volt­age of the IV-27M tube. The tube spec­i­fi­ca­tions call for 3.15 volts at 180 mA cur­rent, com­pared to the 5 volts at 85 mA cur­rent of the IV-18 tube.
In my first pro­to­type design I used the exist­ing LM317 volt­age reg­u­la­tor for the fil­a­ment sup­ply with dif­fer­ent set­point resis­tors for 3.15 volts and added extra area on the board as a heat-sink to hope­ful­ly han­dle the extra cur­rent. I end­ed up adding an extra heat-sink to the top of the LM317 reg­u­la­tor in the pro­to­type board as it was still run­ning very hot.

IV-27M IceTube clock Rev. 0.3 oper­at­ing on a 9 volt sup­ply with extra heat-sink

After build­ing the revi­sion 0.3 board, I was­n’t hap­py with the amount of heat gen­er­at­ed in the fil­a­ment reg­u­la­tor, so I start­ed look­ing at alter­na­tive designs for the cir­cuit. The prob­lem was that I was ask­ing the LM317 to dis­si­pate con­sid­er­able wattage to deliv­er 3.15 volts from a 9 volt sup­ply which is a 5.85 volt dif­fer­ence. At 180 mA of cur­rent for the fil­a­ment, the pow­er dis­si­pat­ed was (5.85 * 0.180 = 1.053 watts).
The easy way to solve this prob­lem was to reduce the sup­ply volt­age for the reg­u­la­tor to reduce the volt­age drop across it. I briefly looked at uti­liz­ing the reg­u­lat­ed 5 volt sup­ply, but quick­ly dis­missed that. The solu­tion that I came up with was to switch from a 9 volt main pow­er source to 5.25 volts.
Why 5.25 instead of 5.0 volts? Mainly because I want the ATMEGA 328P micro­proces­sor and the VFD boost con­vert­er to oper­ate as close to 5 volts as pos­si­ble, and there are sev­er­al ele­ments such as the fuse, block­ing diode, and pro­tec­tion diode which can reduce the input volt­age significantly.

Most of the Raspberry Pi pow­er sup­plies have volt­age out­puts greater than 5.0 volts to make up for the volt­age drop in the cables, con­nec­tors, fus­es, and pro­tec­tion cir­cuits in some of the mod­els. I found a sup­ply with a nom­i­nal 5.25 volt out­put that was more than capa­ble of sup­ply­ing the required cur­rent.
I then redesigned the clocks pow­er cir­cuit­ry so that every­thing was on the 5 volt bus. This involved increas­ing some trace widths and adding a MAX40203A “Ideal Diode” in the sup­ply cir­cuit to reduce the volt­age drop from the pre­vi­ous Schottky diode that was pre­vent­ing reverse cur­rent to the bat­tery sense cir­cuit. The MAX40203A has a volt­age drop that is an order of mag­ni­tude small­er than that of Schottky diodes. In the 5 volt sup­ply cir­cuit at a cur­rent of 220 mA the Ideal Diode should have a for­ward volt­age drop of 81 mV.
The HV sup­ply for the anode-seg­ment volt­age was capa­ble of gen­er­at­ing the need­ed volt­age even at 5 volts input with a change in the PWM sig­nal width in firmware. I end­ed up with a volt­age of 33 volts nom­i­nal at a medi­um out­put brightness.

IV-27M IceTube clock Rev. 0.38 bare main board

I then changed the fil­a­ment volt­age reg­u­la­tor to a fixed 3.2 volt Ablic U.S.A. S‑13A1A32-U5T1U3 unit in a SOT-89–5 pack­age with a expand­ed board heat-sink area for heat dis­si­pa­tion.
The design changes worked well with the fil­a­ment reg­u­la­tor just notice­ably warm to the touch after oper­at­ing for sev­er­al hours.
I also added a Maxim DS32KHZ TCXO crys­tal oscil­la­tor in a SO pack­age, instead of the stan­dard quartz crys­tal and load capac­i­tors.
I had used a dip pack­age ver­sion of the DS32KHZ on the ver­sion 1.31 IceTube clock, and was extreme­ly impressed with the very low drift.

IV-27M IceTube clock Rev. 0.38 assem­bled main board, sec­ond prototype

I am cur­rent­ly oper­at­ing the fil­a­ment in DC_FWD mode instead of one of the AC fil­a­ment modes until I can trou­bleshoot some issues in firmware with the AC modes. It is work­ing very well in DC mode with no notice­able vari­a­tion in dis­play inten­si­ty between digits. 

IV-27M IceTube clock VFD dis­play tube with 11 and 15 pin tube end to main adapter boards

The IV-27M tube required new side­boards for each end of the tube. One tube end has 15 pins and includes both ele­ments and grids, while the oth­er end has 11 pins and has only grids and the fil­a­ment con­nec­tions. I uti­lized a 16 and 12 pin right angle head­er for con­nec­tion to the main board.

A very nice IV-27M pinout from the Ebay auc­tion where I pur­chased the tubes

The next hur­dle was mod­i­fy­ing the firmware to uti­lize the extra dig­its of the IV-27M tube.
I was able to get with the orig­i­nal author of the Xmas Icetube clock, John Archie who point­ed me in the right direc­tion for mak­ing the changes.

Here are the changes I made in the display.c file to uti­lize the sec­ond MAX6921 dri­ver chip:
red — orig­i­nal code / green — updat­ed code

con­st uint8_t vfd_digit_pins[] PROGMEM = {
3, // dig­it 9 (dash & cir­cle)
7, // dig­it 8 (left­most dig­it)
8, // dig­it 7
9, // dig­it 6
6, // dig­it 5
10, // dig­it 4
5, // dig­it 3
12, // dig­it 2
4, // dig­it 1 (right­most dig­it)


// vfd seg­ment selec­tion wires are on these MAX6921 pins
con­st uint8_t vfd_segment_pins[] PROGMEM = {
11, // seg­ment H
16, // seg­ment G
18, // seg­ment F
15, // seg­ment E
13, // seg­ment D
14, // seg­ment C
17, // seg­ment B
19, // seg­ment A

con­st uint8_t vfd_digit_pins[] PROGMEM = {
12, // dig­it 14 (v‑bar dash & cir­cle IV-27)
13, // dig­it 13 (left­most dig­it IV-27)
18, // dig­it 12
17, // dig­it 11
16, // dig­it 10
15, // dig­it 9 was IV-18 (dash & cir­cle)
14, // dig­it 8 was IV-18 (left­most dig­it)
23, // dig­it 7
26, // dig­it 6
25, // dig­it 5
28, // dig­it 4
27, // dig­it 3
21, // dig­it 2
20, // dig­it 1 (right­most dig­it)


// vfd seg­ment selec­tion wires are on these MAX6921 pins
con­st uint8_t vfd_segment_pins[] PROGMEM = {
5, // seg­ment P was (H on IV-18)
10, // seg­ment G, M
7, // seg­ment F
9, // seg­ment E
11, // seg­ment D
8, // seg­ment C, S
6, // seg­ment B
19, // seg­ment A, W

// bits to send MAX6921 (vfd dri­ver chip)
uint8_t bits[3] = {0, 0, 0};
uint8_t bits[5] = {0, 0, 0, 0, 0};

uint8_t bit­flag = 0x08;
for(int8_t bitidx=2; bitidx >= 0; –bitidx) {
for(int8_t bitidx=4; bitidx >= 0; –bitidx) {

Next I made some changes in the mode.c file switch(time.timeformat_idx) sec­tion to change the time dis­play for­mat­ting and adding the extra dis­play information.

I am still wait­ing on a back-ordered switch for the alarm on/off cir­cuit, but for the most part pleased with the final IV-27M clock assem­bly.
I still also need to design and laser cut an enclo­sure for it.
I have exhaust­ed my sup­ply of IV-27M tubes for now, but may build some more next year.

EagleCAD V7.7 board and schemat­ic ZIP file for IceTube Clock Rev. 0.38

Firmware ZIP file for IV-27M IceTube clock includ­ing pre-com­piled .HEX files

OSH Park cir­cuit board fab­ri­ca­tion Main board Revision 0.38
OSH Park cir­cuit board fab­ri­ca­tion 15 pin Sideboard Rev. 0.3
OSH Park cir­cuit board fab­ri­ca­tion 11 pin Sideboard Rev. 03

7 Replies to “IV-27M IceTube Clock Project”

  1. I’m hav­ing a hard time fig­ur­ing out the firmware for hex, can’t you send in the Atmega firmware code? I use AVR ISP Shield. Thank you .

    1. Hi Andrei,
      I do not have a list (Bill Of Mate­ri­als) of PCB components.
      Most of the parts are well doc­u­ment­ed in the schemat­ic. Check the part “attribute” and “prop­er­ties” infor­ma­tion in Eagle CAD.
      Some of the parts I used were “new old stock” with­out part num­bers. I cur­rent­ly do not plan on build­ing any more
      of these clocks, so I hope you can under­stand, that I do not want to spend the time to build a BOM and keep it up to date.

      Greg (Barbouri)

      1. Hi Barbouri,
        Thanks for the reply.
        This week I found the same tube from a local flea mar­ket and decid­ed to try to make a clock from this.
        Searched all the inter­net for details and strange thing that every­body used to make clocks from IV-18 and nobody from IV-27m.
        Nobody did, except you and some Japan guy 🙂 Link Above.
        So ques­tion is: will oth­er IV-18 projects will be com­pat­i­ble with this tube? Except that only few grids will not be available?

        Is pret­ty hard to find MAX6921AQI, and I see that Japan guy used 3 TD62783AFG dri­vers which are more avail­able and cheap.
        Will your project be com­pat­i­ble with TD62783AFG?

        1. Hi Andrei,
          I doubt that any IV-18 projects will be direct­ly com­pat­i­ble, as the tube pinouts are very dif­fer­ent along with the oper­a­tional voltages.
          The TD62783AFG IC’s are only dri­vers, and the MAX6921 has an I2C inter­face along with the dri­vers. So not compatible.

          Greg (Barbouri)

Leave a Reply

Your email address will not be published. Required fields are marked *