Posts with «display» label

How to buy a monitor in 2021

With the COVID pandemic still upon us, a monitor is one of the most important computer buying decisions you can make. Luckily, there’s never been more choice, and we’ve seen vast improvements in color accuracy, size and resolution since our last update.

It’s great to have lots of choice, but it can also make your buying decision a challenge. For example, do you need HDR, and if so, how bright should your monitor be? How important is color accuracy, refresh rates and input lag? What size do you need? Should it be curved or straight?

Luckily, we’ve done the research and can help you figure all that out depending on your specific needs and, most importantly, budget. Read on to see exactly what to look for in a monitor and which makes and models to choose.

The basics

Screen size, resolution and display format

In this day and age, screen size rules. Where 24-inch displays used to be more or less standard (and can still be useful for basic computing), 27-, 32-, 34- and even 42-inch displays have become popular for entertainment, content creation and even gaming these days.

Nearly every monitor used to be 16:9, but it’s now possible to find 16:10 and other more exotic display shapes. On the gaming and entertainment side, we’re also seeing very wide and curved monitors with aspect ratios like 21:9. If you do decide to buy an ultrawide display, however, keep in mind that a 30-inch 21:9 model is the same height as a 24-inch monitor, so you might end up with a smaller display than you expected. As a rule of thumb, add 25 percent to the size of a 21:9 monitor to get the size you need.

4K is nearly a must for content creators, and some folks are even going for 5K or all the way up to 8K. Keep in mind, though, that you’ll need a pretty powerful computer to drive all those pixels. And 4K should be paired with a screen size of 27 inches and up, or you won’t notice much difference between 1440p. At the same time, I wouldn’t get a model larger than 27 inches unless it’s 4K, as you’ll start to see pixelation if you’re working up close to the display.

One new category to consider is portable monitors designed to be carried and used with laptops. Those typically come in 1080p resolutions and sizes from 13-15 inches. They usually have a lightweight kickstand-type support that folds up to keep things compact.  

HDR

HDR is the buzzy monitor feature to have these days, but be careful before jumping in. Some monitors that claim HDR on the marketing materials don’t even conform to a base standard. To be sure that a display at least meets minimum HDR specs, you’ll want to choose one with a DisplayHDR rating with each tier representing maximum brightness in nits.

However, the lowest DisplayHDR 400 and 500 tiers may disappoint you with a lack of brightness, washed out blacks and mediocre color reproduction.If you can afford it, choose a model with DisplayHDR 600, 1000 or True Black 400, True Black 500 and True Black 600. The True Black settings are designed primarily for OLED models, with maximum black levels at .0005 nits.

Where televisions typically offer HDR10 and Dolby Vision or HDR10+, most PC monitors only support the HDR10 standard, other than a few (very expensive) models. That doesn’t matter much for content creation or gaming, but HDR streaming on Netflix, Amazon Prime Video and other services won’t look quite as punchy. 

Refresh rate

Refresh rate is a key feature, particularly on gaming monitors. A bare minimum nowadays is 60Hz, and 80Hz refresh rates and up are much easier on the eyes. However, most 4K displays top out at 60Hz with some rare exceptions and the HDMI 2.0 spec only supports 4K at 60Hz, so you’d need at least DisplayPort 1.4 (4K at 120Hz) or HDMI 2.1. The latter is now available on a number of monitors, particularly gaming displays. However, it’s only supported on the latest NVIDIA RTX 3000- and AMD RX 6000-series GPUs and requires a very powerful PC.

Inputs

There are essentially three types of modern display inputs: Thunderbolt, DisplayPort and HDMI. Most monitors built for PCs come with the latter two, while a select few (typically built for Macs) will use Thunderbolt. To add to the confusion, USB-C ports may be Thunderbolt 3 and by extension, DisplayPort compatible, so you may need a USB-C to Thunderbolt or DisplayPort cable adapter depending on your display.

Panel type

The cheapest monitors are still TN (twisted nematic), which are strictly for gaming or office use. VA (vertical alignment) monitors are also relatively cheap, while offering good brightness and high contrast ratios. However, content creators will probably want an IPS (in-plane switching) LCD display that delivers better color accuracy, image quality and viewing angles.

If maximum brightness is important, a quantum dot LCD display is the way to go — those are typically found in larger displays. OLED monitors are now available and offer the best blacks and color reproduction, but they lack the brightness of LED or quantum dot displays. Plus, they cost a lot.

The new panel on the block is MiniLED. It’s similar to quantum dot tech, but as the name suggests, it uses smaller LED diodes that are just 0.2mm in diameter. As such, manufacturers can pack in up to three times more LEDs with more local dimming zones, delivering deeper blacks and better contrast. 

Color bit depth

Serious content content creators should consider a more costly 10-bit monitor that can display billions of colors. If budget is an issue, you can go for an 8-bit panel that can fake billions of colors via dithering (often spec’d as “8-bit + FRC”). For entertainment or business purposes, a regular 8-bit monitor that can display millions of colors will be fine.

Color gamut

The other aspect of color is the gamut. That expresses the range of colors that can be reproduced and not just the number of colors. Most good monitors these days can cover the sRGB and Rec.709 gamuts (designed for photos and video respectively). For more demanding work, though, you’ll want one that can reproduce more demanding modern gamuts like AdobeRGB, DCI-P3 and Rec.2020 gamuts, which encompass a wider range of colors. The latter two are often used for film projection and HDR, respectively. 

Engadget picks

Best monitor around $200

Acer KG241Q

Acer

Whether you need a monitor for gaming, entertainment or work, Acer’s 24-inch KG241Q offers a lot of value. Resolution is limited to 1080p, but it delivers a 144Hz refresh rate and comes with AMD FreeSync support. Other features include a 1-millisecond lag time, 300 nits of brightness, HDMI and DisplayPort inputs and a tilting stand. The downsides are tricky access to the ports and a TN display that looks dim at an angle, but it’s a heck of a steal right now at $155.

Buy 24-inch Acer KG241Q at B&H Photo - $180


Best monitors around $300

ASUS ProArt PA278QV

ASUS

Moving your budget up by just $100 opens up a whole lot more options. A case in point is our pick for content creation chores, the ASUS ProArt PA278QV. You get a larger 27-inch size, increased 2,560 x 1,440 resolution and a superior IPS panel. As with other ProArt models, the PA278QV is designed specifically for photo and video editing, with a 100 percent Rec.709 gamut, Calman verified color accuracy and ProArt presets and palettes for different kinds of work. It also offers DisplayPort and HDMI ports and tilt, swivel, pivot and height adjustments. That’s a lot of monitor for a current street price of $315.

Buy 27-inch ASUS ProArt PA278QV at B&H - $319

Dell S2522HG

Dell

There are numerous decent gaming monitors around $300, but we’ve managed to narrow it down to one: Dell’s S2522HG. For a monitor in this price range, you get a lot: a 24.5-inch IPS 1080p display with a 240Hz refresh rate, 400 nits of brightness, 1-millisecond response time and AMD Free-Sync and NVIDIA G-Sync compatibility. It comes with HDMI, DisplayPort and SuperSpeed USB 3.2 Gen1 inputs, along with a stand that allows for height adjustment, tilt, swivel and pivot. You can pick one up now at Amazon for $320.

Buy 24-inch Dell S2522HG at Amazon - $320


Best monitor around $400

LG 27UK500

LG

LG’s 27UK500 is a nice all around monitor that can cover gaming, entertainment and some content creation. The 27-inch 4K IPS display covers 98 percent of the sRGB gamut and supports HDR10 with 10-bit color, though it only outputs 300 nits of brightness so it isn’t DisplayHDR certified. If you like 4K gaming, it can handle that decently thanks to AMD FreeSync support, a 60 Hz refresh rate and a 5-millisecond response time. The downsides are a tilt only stand, but it’s very well priced at just $347. 

Buy 27-inch LG 27UK500 at B&H - $347


Best monitors around $500

BenQ PD2700U

BenQ

For creatives, the BenQ PD2700U pushes all the right buttons. The 27-inch 4K IPS panel delivers 10-bit HDR color and covers 100 percent of the sRGB gamut with Calman verified Delta E color accuracy less than 3. It’s also a fine choice for entertainment and gaming with 350 nits of brightness, a 1300:1 contrast ratio, viewing angle of 178 degrees and a 5-millisecond response time. It has tilt, swivel, pivot and height adjustment and most of the ports you need, including HDMI 2.0 and DisplayPort 1.4. You can pick one up now at B&H for $500.

Buy 27-inch BenQ PD2700U at B&H Photo - $500

Acer Nitro XV252Q

Acer

Acer’s Nitro XV252Q is the only gaming monitor under $500 that supports 360 Hz refresh rates, but there’s more to it than just that. The 24.5-inch HD display outputs 400 nits of brightness, so it’s DisplayHDR 400 certified for HDR games and movies. It also comes with AMD FreeSync compatibility, a 99 percent sRGB color gamut and DisplayPort 1.4 and HDMI 2.0 connections. You can tilt, swivel, pivot and adjust the height by up to 4.7 inches, and it looks pretty snazzy, with very slim side and top bezels.

Buy 25-inch Acer Nitro XV252Q at Amazon - $500


Best monitors under $700

Dell UltraSharp 27 U2720Q

Dell

Dell’s 27-inch, 4K U2720Q IPS monitor offers 4K HDR performance for a decent price. It conforms to the DisplayHDR 400 spec while offering 10-bits of color and 99 percent sRGB coverage, with a Delta E color accuracy of less than two out of the box. So this is a good monitor for HDR movies and doing some graphics chores, particularly HDR video work — all for under $700.

Buy 27-inch UltraSharp U2720Q at Dell - $580

Acer Predator XB273K

Acer

Though it’s marketed as a gaming monitor thanks to the 120Hz refresh rate, 1-millisecond response time and G-Sync support, Acer’s 4K quantum dot Predator XB273K is really a jack of all trades. It’s also DisplayHDR 400 compatible, covers 90 percent of the challenging DCI-P3 color gamut and offers a Delta<1 color accuracy. You also get tilt and height adjustments, HDMI 2.0 and DisplayPort 1.4 ports and pivot and height adjustment.

Buy 27-inch Acer Predator XB273K at Amazon - $621


Best monitor for Mac users

LG Ultrafine 4K and 5K

LG

Apple’s $5,000 Pro Display XDR is much too rich for most of us, so the next most logical option is LG’s $1,300 Ultrafine 5K display, also sold on Apple’s Store. With a 27-inch 5K panel, you not only get very high resolution but also 500 nits of brightness (albeit, without HDR capability). It’s color-accurate out of the box, making it great for video- and photo-editing work on a Mac or MacBook. Finally, it supports Thunderbolt 3 with daisy chaining and power delivery, all of which is very useful for Mac users.

If that model is too much, you can also consider LG’s 24-inch Ultrafine 4K. For nearly half the price ($700), it offers many of the same features (including the powered and daisy-chained Thunderbolt ports, color accuracy and more) in a smaller size and with just a bit less resolution.

Buy LG Ultrafine 5K at Apple - $1,300Buy LG Ultrafine 4K at Apple - $700

Best ultrawide monitor

MSI Optix MPG341CQR

MSI

Ultrawide 21:9 monitors are a great option for some types of content creation, flight sims and financial work. The best model this year (with perhaps the worst name) is MSI’s Optix MPG341CQR. With an 1800R curve and 3,440 x 1,440 resolution it’s ideal for gaming, with the 120Hz refresh rate, 1-millisecond response time and HDR 400 also helping in that regard. It also offers a frameless design, tilt, swivel and height adjustment and HDMI 2.0/DisplayPort 1.4 ports. It also has an LED strip that provides helpful cues for in-game status like remaining health or ammo, too.

Buy 43-inch MSI Optix MPG341CQR at Amazon - $645

Best portable monitor

ViewSonic VG1655

ViewSonic

To best complement your laptop, a portable monitor should be small, lightweight and not too expensive. The model that best meets all those requirements is ViewSonic’s VG1655. At 15.6 inches and weighing under 2 pounds, the 1080p 60 Hz IPS display can be toted around fairly easily but still provide crisp, clear visuals. It’s also reasonably bright at 250 nits, comes in standard and touch version, packs dual speakers and has a built-in stand with a cover.

Buy 15-inch ViewSonic VG1655 at Amazon - $250

Best HDMI 2.1 monitor

Acer Nitro XV282K

Acer

If you’re gaming on the bleeding edge at 4K and 120Hz, you’ll first need either a fast PC or PS5/Xbox Series X console. If you’ve got that and would prefer to use a monitor rather than a TV, your best bet will soon be Acer's Nitro XV282K display. Along with 4K resolution at up to 144Hz, it offers a 1-millisecond refresh rate, 10-bit color and 400 nits (DisplayHDR 400 compatible) of brightness. It comes, of course, with an HDMI 2.1 input, along with DisplayPort 1.4. It’s not yet available, but should arrive soon for $900.

Pre-order 28-inch Acer Nitro XV282K at B&H - $899

Best luxury monitor

ASUS ProArt PA32UCG-K

ASUS

ASUS still holds the prize for best luxury monitor, but it discontinued the previous mini-LED $4,000 ProArt PA32UCX monitor and replaced it with the $5,000 PA32UCG-K display. It uses the same mini-LED tech, but ups the ante with 1,600 nits of brightness, an HDMI 2.1 port, 4K 120Hz resolution, 10-bit, 98 percent DCI-P3 coverage and an impressive 85 percent Rec.2020 coverage. Oh, and it’s one of the few monitors out there that supports Dolby Vision, along with HDR10 and HLG.

You’re probably doing it wrong if you’re using a $5K monitor for gaming. However, it does support AMD FreeSync (good for gaming creation) and has a 5-millisecond response time, very respectable for a display essentially designed for professional colorists. And to that end, color accuracy is calibrated to Delta E < 1 and it’s a true 10-bit panel delivering billions of colors.

Buy 32-inch ASUS ProArt PA32UCG-K at B&H - $4,999

Best 8K display

Dell UltraSharp 32 UP3218K

Dell

Faster than we think, 8K video will be upon us, so you might be pondering an 8K monitor to stay ahead of the curve. Dell’s UP3218K is part of its UltraSharp lineup for creators, so it not only delivers 8K (7,680 x 4,320) 60p resolution but other nice pro features, too.

The 10-bit native IPS panel delivers 400 nits of brightness, though the UP3218K isn’t an HDR monitor. It also delivers 1.07 billion colors and covers 98 percent of the DCI-P3 color gamut, with a Delta E of less than two out of the box. It’s also one of the few monitors that flips around 90 degrees, making it good for portrait photo work.

This monitor isn’t cheap either at $3,500 (8K monitors are still very rare), but Dell’s UP3216Q 4K monitor has most of the features for less than half the price. It’s not quite as bright at 350 nits and covers just 87 percent of the DCI-P3 gamut, but it offers 1.07 billion colors and is just as precise for color correction out of the box.

Buy 32-inch UltraSharp UP3218K at Dell - $3,755

PNG Image Decoding Library Does it With Minimal RAM

Want to display a PNG file on a display attached to an Arduino or other microcontroller board? You’ll want to look at [Larry Bank]’s PNGdec, the Arduino-friendly PNG decoder library which makes it much easier to work with PNG files on your chosen microcontroller.

The PNG image format supports useful features like lossless compression, and was generally developed as an improved (and non-patented) alternative to GIF files. So far so great, but it turns out that decoding PNG files on a microcontroller is a challenge due to the limited amount of memory compared to desktop machines. When the PNG specification was developed in the 90s, computers easily had megabytes of memory to work with, but microcontrollers tend to have memory measured in kilobytes, and lack high-level memory management. [Larry]’s library addresses these issues.

PNGdec is self-contained and free from external dependencies, and also has some features to make converting pixel formats for different display types easy. It will run on any microcontroller that can spare at least 48 K of RAM, so if that sounds useful then check out the GitHub repository for code and examples.

We’ve seen [Larry]’s wonderful work before on optimizing GIF playback as well as rapid JPEG decoding, and these libraries have increasing relevance as hobbyists continue to see small LCD and OLED-based displays become ever more accessible and affordable.

[PNG logo: PNG Home Site]

Supersized Weather Station Uses Antique Analog Meters

For most of us, getting weather information is as trivial as unlocking a smartphone or turning on a computer and pointing an app or browser at one’s weather site of choice. This is all well and good, but it lacks a certain panache that old weather stations had with their analog dials and stained wood cases. The weather station that [BuildComics] created marries both this antique aesthetic with modern weather data availability, and then dials it up a notch for this enormous analog weather station build.

The weather station uses 16 discrete dials, each modified with a different label for the specific type of data displayed. Some of them needed new glass, and others also needed coils to be modified to be driven with a lower current than they were designed as well, since each would be driven by one of two Arduinos in this project. Each are tied to a microcontroller output via a potentiometer which controls the needle’s position for the wildly different designs of meter. The microcontrollers themselves get weather information via the internet, which allows for about as up-to-date information about the weather as one could gather first-hand.

The amount of customization of these old meters is impressive, and what’s even more impressive is the project’s final weight. [BuildComics] reports that it took two people just to lift it onto the wall mount, which is not surprising given the amount of iron in some of these old analog meters. And, although not as common in the real world anymore, these old antique meters have plenty of repurposed uses beyond weather stations as well.

How Much Is That Plotter in the Window?

We live in a strange time indeed. People who once eschewed direct interactions with fellow humans now crave it, but to limited avail. Almost every cashier at the few stores deigned essential enough to maintain operations are sealed away behind plastic shields, with the implication that the less time one spends lingering, the better. It’s enough to turn an introvert into an extrovert, at least until the barriers are gone.

We get the idea that the need to reach out and touch someone is behind [Niklas Roy]’s “Please Leave a Message”, an interactive art installation he set up in the front window of his Berlin shop. Conveniently located on a downtown street, his shop is perfectly positioned to attract foot traffic, and his display is designed to catch the eye and perhaps crack a smile. The device consists of a large wooden easel holding the guts from an old X-Y pen plotter, an Arduino and an ESP-8266, and a couple of drivers for the plotter’s steppers. Passers-by are encouraged to scan a QR code that accesses a web page served up by the ESP-8266, where they can type in a brief message. The plotter dutifully spells it out on a scroll of paper for all to see, using a very nice font that [Niklas] designed to be both readable and easily plotted. The video below shows it in action with real people; it seems to be a crowd-pleaser.

[Niklas] has been incredibly prolific, and we’ve covered many of his interactive art installations. Just search for his name and you’ll find everything from a pressure-washer dancing waters display to a plus-sized pinball machine.

Hack a Day 14 May 16:30

Tutorial – Arduino and Four Digit Seven Segment Display Module

This is a quick start guide for the Four Digit Seven Segment Display Module and Enclosure from PMD Way. This module offers a neat and bright display which is ideal for numeric or hexadecimal data. It can display the digits 0 to 9 including the decimal point, and the letters A to F. You can also control each segment individually if desired. 

Each module contains four 74HC595 shift registers – once of each controls a digit. If you carefully remove the back panel from the enclosure, you can see the pin connections:

If you’re only using one display, use the group of pins at the centre-bottom of the board. From left to right the connections are:

  1. Data out (ignore for single display use)
  2. VCC – connect to a 3.3V or 5V supply
  3. GND – connect to your GND line
  4. SDI – data in – connect to the data out pin on your Arduino/other board
  5. LCK – latch – connect to the output pin on your Arduino or other board that will control the latch
  6. CLK – clock – connect to the output pin on your Arduino or other board that will control the clock signal

For the purposes of our Arduino tutorial, connect VCC to the 5V pin, GND to GND, SDI to D11, LCK to D13 and CLK to D12. 

If you are connecting more than one module, use the pins on the left- and right-hand side of the module. Start with the connections from your Arduino (etc) to the right-hand side, as this is where the DIN (data in) pin is located.

Then connect the pins on the left-hand side of the module to the right-hand side of the new module – and so forth. SDO (data out) will connect to the SDI (data in) – with the other pins being identical for connection. 

The module schematic is shown below:

Arduino Example Sketch

Once you have made the connections to your Arduino as outlined above, upload the following sketch:

// Demonstration Arduino sketch for four digit, seven segment display with enclosure
// https://pmdway.com/collections/7-segment-numeric-leds/products/four-digit-seven-segment-display-module-and-enclosure
int latchPin = 13; // connect to LCK pin intclockPin = 12; // connect to CLK pin intdataPin = 11; // connect to SDI pin int LED_SEG_TAB[]={ 0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0x01,0xee,0x3e,0x1a,0x7a,0x9e,0x8e,0x01,0x00}; //0 1 2 3 4 5 6 7 8 9 dp . a b c d e f off void setup() { //set pins to output so you can control the shift register pinMode(latchPin, OUTPUT); pinMode(clockPin, OUTPUT); pinMode(dataPin, OUTPUT); } void displayNumber(int value, boolean leadingZero) // break down "value" into digits and store in a,b,c,d { int a,b,c,d; a = value / 1000; value = value % 1000; b = value / 100; value = value % 100; c = value / 10; value = value % 10; d = value; if (leadingZero==false) // removing leading zeros { if (a==0 && b>0) { a = 18; } if (a==0 && b==0 && c>0) { a = 18; b = 18; } if (a==0 && b==0 && c==0) { a = 18; b = 18; c = 18; } if (a==0 && b==0 && c==0 && d==0) { a = 18; b = 18; c = 18; d = 18; } } digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[d]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[c]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[b]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[a]); digitalWrite(latchPin, HIGH); } void allOff() // turns off all segments { digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, 0); shiftOut(dataPin, clockPin, LSBFIRST, 0); shiftOut(dataPin, clockPin, LSBFIRST, 0); shiftOut(dataPin, clockPin, LSBFIRST, 0); digitalWrite(latchPin, HIGH); } void loop() { for (int z=900; z<=1100; z++) { displayNumber(z, false); delay(10); } delay(1000); for (int z=120; z>=0; --z) { displayNumber(z, true); delay(10); } delay(1000); digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[14]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[13]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[12]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[11]); digitalWrite(latchPin, HIGH); delay(1000); digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[16]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[15]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[14]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[13]); digitalWrite(latchPin, HIGH); delay(1000); digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[0]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[1]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[2]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[3]+1); digitalWrite(latchPin, HIGH); delay(1000); digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[7]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[6]+1); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[5]); shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[4]); digitalWrite(latchPin, HIGH); delay(1000); }

After a moment you should see the display spring into action in the same way as in the demonstration video:

How does it work? 

First we define which digital output pins are used for latch, clock and data on lines four to six. On line eight we have created an array which contains values that are sent to the shift registers in the module to display the possible digits and letters. For example, the first – 0xfc – will activate the segments to display a zero, 0x7a for the letter C, and so on. 

From line 20 we’ve created a custom function that is used to send a whole number between zero and 9999 to the display. To do so, simply use:

void displayNumber(value, true/false);

where value is the number to display (or variable containing the number) – and the second parameter of true or false. This controls whether you have a leading zero displayed – true for yes, false for no. 

For example, to display “0123” you would use:

displayNumber(123, true);

… which results with:

or to display “500” you would use:

displayNumber(500, false);

… which results with:

To turn off all the digits, you need to send zeros to every bit in the shift register, and this is accomplished with the function in the sketch called 

allOff();

What about the decimal point? 

To turn on the decimal point for a particular digit, add 1 to the value being sent to a particular digit. Using the code from the demonstration sketch to display 87.65 you would use:

 digitalWrite(latchPin, LOW);

 shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[5]);

 shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[6]);

 shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[7]+1); // added one for decimal point

 shiftOut(dataPin, clockPin, LSBFIRST, LED_SEG_TAB[8]);

 digitalWrite(latchPin, HIGH);

… which results with:

In-depth explanation of how the module is controlled

As shown in the schematic above, each digit is controlled by a 74HC595 shift register. Each shift register has eight digital outputs, each of which control an individual segment of each digit. So by sending four bytes of data (one byte = eight bits) you can control each segment of the display. 

Each digit’s segments are mapped as follows:

And the outputs from each shift register match the order of segments from left to right. So outputs 0~7 match A~G then decimal point. 

For example, to create the number seven with a decimal point, you need to turn on segments A, B, C and DP – which match to the shift register’s outputs 0,1,2,8. 

Thus the byte to send to the shift register would be 0b11100001 (or 225 in decimal or 0xE1 in hexadecimal). 

Every time you want to change the display you need to re-draw all four (or more if more than one module is connected) digits – so four bytes of data are sent for each display change. The digits are addressed from right to left, so the first byte send is for the last digit – and the last byte is for the first digit. 

There are three stages of updating the display. 

  1. Set the LCK (latch) line low
  2. Shift out four bytes of data from your microcontroller
  3. Set the LCK (latch) line high

For example, using Arduino code we use:

  digitalWrite(latchPin, LOW);

  shiftOut(dataPin, clockPin, LSBFIRST, 0b10000000); // digit 4

  shiftOut(dataPin, clockPin, LSBFIRST, 0b01000000); // digit 3

  shiftOut(dataPin, clockPin, LSBFIRST, 0b00100000); // digit 2

  shiftOut(dataPin, clockPin, LSBFIRST, 0b00010001); // digit 1

  digitalWrite(latchPin, HIGH);

This would result with the following:

Note how the bytes in binary match the map of the digits and their position. For example, the first byte sent was for the fourth digit, and the segment A was turned on. And that’s all there is to it – a neat and simple display. 

This post brought to you by pmdway.com – everything for makers and electronics enthusiasts, with free delivery worldwide.

To keep up to date with new posts at tronixstuff.com, please subscribe to the mailing list in the box on the right, or follow us on twitter @tronixstuff.

 

Tronixstuff 13 Jul 08:48
arduino  display  led  numeric  pmdway  

A Ping Pong Ball LED Video Wall

Constrained builds are often the most fun. Throw an artificial limit into the mix, like time limiting your effort or restricting yourself to what’s on hand, and there’s no telling what will happen.

[bitluni] actually chose both of those constraints for this ping pong ball LED video display, and the results are pretty cool, even if the journey was a little rough. It seems like using sheet steel for the support of his 15 x 20 Neopixel display was a mistake, at least in hindsight. A CNC router would probably have made the job of drilling 300 holes quite a bit easier, but when all you have is a hand drill and a time limit, you soldier on. Six strings of Neopixels fill the holes, a largish power supply provides the 18 or so amps needed, and an Arduino knock-off controls the display. The ping pong ball diffusers are a nice touch, even if punching holes in them cost [bitluni] a soldering iron tip or two. The display is shown in action in the video below, mostly with scrolling text. If we may make a modest suggestion, a game of Pong on a ping pong ball display might be fun.

[bitluni] says that the display is on its way to Maker Faire Berlin this weekend, so stop by and say hi. Maybe he’ll have some of his other cool builds too, like his Sony Watchman Game Boy mashup, or the electric scooter of questionable legality.

Hack a Day 17 May 16:30

Hackaday Prize Entry: Safety Glasses Are Also Hands-Free Multimeter

It seems like the multimeter is never easy to see during a project. Whether it’s troubleshooting a vehicle’s electrical system and awkwardly balancing the meter on some vacuum lines and the intake manifold, or installing a new solar panel and hoping the meter doesn’t fall on the ground while the leads are in both hands, it seems like there’s never a good way to see the meter while actually using it. Some meters have a small magnet and strap that can be used to hang them temporarily, but this will only get you so far.

[Alain Mauer]’s entry into the Hackaday Prize looks to solve this glaring problem. Using a heads-up Bluetooth display mounted to a pair of safety glasses, a multimeter can be connected to the device in order to display its information directly to its user. Based on his original idea which used a normal pair of prescription glasses as its foundation, [Alain]’s goal is to reduce safety hazards that might arise when using a multimeter in an awkward or dangerous manner that might not otherwise be possible.

The device uses an Arduino Pro Micro to connect to the multimeter and drive the display. [Alain] notes that the real challenge is with the optical system, however. Either way though, this would be a welcome addition to any lab, workspace, or electrician’s toolbox. Be sure to check out the video of it in action after the break.


Filed under: The Hackaday Prize, tool hacks

Arduino Lighting Controller With Remote Twist

The time for putting up festive lights all around your house is nigh, and this is a very popular time for those of us who use the holiday season as an excuse to buy a few WiFi chips and Arduinos to automate all of our decorations. The latest in this great tradition is [Real Time Logic]’s cloud-based Christmas light setup.

In order to give public access to the Christmas light setup, a ESP8266 WiFi Four Relay board was configured with NodeMCU. This allows for four channels for lights, which are controlled through the Light Controller Server software. Once this is setup through a domain, all anyone has to do to change the lighting display is open up a web browser and head to the website. The creators had homeowners, restaurants, and church displays in mind, but it’s not too big of a leap to see how this could get some non-holiday use as well.

The holidays are a great time to get into the hacking spirit. From laser-projected lighting displays to drunk, animatronic Santas, there’s almost no end to the holiday fun, and you’ve still got a week! (Or 53!)


Filed under: Holiday Hacks
Hack a Day 16 Dec 03:00

Animated Progress Bar Shows LCD New Tricks

A small LCD screen can be extremely helpful with small microcontroller projects. Not everything needs to communicate to a fancy server using an ESP8266. However, if the simplicity of the character displays irks you, it’s possible to spice them up a little bit with custom characters and create animations, like [Fabien] did with his animated Arduino progress bar. (Google Translate from French)
The project started out simply enough: all [Fabien] needed was a progress bar. It’s easy enough to fill in the “characters” on the 2×16 character LCD screen one-by-one to indicate progress, and the first version of this did exactly that. The second version got a little bit fancier by adding a border around the progress bar and doubling its resolution, but the third version is where knowing the inner machinations of the microcontroller really paid off. Using a custom charset reuse optimization, [Fabien] was able to use 19 custom characters at a time when the display will normally only allow for eight. This was accomplished by placing the custom characters in memory in the correct order, to essentially trick the microcontroller into displaying them.
These types of microcontroller hacks get deep into the inner workings of the microcontroller and help expose some tricks that we can all use to understand their operation on a deeper level. Whether you’re using PWM to get a microcontroller to operate a TV, or creating the ATtiny-est MIDI synth, these tricks are crucial to getting exactly what you want out of a small, inexpensive microcontroller.

Filed under: Microcontrollers

Paraffin Oil and Water Dot Matrix Display

In preparation for Makerfaire, [hwhardsoft] needed to throw together some demos. So they dug deep and produced this unique display.

The display uses two synchronized peristaltic pumps to push water and red paraffin through a tube that switches back over itself in a predictable fashion. As visible in the video after the break, the pumps go at it for a few minutes producing a seemingly random pattern. The pattern coalesces at the end into a short string of text. The text is unfortunately fairly hard to read, even on a contrasting background. Perhaps an application of UV dye could help?

Once the message has been displayed, the water and paraffin drop back into the holding tank as the next message is queued up. The oil and water separate just like expected and a pump at the level of each fluid feeds it back into the system.

We were deeply puzzled at what appeared to be an Arduino mounted on a DIN rail for use in industrial settings, but then discovered that this product is what [hwhardsoft] built the demo to sell. We can see some pretty cool variations on this technique for art displays.

 


Filed under: Arduino Hacks
Hack a Day 03 Jun 03:00