Re-use LEDC68 Old Gotek Display

Introduction: Re-use LEDC68 Old Gotek Display

I have several Gotek Floppy disk drives all of them have been upgraded to flash floppy, to allow them to be used on retro computers. This software allows for various additions to the standard Gotek drive, notably the 3 digit LED display can be upgraded to OLED displays.

Having done that you get left with lots of 3 digit LED displays, I don't like just disposing of them. And lots of other people seem to have them listed on E-bay and the like. The problem is software support for them seems to be almost non - existent - Until Now.

I modified / wrote a library for the popular Arduino board for this display module. This is how you use it.

Supplies

Your old display from Gotek Drive. Ebay and the like.

Library, Download the project https://github.com/coopzone-dc/GotekLEDC68 as a zip file.

Step 1: Install the Driver Library From GitHub

The first step is to install the library into your Arduino/libraries directory.

Download the project https://github.com/coopzone-dc/GotekLEDC68 as a zip file.

Locate your libraries directory, it's almost always in the folder that your existing projects are saved. Unless you have customised your setup, it will be a folder called Arduino/libraries. For example on my linux laptop it is $HOME/Arduino/libraries. On a Mac OX x it may well be in the Documents/Arduino/libraries folder.

When you have found it, unzip the file into the folder, for example on linux.

cd Arduino/libraries

unzip ../../Downloads/GotekLEDC68-master.zip

On windows you would use "extract to..." and choose your libraries folder.

When it's in place restart the Arduino program to pick up the changes.

Step 2: To Test Your Display Load an Example Programs.

Use the Arduino main menu, File - Examples - Look for "examples from Custom libraries" then find "Gotek-LEDC68-Master"

When it's loaded, you can customise the Pins to use to connect to the display, the defaults are:

#define CLK 3//pins definitions for TM1651 and can be changed to other ports
#define DIO 2

Referring to the picture above, connect the display to the following pins:

Vcc = 5v Power on Arduino

Gnd = Gnd on Arduino

CLK = Digital pin 3 D03 on Arduino

DATA (DIO) = Digital pin 2 D02 on Arduino.

At this point you should be able to compile / upload the sketch and the display will show a count

Step 3: Using the Library With an ESP8266 Node-MCU Clone

Here is a picture of the library demo counter program running on an esp8266 module development kit, it's a cheap version of a nodemcu and works ok.

I have to change the names of this pins to use in the demo counter program from 2,3 to D2,D3 like this:

#define CLK D3//pins definitions for TM1651 and can be changed to other ports
#define DIO D2

You then then connect the display:

pin D2 to CLK

pin D3 to DATA

pin 3V to VCC

pin GND to GND

It seems to work ok at 3.3 volts, BUT keep in mind the datasheet implies 5v operation. In fact I tried this on a stm32 clone and could not get it to work. I suspect the on board 3.3v power supply was not up to it. After all 3 LED displays can draw 160ma when running.

Step 4: Going Further Next Steps

Now you can re-use this useful 3 digit display that would otherwise been sitting in your parts bin! Driving you mad every time you looked at it and thought one day i'll use that....

See the wiki page on Github for further reading, https://github.com/coopzone-dc/GotekLEDC68/wiki

Have fun

Be the First to Share

    Recommendations

    • Back to School: Student Design Challenge

      Back to School: Student Design Challenge
    • Micro:bit Contest

      Micro:bit Contest
    • Lamps and Lighting Contest

      Lamps and Lighting Contest

    8 Comments

    0
    matelot2
    matelot2

    4 months ago

    Thanks for producing that coopzone.
    I also have a number of displays after removing them from the gotek units for my BBC's.
    I got the same power result as you did with the stm32, it is running on a nano but at 5v as the nano fails to work using the 3v3 pin?
    All the same it is good of you to have spent the time on it and the wiki site shows all the instructions. Thank you.

    0
    sreaves
    sreaves

    Question 7 months ago on Step 4

    I have what may seem like a strange request. I want to go the other way. I would like to be able to use the small 128 X 32 0.91 inch OLED display on my standard Gotek firmware so that the OLED display emulates the 7 segment LED display. So what I need is code that will read the display data from the Gotek and then send code to the OLED display. As I am a hardware guy I don't have the skills to do this. Is there anyone out there that could do this with a small micro? The reason I want to use the standard Gotek firmware is that the Flash Floppy as good as it is does not work well for my application. Thank you

    0
    coopzone
    coopzone

    Reply 7 months ago

    As far as I know the "standard software" is not averrable to the world at large and when it's installed it's locked so can not be read from the drive. It would require an extra MCU to pretend to be the LED display controller - a bit of an overkill to say the least. I would recommend opening a bug or request on the flash floppy site, you probably stand more chance of a response on that than you do of getting the source code from the manufacturer. I don't know of anyone doing this sort of thing the other way, sorry.

    0
    sreaves
    sreaves

    Reply 7 months ago

    Hi Coopzone. Thanks for writing back. Since I am I hardware guy what you are saying about the extra MCU is exactly what I would like to do. I think a small micro could do this and I probably could find someone to code it. So it would help me if you could describe your code to me in a timing diagram or a detailed description so that a non Arduino code reader could understand. Will your code work with the two digit displays that use the IIRC 74195 registers as well?
    Thank you!

    0
    coopzone
    coopzone

    Reply 7 months ago

    ok, not familiar with IIRC 74195, In reality all i did was take the standard LED display driver that is in the Arduino library (it's normally a 4 digit driver for a different chip in the same range). Then changed the timings etc to match the data sheet (example https://datasheetspdf.com/pdf-file/949585/TitanMicro/TM1651/1). You, of course, would have to write/change the code to receive the codes to match the data sheet and use the OLED library to display the results. Assuming you would use something like an atmega 328A as the AVR. It would get a lot more complex to recode the libraries for other devices. I may know roughly what is needed but i don't have any time available to do and probably not enough experience either!. Anyone who codes in c or c++ should be able to understand my library, combined with the data sheet info, it should be possible.

    0
    coopzone
    coopzone

    Reply 11 months ago

    Your welcome, i hope it's useful to you.

    0
    coopzone
    coopzone

    Reply 11 months ago

    Your welcome - hope it's usful