EEVblog 1493 - MacGyver Project - Part 2

preview_player
Показать описание
Powering up the Banshee ultrasonic leak detector LED display to see how the display is multiplexed turned out to be very interesting!
With special guest debugger, Sagan, who invents a new industry term "free range data".

Support the EEVblog on:

Buy anything through that link and Dave gets a commission at no cost to you.

Donate With Bitcoin & Other Crypto Currencies!
#ElectronicsCreators #MacGyver #Project
Рекомендации по теме
Комментарии
Автор

I suspect the "free range data" is actually data of other devices on a shared SPI bus. The clock for the display is gated by the CS line, so you only see it when it is actually the target device (since the '164 doesn't have a separate clock enable). Interesting though, I was expecting to see the segments multiplexed (posted on the last video about that) and not driven in parallel. (though 1/8 and not 1/40 as you hypothesized)

canadianavenger
Автор

Maybe the 'free range data' is actually on a bus of their own design - data goes to the display only when the display is clocked, the rest of the data is probably clocked into other places in a similar fashion. 5/6 mA per segment - so you may have to dim it down by PWM to conserve battery; you could always brighten it up again under a certain condition (if the device is moved?).

threeMetreJim
Автор

You only need a drop resistor if there is something to drop. Resistors are needed because we drive the led at the wrong voltage, so if we drive them at the right voltage the diode will work as designed without an EXTRA drop resistor to compensate for the wrong voltage.

PeetHobby
Автор

Sagan is a smart kid, he’s doing more than repeating stuff like some kids do. You can see him working things out. As a teacher I spend most of my time trying to stop my kids parroting back words I’ve said, and to instead think their own thoughts, it’s not easy.

ncot_tech
Автор

Perhaps the "free range data" is being used elsewhere? Like a common data line going to other parts of the circuit, and the clock signal is being used like a select line? Great project btw :)

BuyitFixit
Автор

a small note on multiplexed displays... and distance; I, being someone who has an eye condition which causes an effect whereas the rate of an oscillating display (flicker) is greatly amplified as the distance increases, causing errors in reading said display. this effect can cause a misreading whereas characters can "flip" and appear out of order, especially, if reading digits and/or one is trying to read said display in low light or at night, this is especially critical for those with Nystagmus and/or Dyslexia. It is my belief that the spec states that displays on critical safety equipment- especially, that which has to be read from a distance and/or where an error in reading may (will) result in a dangerous condition, these displays must be easy to read and not flicker or be multiplexed in any way. want to try this for yourself? take a digital clock- most any will do... place it at one end of a large [darkened or low lit] room- and try to read it from across the room- for bonus, turn your head side-to-side while you are doing this, you should see "distortions" and/or slight mis-readings.. now imagine misreading an explosive gas sensor monitor!

WarpRadio
Автор

About driving the segments without series resistors:
The datasheet for the shift register says that they CAN source 4-8mA per pin, depends on the manufacturer, so the design is correct. That´s exactly what they do. The trick is the physical nature of the FET. You can limit the current by varying the size of the internal FETs on the wafer. They will present a resistance to the pin. It´s the same way the switchable pullups on a microcontroller work. They are not resistors, they are just undersized FETs, made with the same CMOS process on the same mask. You can short the output, and they will source a limited current without burning through. There is a maximum current for the chip, though. I´m sure the chip´s max current is designed to handle all 8 pins at short. Lowering the voltage just reduces heat dissipation in the chip. It would work with 5V, too. The LEDs have a forward voltage of 1.8V max (datasheet), you measured 1.6V, that fits, so 2V is enough to drive them, and it minimizes the losses. I´m quite sure that those shift registers have been designed for driving LEDs directly. I don´t think it´s a bad design practice. An internally pulled up pin that connects to a switch to ground is a good practice, although it´s doing basically the same - shorting a PFET.

paulkocyla
Автор

David, you're doing a good job of teaching Sagan Electronics. My dad was a Photographer, so I learned to take, develop etc my photos. My uncle was an Artist so I paint too. but I have 3 degrees in Electronic eng, Computer Sci & I got my last degree in Fine Arts- using Photoshop, etc. I had to teach myself electronics myself back in the late 60s to early 80s.

Screamingtut
Автор

They are using the serial data as PWM (FM) signal to drive the current transistor on the cathode. That way you always get the proportionally correct amount of current.

chodnejabko
Автор

Awesome job Dave. Your son is probably learning more than you realise. Spending time together is just a bonus.

paulbyerlee
Автор

Perhaps there’s a common data line that is used to drive input to other devices on the board. The clock line is being used like an enable. When the clock isn’t driven the data is being sent elsewhere using a separate enable/clock line for that device.

stuartmcconnachie
Автор

1.95V rail is in spec for HC164, minimum is 1.9, nothing wrong there ;)

robertjung
Автор

This is the most wholesome father/son video I've ever seen.

NanoBurger
Автор

Free range data is likely a serial readout of internal memory, with the clock for the display only being enabled to output the clock when those internal memory locations are being accessed. You probably have an internal RAM being read out in a ring, and then the display segments are being written as bitmaps to a 5 block section, and then displayed. the rest of the data is internal state, probably originally used for debug as an easy way to read the entire memory out, and then used to drive the display as part of this as well.

SeanBZA
Автор

If you want to see how the display is multiplexed just look at the display while it's on and buzz your lips loudly varying the pitch of your buzz slowly. At some point you'll see the individual multiplexed sections move around indepentently of each other.

pocoapoco
Автор

The phrase "The eye is amazing" would be a great title for a video (or series of videos) covering the many, many ways electronics displays "use" various capabilities of the human eye to create (or fail to create) the perception of range and continuity in the mind of the viewer. The most-used example of this is the "Persistence of Vision" effect, which Dave and Sagan mention in this video.

I once helped create a 100, 000 fps digital video camera, where my responsibilities included 1) designing and writing the "middleware" between the low-level hardware control and the high-level user interface, and 2) designing and writing the image processing code to obtain the best data possible from the sensor, through the various image transfer formats (RGB, Raw, MJPEG), and to the display and M2M (machine to machine) interfaces.

It turned out, that the computers on the M2M interface and the humans on the display interface had VERY different specifications for the properties of an "ideal image". Computers prefer highly linear pixels, and humans, well, don't. The human display was "intended" as little more than an easy way to monitor the effects of changes to the camera setup, and little attention was paid to making it ideal or perfect. This all changed once Marketing saw the early UI and video display, labeling it "unsuitable for demonstration purposes", meaning, for example, they would totally suck when displayed in a trade show booth.

This launched me on a journey to find the best ways to manipulate the image sensor data to create displayed video and still frames that humans would love (and want to buy!). The thing is, at the time, we had no useful reference models for human color perception. This was in contrast to the sophisticated models available for human hearing that enabled high levels of "perceptually lossless" audio compression as well as 3D audio from stereo speakers. The human vision models of the day weren't nearly this complete or useful.

Humans like saturated colors. The color film industry has always known this. The 1973 Paul Simon hit "Kodachrome" even mentions it in the chorus:
Kodachrome
They give us those nice bright colors
They give us the greens of summers
Makes you think all the world's a sunny day, oh yeah

I could go on about the specific steps of my investigation and the implementation of the results, but the bottom line was that the displayed video was a total and utter lie mathematically, while being beautiful to the human viewing it, exchanging linearity for "punch" and "depth". We carefully crafted the user interface to make it impossible to simultaneously display the linear and "humanized" versions of the video: Gotta keep the magic alive! (Internally, we called the humanized display "Disney Vision" for how make-believe it was compared to the ground truth of the M2M video.)

bobcunningham
Автор

Calling it the MacGyver Project means you need to place a pack of gum and a paper clip inside the case.

Tuttomenui
Автор

The term "free-range data" needs to be adopted for regular use. It means data that is transmitted without any assurance that its destination exists and is ready to receive it. We needed a name for that.

michael.a.covington
Автор

Such a bright kid, you must be very proud of him, Dave!

RetroJack
Автор

Turn this thing into an exterior wireless router on a post outside for a barn or pasture. Put a mini PC turned into a router and run the antena out of the top of it. Use the display to show connection info. It would be bomb proof.

Mr.Unacceptable