@[email protected] @nabijaczleweli @mirabilos

Apparently, someone crammed 69666 characters of Unifont 13.0.06 into BDF for u8g2
#font generation, so BDF evidently doesn't have that limit either, and upstream Unifont doesn't do this. Also, because of FontForge limits crashing when importing a lot of glyphs, evidently the BDF is custom on the u8g2 Github, but the problem is that it hasn't been updated to Unifont 15, so while Plane 1 is reduced two versions, Plane 0 is upgraded two versions, without going over 65535, ensuring better BDF compatibility, especially when doing low-level stuff (evidently not needed here). Then again, Minecraft uses .hex files in 1.20 to get around non-HarfBuzz TrueType limits. Also I can't run Unifont compilation utilities on any machine I've tried, so I'm stuck with what I've got.

Sometimes it's okay to be proud of what you've got. I mean, it will work better on the older Linux builds its intended for, and it is actually generatable without crashes in FontForge, or forcing inflexible code to compile, or using the abridged Bits'N'Picas, which hates the BDF enough to not want to make a .hex.

Compatibility is key, folx.


#lcdmatrix #arduinos #arduinolibs #arduino #unifont #unifontex #linux #unicodesets #unicode #unicodefont #dotmatrix #dotmatrixlcd #vfd #oled #characterlcd #codingfont #electronics #electronic #tech #technology #C #ucglib #u8g2 #soldering #circuit #circuitry #electricalengineering #bitmap #bitmapfont #bitmapfonts #pixel #pixelfont #pixelfonts #statusdisplay #emoji #CJKtext #CJKVtext #lowlevel #hardwaredesign #hardwareengineering #Ccode #bdf #RLE #ttf #truetype #woff #woff2 #b3k #eot #otb #woff3 #bwtc32key #typography #fontdev #digitaldrain #finals #finalsweek #collegefinals #collegefinalsweek #electronicsprojects #tvhead #tvheadcostume #tvcostume #ledmatrix #ledarray #creditingamendment #costume #wiring #diyelectronics #fonts #lcdmatrix #arduinos #compatibility #compat #minecraft #hex #arduinolibs #arduino #unifont #unifontex #linux #unicodesets #unicode #unicodefont #dotmatrix #dotmatrixlcd #vfd #oled #characterlcd #codingfont #electronics #electronic #tech #technology #C #ucglib #u8g2 #soldering #circuit #circuitry #electricalengineering #bitmap #bitmapfont #bitmapfonts #pixel #pixelfont #pixelfonts #statusdisplay #emoji #CJKtext #CJKVtext #lowlevel #hardwaredesign #hardwareengineering #Ccode #bdf #RLE #ttf #truetype #woff #woff2 #b3k #eot #otb #woff3 #bwtc32key #typography #fontdev #digitaldrain #finals #finalsweek #collegefinals #collegefinalsweek #electronicsprojects #tvhead #tvheadcostume #tvcostume #ledmatrix #ledarray #creditingamendment #costume #wiring #diyelectronics

Arduino Caller ID Display is Better Late than Never

It's no secret that the era of the landline telephone is slowly coming to a close. As of 2020, it was estimated that less than half the homes in America still subscribed to plain old telephone service (POTS). But of course, that still amounts to millions upon millions of subscribers that might get a kick out of his Arduino caller ID developed by [Dilshan Jayakody].

The completed HT9032D board.

Truth be told, until this point, we hadn't really given a lot of thought to how the caller ID system works. But as [Dilshan] explains, you can actually pick up a dedicated IC that can decode incoming caller data that's sent over the telephone line. In this case he's using a Holtek HT9032D, which comes in a through-hole DIP-8 package and can be picked up for around $2 USD. The chip needs a handful of passives and a 3.58 MHz crystal to help it along on its quest, but beyond that, it's really just a matter of reading the decoded data from its output pin.

To display the caller's information, [Dilshan] is using an Arduino Uno and common 16×2 HD44780 LCD. As a nice touch, the code will even blink the Arduino's onboard LED when you've missed a call. As a proof of concept there's been no attempt to condense the hardware or ditch the breadboard, but it's not hard to imagine that all the components could be packed into a nice 3D printed enclosure should you want something a bit more permanent.

We've seen caller ID data being collected in previous projects, but they used a USB modem combined with a software approach. We really like the idea of doing it with a cheap dedicated IC, though we'll admit this demonstration would probably have been a bit more exciting a decade ago.

#classichacks #phonehacks #16x2lcd #arduinouno #callerid #characterlcd #decoder

Arduino Caller ID Display Is Better Late Than Never

It’s no secret that the era of the landline telephone is slowly coming to a close. As of 2020, it was estimated that less than half the homes in America still subscribed to plain old telephon…

Hackaday

Here’s How to Sniff Out an LCD Protocol, But How Do You Look Up the Controller?

Nothing feels better than getting a salvaged component to do your bidding. But in the land of electronic displays, the process can quickly become a quagmire. For more complex displays, the secret incantation necessary just to get the things to turn on can be a non-starter. Today's exercise targets a much simpler character display and has the added benefit of being able to sniff the data from a functioning radio unit.

When [Amen] upgraded his DAB radio he eyed the 16×2 character display for salvage. With three traces between the display and the controller it didn't take long to trace out the two data lines using an oscilloscope. Turing on the scope's decoding function verified his hunch that it was using I2C, and gave him plenty of data to work from. This included a device address, initialization string, and that each character was drawn on screen using two bytes on the data bus.

He says that some searching turned up the most likely hardware: a Winstar WO1602I-TFH- AT derived from an ST7032 controller. What we're wondering is if there is a good resource for searching this kind of info? Our go-to is the LCD display and controller reference we covered here back in March. It's a great resource, but turns up bupkis on this particular display. Are we relegated to using DuckDuckGo for initialization strings and hoping someone's published a driver or a logic dump of these parts in the past, or is there a better way to go about this? Let us know in the comments!

#microcontrollers #characterlcd #i2c #reverseengineering #st7032 #winstar

Here’s How To Sniff Out An LCD Protocol, But How Do You Look Up The Controller?

Nothing feels better than getting a salvaged component to do your bidding. But in the land of electronic displays, the process can quickly become a quagmire. For more complex displays, the secret i…

Hackaday