Reverse engineering vintage Japanese electronics - a vacuum fluorescent display!

Поделиться
HTML-код
  • Опубликовано: 31 дек 2024

Комментарии •

  • @rosendo843
    @rosendo843 5 лет назад +1041

    Bug is he forgot to declare int i = 0, so i takes on a random value probably in the order of millions (negative or positive)

    • @StrangeParts
      @StrangeParts  5 лет назад +254

      Bingo! I found it a few minutes later.

    • @rosendo843
      @rosendo843 5 лет назад +86

      @@StrangeParts Relatable C programming problems :P

    • @tim.e.l
      @tim.e.l 5 лет назад +4

      damn too fast for me.

    • @rosendo843
      @rosendo843 5 лет назад +42

      @M. de k. You're correct. But in appearance It's a random number, and it's an easier way to explain in youtube comments.

    • @fidelgutierrezvieyra7906
      @fidelgutierrezvieyra7906 5 лет назад +2

      @@StrangeParts you are the best and my source of inspiration

  • @giacomo.delazzari
    @giacomo.delazzari 5 лет назад +67

    A cool tip for when you're trying to interface with "strange parts" you don't know a lot about and don't want to blow up (especially in the case of messing up inputs and output pins or voltage levels), is to put series resistors (IDK, around 1K) on all digital signals. That way you limit the current if something bad happens (like both ends forcing opposite voltage levels on the same wire). Keep that in your "toolset" :)

    • @HMPirates
      @HMPirates 5 лет назад +5

      Thank you!!

    • @sstorholm
      @sstorholm 5 лет назад +6

      These are the things that you never get taught except in inexplicable places like youtube comments. :)

    • @emmanuelrodriguez2346
      @emmanuelrodriguez2346 5 лет назад

      @@sstorholm Actually

    • @the_perigoso
      @the_perigoso 5 лет назад +5

      100 ohms is usually enough, and avoids some problems with weak pull ups/downs and higher speed signals, and yeah, you don't get taught this in school

    • @gummy1651
      @gummy1651 Год назад

      thanks

  • @salutoitoi
    @salutoitoi 5 лет назад +171

    I really like how you show your difficulties because we all make the same mistakes after all. Cheers !

    • @sadiehallinger1401
      @sadiehallinger1401 5 лет назад

      Well, he does that to make longer videos to get more revenue :)

    • @honey78665
      @honey78665 5 лет назад +1

      @@sadiehallinger1401 ^^The glass is half empty kinda guy.^^

    • @sadiehallinger1401
      @sadiehallinger1401 5 лет назад

      @@honey78665 Hello! Well, that's how he makes his cash to travel and smile :)

    • @emeldajohn5760
      @emeldajohn5760 3 года назад

      F

  • @LReBe7
    @LReBe7 5 лет назад +152

    You always run into Hofstadter's law: it always takes longer than you expected, even if you take Hofstadter's law into account.

  • @gsuberland
    @gsuberland 5 лет назад +228

    "Hey, little VFD display, how are you?"
    "AAAAAAAAAAAAAAAAAAAAAA"

    • @TheDVDwr
      @TheDVDwr 5 лет назад +11

      more like AYAYA AYAYA AYAYA !!!

    • @MOSKAU15
      @MOSKAU15 5 лет назад +4

      Why are you running?!?

  • @TheMrDjrobert
    @TheMrDjrobert 5 лет назад +3

    WR = the read write pin, with this you select if you want to read or write to/from the display
    CS = Chip select this is a very common pin in parallel/serial busses. It lets you wire your parts up into an actual bus. You pull this low (or high depending on the chip) to let the chip know you want to talk to this specific chip.

  • @MrNoahAmbrose
    @MrNoahAmbrose 5 лет назад +5

    Just wanna let you know I greatly enjoy watching you write and troubleshoot the code. Not boring at all.

  • @Juandrumx
    @Juandrumx 5 лет назад

    I think I watch you first a year or so ago maybe more? When you had yourself a project old making your own Apple phone from parts that were sold somewhere in China or Japan. Can't even remember what I watched exactly. I'm not a technician but I once took a VCR and computer repair class so I appreciate real technicians, or Engineers like you. I see what you guys do as an art form and I appreciate your intelligence. Sometimes it's like entertainment or like reading a book and seeing someone else's struggle and success. God bless you. Stay safe. Thank you.

  • @kyle1elyk
    @kyle1elyk 5 лет назад +19

    Those displays are pretty cool, though I love the little SPI OLED displays. You can get a decent frame rate and display a lot more info on them and colors

  • @siddharthrgoel
    @siddharthrgoel 5 лет назад +2

    W/R is generally the Write/read pin and C/S is usually the Clear/Set pin. This is similar to a lot of LCD modules available nowadays. You can also reconfigure the LCD library for Arduino to work with this display.

  • @BadTasteForEveryone
    @BadTasteForEveryone 5 лет назад +156

    Missed "= 0" was sneakily added between cuts :D Pretty interesting video, keep up the good work!

    • @StrangeParts
      @StrangeParts  5 лет назад +22

      Yeah, that's why I added the text about it:) Didn't want you to think I was trying to pull one over on you.

    • @juschu85
      @juschu85 5 лет назад +10

      The annoying thing about not initializing a variable is that sometimes it's no problem and sometimes it's messing up everything.

  • @EvasiveSnail
    @EvasiveSnail 5 лет назад +35

    Yes, just what my Saturday afternoon was missing. Cheers!

  • @electronash
    @electronash 5 лет назад +8

    2:40
    While it's true that the 3V3 Arduino Due should be able to drive the display inputs OK, watch out for the 5V levels coming back from the display. The AT91SAM chip used on the Due does not have 5V-tolerant IO pins, AFAIK.
    (a lot of these standard LCD chipsets allow you to read *from* the status register or display memory.)
    Some series resistors of say 47 Ohms will help protect the Due, but ideally there should be some proper voltage translation, like a 74HC245 or similar.
    Just a heads-up, as otherwise it could damage the Due over time.

    • @electronash
      @electronash 5 лет назад +1

      Also, beware how you handle the VFD board, as it has an inverter on there, and some of them can be surprisingly spicy when they bite. lol

    • @electronash
      @electronash 5 лет назад

      ​@Mr T. Guru
      You missed the part where I said it uses an inverter. ;)
      Sure, it wouldn't be thousands of volts, but still a few hundred.
      Perhaps only a few milliamps too, but it could still give a surprising shock, especially if it has a HV cap on the output.
      It would be somewhat similar to a small laptop backlight inverter...
      en.wikipedia.org/wiki/CCFL_inverter
      Just something to watch out for if you don't realise it's there.

    • @JamesChurchill
      @JamesChurchill 5 лет назад

      @Mr T. Guru that won't save you. 30V will instantly kill some semiconductors even if it can only source a microamp.

  • @dev7427
    @dev7427 2 года назад +1

    This video has gotten me into electronics and microcontrollers and got me interested in Arduinos and all a year and half ago. Thank you, Scotty

  • @mjinglis
    @mjinglis 5 лет назад +54

    So when do we get to see the pinball machine you are working on :P

    • @jasonk9779
      @jasonk9779 5 лет назад +5

      Patchinko is my guess :)

    • @Hobby_Collector
      @Hobby_Collector 5 лет назад +2

      @@jasonk9779 Definitely Patchinko or Coin Pusher type game

    • @thegreator
      @thegreator 5 лет назад +1

      Either slot or pachinko. Yeah, not so secret anymore.

  • @lifeinchina7758
    @lifeinchina7758 5 лет назад

    I have no idea about advanced electronics or half of what your talking about, but love your videos. good to see someone still thinks 'outside of the box'....and beklives anything is possible. Keep up the amazing work.

  • @edwardbyard6540
    @edwardbyard6540 5 лет назад

    I used these and many other VFD units in slot machines when I was programmer. The Noritake displays are good but the single line 16x1 unit has some timing issues that corrupt the display. I do love VFDs....have a look on RUclips for a Crazy Fruits UK slot machine and look at the effects we did. My favourite was the "scramble", essentially, pick random characters for the length of the final string, and as randomly displayed characters match the character of the final string, don't change that character again. Keep doing this, with a timer that keeps getting quicker, and the effect looks great. You can also "throb" the display by adjusting the brightness up and down on a timer. I loved these things.

  • @seamonkeys12y
    @seamonkeys12y 5 лет назад +6

    I swear if VFD prices fly through the roof like how videos by eevblog and HBO cause other products to skyrocket I'm going to come find you Scotty!

  • @GringoBG54
    @GringoBG54 5 лет назад

    As a software developer thats getting his feet wet in the area of electronics / embedded / system programming, this video really did give me new enthusiasm to keep on going. For example, I know bitwise operators in theory, but still can't wrap my head around their use on the PCB at library implementation level. Now I saw how it's done, hehe.

  • @tsik1919
    @tsik1919 5 лет назад +26

    "Gee, I wouldn't wanna break this rare, expensive, and intricately made part"
    *waves it around in the air with just three fingers holding it*

    • @Crimsen13
      @Crimsen13 5 лет назад +10

      Its okay! His name isn't Linus so he should be safe.

    • @fredfarnackle5455
      @fredfarnackle5455 5 лет назад +1

      'Waves it around' is right - it annoyed the heck out of me the way he waved stuff around so fast, my old eyes can't keep up with that and I found it very annoying.

  • @7head7metal7
    @7head7metal7 5 лет назад

    I have been there with a random VFD I found in a lab. I didn‘t find a datasheet, so I tried to buzz out all the connections and routes, took me a complete sunday afternoon. But after that I stopped, because I also thought the board on the back is some custom thing I can‘t reverse engineer to show something on the display. So thanks for this interesting and encouraging video, my VFD looked surprisingly similar! If I find it again I might give it another shot.

  • @Geeksmithing
    @Geeksmithing 5 лет назад

    Dude, you are not alone in the projects taking longer than you thought and that you are tired of looking at them..... my current one is doing that to me....wish me luck as I wish you luck!

  • @FR4M3Sharma
    @FR4M3Sharma 5 лет назад +1

    Back in 2003/2004 when i was 3/4 years old My dad used to repair TVs,DVD players and VCR and stuff, so he had dozens of dead electronics which he salvaged for parts, and these fluorescent displays were there in the dozens most of them were broken in the desoldering process as he did not have all the proper equipments, one day i saw one these and it was the exact same size that our Scotty have. I took it, looked closely upon it and stared like half and hour on it before my mom screamed from the back and i dropped it because i got scared. And i cried for breaking something so extra ordinary. And as he said that this thing costs around $600 on a site. Then boy i would've been rich if only we knew that there value will fly off like that in the future. Also upon watching this video half way through i realized that the Sony stereo sound system that i have (a thing from 2000) also have this fluorescent display, Which means when it dies and can't be repaired i'll take apart the display in a heartbeat, to see what type or version it actually is.

  • @urugulu1656
    @urugulu1656 5 лет назад +6

    wr --> probably a write enable pin
    cs --> probably a chip select pin
    --> pretty standard stuff in serial circuits / ics

    • @emmanuelrodriguez2346
      @emmanuelrodriguez2346 5 лет назад

      Actually, I think they just need to be low for the display to accept the characters

  • @SirNickyT
    @SirNickyT 5 лет назад

    Ive heard 100's of audible ads but since they sponsor you I'm finally going to try it out. My fear is I love it too much tho. It's why I haven't tried it until right after this video.

  • @AmstradExin
    @AmstradExin 5 лет назад +1

    I dreamed of this and now it's here! Thank you. I even thought, "But does it do Cyryllic?".

  • @Le_Petomane
    @Le_Petomane 5 лет назад +9

    " I really dont want to drop this or break it anyway" * proceeds to throw it around like Lego bricks.

  • @Victoare
    @Victoare 5 лет назад

    I've got a similar VFD out of an POS terminal. The protocol is an confidental IBM one and i had to reverse engineer the circuit, desolder the main controller chip and sigal the five (!) shift registers directly. An ESP8266 could drive all through an additional shift register (using I2S and DMA). And by this i have pixel level control on the display with (sort of) multiple gray levels :)

  • @DM00SE
    @DM00SE 5 лет назад

    Looking forward to it. If its only half as interesting as this one it'll still be an awesome video but I bet its twice as exciting.

  • @kamals_eye
    @kamals_eye 5 лет назад +1

    I'm always excited to watch StrangeParts! Love the way that every video feels like an Adventure that the viewer is part of!A treat really! Keep up the great work!! :D

  • @ebg13
    @ebg13 5 лет назад

    The 3-pin connector is your friend, it's +5V/Serial/GND. If you ground the serial-pin it goes into demo mode and starts printing the ASCII-table one character at a time. If you want to use the serial interface with an Arduino; solder a bridge on J4 and connect TX on the Arduino to the serial-pin on the VFD and you're done. No fancy code required! I think the default baud rate is 19200.

  • @mr_mr
    @mr_mr 5 лет назад

    It's so cool that you got the display to print. Can't wait to see the secret project!

  • @RonGau
    @RonGau 5 лет назад +18

    can't wait to see what you're working on...Cheers from Canada🙋‍♂️🍁😊

    • @Stuart0870
      @Stuart0870 5 лет назад

      Isn't it fairly clear that it's a pinball machine?

    • @RonGau
      @RonGau 5 лет назад

      @@Stuart0870 yeah could be😊🙋‍♂️🍁

  • @psedog
    @psedog 5 лет назад +2

    When you printed Hello world. I smiled as well. First thing I did on an Apple IIc. Oh, the memories :D

  • @gigglesseven
    @gigglesseven 5 лет назад

    8 switches and a button to write to a 20x2 lcd display. It is awesome to see self discovery for a project like this with vintage hardware.
    Fran Blanche might interest you with the vintage things as well

  • @saikiranj807
    @saikiranj807 5 лет назад

    It's pure joy to watch you work !

  • @maxhouseman3129
    @maxhouseman3129 5 лет назад +5

    I am collecting also old displays as a hobby. I like vfds very much!
    Maybe I build some watch out of Monsanto MAN displays, that are some very small led arrays, worth to take a look on these.

  • @JippaJ
    @JippaJ 5 лет назад

    enjoyed this so much more than the whole ATM Jackpot video. Would love to see more in-depth videos on your projects.

  • @dannny1-4-1
    @dannny1-4-1 5 лет назад

    Strange parts you keep saying ur working on a secret project but those who have seen most of ur videos and is a huge fan of ur channel and electronics ..... would have a fifty-fifty idea of what the project is ...... but I cant wait for the big reveal ... anyways love your channel and love your work ur a huge inspiration.

  • @ShcherbynaM
    @ShcherbynaM 5 лет назад +3

    Hi, I think that you would better create a buffer with characters to be able to draw character at specific position, and redraw screen every 16ms (~60 Hz) using hardware timer for interruptions, this don't block the main thread (delay is a blocking function) and will consume less power.

  • @juweinert
    @juweinert 5 лет назад +2

    From my experience with shift registers, when dealing with low frequency arduinos, you don't really need to delay. I tried it once and reduced the delay and expected the registers to hickup at some point.
    But the overhead of arduino (and even in native AVR-C) together with the slow clock is often enough to provide proper and reliable latching of the data.

    • @hachikiina
      @hachikiina 5 лет назад

      better safe than sorry

    • @juweinert
      @juweinert 5 лет назад

      Well I guess if the shift registers maximum clock frequency is above the microcontrollers main clock, I'd rather save some valuable processing time...
      Btw. is your profile picture the brutally faceswopped version of Tom?

  • @NINTHSPECTER
    @NINTHSPECTER 5 лет назад

    Enjoyed you adding the coding part to the video!! Very interesting stuff.

  • @LucasOliveira-wo5bo
    @LucasOliveira-wo5bo 5 лет назад

    You used to put subtitles in Portuguese, and now there is no more, please put it back, I really like your videos

  • @eddiespencer1
    @eddiespencer1 5 лет назад

    Arduino Blog sent me. Cool project, man. I remember having a stereo and a calculator with similar displays back in the late 80's-early 90's. I think my dad's car stereo had one as well.

  • @SirNickyT
    @SirNickyT 5 лет назад

    It never ceases to amaze me how big and complex boards used to be for how little they actually did. If you really want a challenge you should look inside my original atari table top asteroids arcade machine. There's some huge boards inside and it might be one step up from pong graphically lol. I'm yet to tackle it.. it works but the scoring will randomly insert letters for numbers lol.

  • @TheHermitHacker
    @TheHermitHacker 5 лет назад

    I miss seeing these things. What a cool project.

  • @SylvainMonette
    @SylvainMonette 5 лет назад

    I remember these displays where popular in car radio's a few years back. Really enjoyed the video by the way.

  • @vladimir0700
    @vladimir0700 3 года назад

    Those old vfd displays are so cool. I have a number of them, myself. I used my old hp 48 serial port to drive them and used a 40 char. multi line unit to display reminders for myself and other timely info. Too bad they’re no longer made. I considered making a large display with a pile of dot matrix led displays but when I toted up the cost of building it I decided it was way, wat too much money. These were really cheap when they initially showed up on the surplus market. Thanks for making the video

  • @MichelSatoer
    @MichelSatoer 5 лет назад +1

    1:58 "Regardless, I really don't want to drop this..." Keeps shaking it anyway haha.

  • @edgarbonet1
    @edgarbonet1 2 года назад

    Very cool video. Thanks!
    Just a couple of remarks:
    1. The Arduino delay() function takes an integer parameter (of type unsigned long). If you want delays shorter than 1 ms, you can use delayMicroseconds().
    2. Instead of defining sendChar() and print(), you could easily implement your own class derived from the abstract Print class. You only have to implement the method `size_t write(uint8_t)` (basically your sendChar()), and then you inherit all the print() methods you enjoy with Serial, including those that convert numbers to ASCII for displaying.

  • @speakertomeat
    @speakertomeat 5 лет назад

    WR / CS is most likely Write / Chip Select, a way to tell the chip what you're sending is intended for it. In many cases (not all) this will be a low select, indicated by a horizontal line on top of CS

  • @sato4kaiba
    @sato4kaiba 5 лет назад

    @14:37 You should pay attention to the timing at the bottom left of the data sheet. When writing to the VFD controllers, you need to have a delay of 160ns. This is to give the controller time to read the information. Also the ~CS (Active LOW) is indeed Chip Select. The ~WR (Active LOW) is Write/Read. The way I understand the timing is as follows. Send data to D7-D0 and hold for 100ns. 10ns after your sent D7-D0, pull ~WR low for 160ns. You should be able to speed up your display this way.
    My Two Cents. Good work in back-engineering the communication with the VFD. This display works similar to the HD44780 LCD controller. The only different is that the HD44780 has an initialization sequence you must complete which puts it either in 8 bit mode of 4 bit mode.

  • @CandyGramForMongo_
    @CandyGramForMongo_ 5 лет назад

    Being an Eighties kid filled to the brim with 8-bit computer BASIC knowledge, am doing very similar experiments with the Colour Maximite instead of the Arduino. I was amused that you made some of the same mistakes I did!
    I’ve found that driving the segments directly instead of interfacing with the driver electronics to be more interesting. I’m just farting around with seven-segment displays at the moment, though. Still, using Ben Eater’s technique of pulling the display byte from a small EEPROM to be very fun! Without relying on a driver, I can drive any segments I want. I may try something similar with some sophisticated displays like yours.
    I really enjoyed the video. Thanks!

  • @jcreazy
    @jcreazy 5 лет назад

    The whole video I said to myself "please make it say Hello World" and you did! I'm so happy!

  • @ChrisHogevonder
    @ChrisHogevonder 5 лет назад

    @Strange Parts
    You should look up data on the HD47780 character LCD's. Those are almost certain pin compatible with the VFD you're using and there is a ton of information about using a HD47780 with the Arduino.

  • @DNAP460
    @DNAP460 5 месяцев назад

    Thank you for the video content. Many used customer display cashier machines stored in warehouses contain similar 2x20 VFD screens, hopefully the pinout is the same.

  • @RealRajatShahare
    @RealRajatShahare 5 лет назад

    I'm literally very excited to watch the video of you big project. Upload fast coz can't wait more!

  • @leef_me8112
    @leef_me8112 5 лет назад

    Both the arduino and the display have [0.1/2.54] headers. When you are working on something new, use jumper wires.
    Wire a PCB after you have something working.
    If you don't know what signals are, look for other parallel port display drivers.
    Hint CS= Chip select the bar means "active LOW" WR means write

  • @zarster
    @zarster 5 лет назад

    Already love audible. Listening to a lot of the Star Wars extended universe by Timothy Zahn. Nice choice of sponsor for sure. Glad to hear that you keep working on the project.

  • @leor2252
    @leor2252 5 лет назад

    WOW programming 101 , nice addition to the videos!!!

  • @nomfg
    @nomfg 5 лет назад +1

    int i=? is tricky to debug as the the stack is _mostly always_ initialized to 0 during a hard reset. You can almost count on it on simple chips like the cortex M family or PICs or AVRs. Yes it's a software bug but in practice it can make your product function 99.99% of the time until you have a brownout or some other weird stuff going on in the chip.

  • @Coles_notes
    @Coles_notes 5 лет назад +3

    "I could've got this up and running quicker using serial ... but ... why do the easy thing?"
    30 seconds earlier: "This project is taking wayyyy longer than expected."

  • @lazzarusbr
    @lazzarusbr 5 лет назад

    Please "NEVER STOPS TO MAKE VIDEOS"!!!! your vides is like endorphin to nerds brains!!!! I love it so much! every discovery!, every fantastic place you visit!,every fail! is so fantastic, you a kind of person! plese never stops your work! never stops to do vídeos about it! afterall you is the man to put headphones back in iphones when apple said is impossible! so yopu ar a impossible man! thanks to share your adventures! we love it so much!

  • @ttww1590
    @ttww1590 3 года назад

    I have a new appreciation for the DEVs behind LCD Smartie

  • @canadianavenger
    @canadianavenger 5 лет назад

    The controller on the VFD is often functionally the same as the HD44780 [compatible] LCD controller that is commonly used, as such the Arduino LCD lib may be able to drive it. I know the Noritake VFD's I've used in the past were compatible, with only some minor tweaks required.

  • @retro-reels5652
    @retro-reels5652 5 лет назад +1

    I’ve hoarded lots of these displays, as they look great and retro cool :0) They are from a time when electronics were built to a high standard. The Sharp EL displays are fun too.

  • @chrismarks9283
    @chrismarks9283 5 лет назад

    I loved this episode I only know a little bit of coding but it was fascinating watching you realize your errors and work around them

  • @ubidefeo
    @ubidefeo 5 лет назад

    W/R is Write/Read.
    The logic level on this determines if you're writing to the registers or reading from them.
    Yes, you can read the content of your Display Controller, which is rarely needed :)

  • @GrantOberhauser
    @GrantOberhauser 5 лет назад

    By the way, you can import your current sketch into Atmel Studio, and connect via JTAG to your Arduino Due. This will let you step through and debug your software. It will also still let you use Arduino's libraries. Doing this will wipe the bootloader from the chip as you'll be directly programming it and you'll also need an Atmel-ICE to program the chip and debug it. It might take a little bit to setup, but it's well worth it for the ease of programming/debugging it'll give later. Especially for big projects!
    I have to prototype a bunch of projects at work with Arduinos, and I never use their IDE anymore.

  • @at29c040a
    @at29c040a 5 лет назад +25

    Title is a bit misleading, it would be reverse engineering if you had no datasheet;) In any case thanks for great quality video!

  • @PeppercornVR
    @PeppercornVR 5 лет назад

    You can still buy VFD screens new, they also have i2c models with controllers within the glass. They're also comparably priced compared to LCD or OLED technology in bulk manufacturing.

  • @grantchang81976
    @grantchang81976 4 года назад

    agree on the pricing and yes they are impressive little works of solid state art

  • @maartenvanachte2512
    @maartenvanachte2512 5 лет назад

    The pin layout look very similar to a standard 20x2 LCD. have you tried using the liquidCristal library?

  • @igorteller1516
    @igorteller1516 5 лет назад

    Well done a great job Do more content, You are among the only ones to make a cellphone under home conditions👍.

  • @NickChowau
    @NickChowau 5 лет назад +22

    "i" needs to be initialized such as "i=0" in your case.

    • @seritools
      @seritools 5 лет назад +2

      @Alparslan Ali Alp not in C

    • @alexpaww
      @alexpaww 5 лет назад +2

      @Alparslan Ali Alp not in C, in C you get a random data value in if it you don't set it to something

  • @BillAnt
    @BillAnt 5 лет назад +3

    This guy's always happy, even when he fails. Great personality.
    By the way, "Char" is not pronounced as "Char"ed (burned), but "Char"ecter (as in a letter or number) ;)

    • @JamesChurchill
      @JamesChurchill 5 лет назад

      Speak for yourself, I've never encountered anyone who has pronounced it the second way :D

    • @BillAnt
      @BillAnt 5 лет назад

      I'm just thinking logically why would the shorthand for Character be pronounced "Char" (as in "char"red/burnt), wouldn't it make more sense to be pronounced just like the first part or "Char"acter? I donno, maybe i'm just overthinking it. lol

    • @JamesChurchill
      @JamesChurchill 5 лет назад

      Logic only affects language by sheer coincidence.

    • @BillAnt
      @BillAnt 5 лет назад

      Okie-Dokie then. :)

  • @kaleb_barbour3
    @kaleb_barbour3 5 лет назад +5

    3:55 love the montage music man!

  • @GideonLesson
    @GideonLesson 5 лет назад

    Investing so much time when there lcd version of this display around for a 1$ with arduino libraries and hardware already figured out. Same data protocol, same character codes probably. Only difference extra power requirements for emitters and grid. You probably never stumble upon them, but that old design based of hitachi hd44780 is still in production and popular.

  • @AppliedProcrastination
    @AppliedProcrastination 5 лет назад +1

    Awesome stuff, Scotty! Did you consider using an open source library to handle various print routines (as opposed to "println" at all times)? I assume it's often useful to just change out a single character in a line to avoid those delays/flickers when refreshing the entire screen at once(?)

    • @StrangeParts
      @StrangeParts  5 лет назад +1

      I haven't gone too far down that road yet. Just simple prints is fine for my purposes at the moment.

  • @timwalther
    @timwalther 5 лет назад

    Cool, nice job! I used to have a cash register VFD display with a serial connection wired to my pc running winamp, so I could always see what I was listening to.. But the speed of the parralel interface makes this so much cooler! When always drawing two full lines at a time , you could use it to make a simple game. Like chrome's dino jumping game..

  • @SlushSnail
    @SlushSnail 5 лет назад +1

    Back at it again!!!

  • @JOELwindows7
    @JOELwindows7 5 лет назад

    You can bind it with Arduino officialized LCD library. this Library is commonly used for that Arduino LCD, such as Hitachi 20x2 Character LCD display.

  • @sewid
    @sewid 5 лет назад +159

    You had the data sheet. This was just engineering not reverse engineering.

    • @halosrusty
      @halosrusty 5 лет назад +9

      12345nametaken no one likes a know it all, leave him be

    • @sstorholm
      @sstorholm 5 лет назад +16

      Are you actually gatekeeping reverse engineering? :)

    • @thetastefultoastie6077
      @thetastefultoastie6077 5 лет назад +21

      I feel clickbaited, I came to this video expecting reverse engineering based on the title.
      He already had a complete datasheet, nothing needed reversing.

    • @byungjaelee5110
      @byungjaelee5110 5 лет назад +12

      @@halosrusty You don't know electronics do you? It's not something to ignore. Reverse engineering and engineering is a whole new different story.

    • @FilamentFriday
      @FilamentFriday 5 лет назад +3

      Totally agree. You can buy similar VFD modules anywhere. They are controlled similar to an LCD module controlled and easily controlled by off the shelf code like Arduino. So nothing vintage or reverse engineered about this.

  • @OnlyHumanYT
    @OnlyHumanYT 5 лет назад

    Thank you Audible, very cool.

  • @9072997
    @9072997 5 лет назад

    you make it work, and I imagine you have cpu cycles to spare, but just a useful trick: If you look up port manipulation for the Arduino, you will find that digital IO is grouped into ports of 8 bits. You can write to all 8 bits at once. Since your device uses ASCII for the normal letters and the Arduino language also uses ASCII, you can just do PORTX = 'a' to set all the pins to the right value to show an a. This is of course contingent on you wiring the data pins on your device in order to pins 0-7.

  • @yukimoe
    @yukimoe 5 лет назад

    Looks like the displays they put in those public payphones that were pretty much everywhere (at least up here in Canada) until the 2000s when cellphones became common...

  • @drgusman
    @drgusman 5 лет назад +1

    CS and !WR should be set in the inverse order, first !WR and then CS, when you set the signal to CS you are selecting the device to act, and it executes what is on the data/signal lines, !WR is the operation, not write/read, and there's no need to change it, if you aren't going to read from the device leave !WR low and just signal it with CS. You aren't having problems because the arduino is fasther than the display but it may fail if you lower the speed of the arduino, if the !WR signal is high when you set CS and the display reads a R operation it may set data on the bus.
    Also, the data lines are set after CS, that's to avoid collisions, if the previous operation is a read and the device has data in the bus and you write before letting the device that a new operation is going to happen (CS goes high) you may end with a short circuit (you put a 0 and the device has a 1 or vice-versa and you're sending +VCC to GND). It's important too that after you set CS low and have finished the operation, put the port pins in input mode, that will place them in a high impedance state and will avoid data collision.
    If you want to simplfy and speed up your code (and make it a lot more readable) you can use a single 8 bit port on the arduino instead of scattered pins (per example, on the base Arduino PORTD is pins 0 to 7) so instead of a loop with bit testing and digitalWrites you can do "PORTD = Data", being Data a byte variable with the value you want in the bus.
    Finally, I see you are missing A0 from your code (or at least isn't shown) and you should have it, with it you can control the cursor position and select the READ operation type (data or status)
    Hope it helps :)

  • @FlamJongUn
    @FlamJongUn 5 лет назад

    I salvaged one of these about 6 months ago, from an old satellite receiver.
    I was wondering how I could make it work... Thanks for your video!

  • @TheTroposa
    @TheTroposa 5 лет назад

    When Scotty does the double air punch and YEA. That moment is why we do this stuff!

  • @SamFriesen
    @SamFriesen 5 лет назад

    Have you tried the Liquid crystal library included in the Arduino IDE? If the display you have had 16 pins should work. It worked for me on an old 16x1 printer display

  • @Douglas_1925
    @Douglas_1925 5 лет назад

    thank you so much for knowledge about electronics and all your experiences that you shared to us... its really cool and i very enjoyed watching all of your youtube videos

  • @markusantonov6373
    @markusantonov6373 5 лет назад +2

    love watching these videos

  • @sklaboratory3983
    @sklaboratory3983 5 лет назад

    Excellent technical skill.

  • @H3liosphan
    @H3liosphan 5 лет назад

    Hi. Looks very similar to working with those HD44780 type LCD displays, in fact this is probably like a grandfather to these modules. To be complete, and to be able to do the progress bar type graphic, you'll need to implement a standard backspace operation (on these things it may act more like a left arrow operation on a PC / Mac), a clear screen operation, and if it supports it, a means of positioning the cursor anywhere on the display. Speaking of, you might want to turn off the underscore cursor, almost certainly possible. This'll just involve sending special characters or commands.

  • @ethanmye-rs
    @ethanmye-rs 5 лет назад

    If you're interested, I reverse engineered a Noritake Itron display. Easy to send data to and a surprisingly well written data sheet.

  • @ottersdangerden
    @ottersdangerden 5 лет назад

    I wonder if you could use the lcd library to write to this. The page to you might want to peek at is found with "LiquidCrystalCreateChar". Its been a while but this feels like this is how the newer style lcds work.

  • @DanielBull
    @DanielBull 5 лет назад

    I bought a bunch of these from radio rally's in the UK for a few pounds and built clocks etc. out of them. I even have one which runs full graphics which I've done scrolling images etc on using a Raspberry Pi. They really are lovely.

  • @DAVIDGREGORYKERR
    @DAVIDGREGORYKERR 4 года назад

    That sort of used was used in the PHILIPS DCC900 Tape deck

  • @vibhorsrivastava5281
    @vibhorsrivastava5281 3 года назад

    Hello Mr Scientist! I have salvaged a VFD from an old Sony DVD player, But I am unable to find the data sheet online. Is there any other way where I can light up this beautiful piece of art. Please help.

  • @segicus
    @segicus 5 лет назад

    i loved this video!, true perspective of how a programmer works and tries things up xD, keep it up, greetings from Colombia :D