Our new official repo is on github
LCD Smartie version 5.6 is released!
Download it now: https://github.com/LCD-Smartie/LCDSmartie/releases

International characters support

General discussion about LCD Smartie.

Moderators: _X7JAY7X_, caesar, IFR, mattcro, limbo, Fast351

Post Reply
trihy
Posts: 100
Joined: January 17th, 2018, 1:43 pm

International characters support

Post by trihy »

BTW I saw this plugin https://github.com/ChlorideCull/chcl_now_playing

It's a Windows Now Playing one. Could be Spotify or any other program playing audio or video.

But is has trouble with regional characters. Dev told something about the way lcdsmartie receive the text. If you have any ideas on how to help with that, will be great.

limbo
Plugin Author
Posts: 1604
Joined: February 13th, 2005, 7:38 pm
Location: Athens - Greece
Contact:

Re: International characters support

Post by limbo »

Displaying foreing characters may hit limitation form device char map as well.
LCD modules support certain character sets.
I have created seacrh and replace plugin that may help to remap characters or replace them with different ones, even with custom characters in some cases, but this should be set on each screen in a differentway.

Code: Select all

[Search2] 
 1="Α"
 2="Β"
 3="Γ"
 4="Δ"
 5="Ε"
 6="Ζ"
 7="Η"
 8="Θ"
 9="Ι"
 10="Κ"
 11="Λ"
 12="Μ"
 13="Ν"
 14="Ξ"
 15="Ο"
 16="Π"
 17="Ρ"
 18="Σ"
 19="Τ"
 20="Υ"
 21="Φ"
 22="Χ"
 23="Ψ"
 24="Ω"

The following example is a settings file for "search and replace plugin" to display Greek characters to the screen. 

 [Replace2]
 1="A"
 2="B"
 3=$CustomChar(1,31,16,16,16,16,16,16,0)$Chr(176)
 4=$CustomChar(2,4,10,10,17,17,17,31,0)$Chr(158)
 5="E"
 6="Z"
 7="H"
 8=$CustomChar(3,4,10,17,21,17,10,4,0)$Chr(131)
 9="I"
 10="K"
 11=$CustomChar(4,4,10,10,17,17,17,17,0)$Chr(132)
 12="M"
 13="N"
 14=$CustomChar(5,31,0,0,14,0,0,31,0)$Chr(133)
 15="O"
 16=$CustomChar(6,31,17,17,17,17,17,17,0)$Chr(134)
 17="P"
 18= $Chr(246)
 19="T"
 20="Y"
 21=$CustomChar(3,4,14,21,21,21,14,4,0)$Chr(131)
 22="X"
 23=$CustomChar(7,17,21,21,14,4,4,4,0)$Chr(135)
 24=$CustomChar(8,14,17,17,17,14,0,31,0)$Chr(136)
 824=$Chr(244)
 918=$CustomChar(7,31,16,8,4,8,16,31,0)$Chr(135)

trihy
Posts: 100
Joined: January 17th, 2018, 1:43 pm

Re: International characters support

Post by trihy »

Hi. Thanks or moving this to a new thread.

This case seems different because regional characters are shown like 2 characters. Usually when this happens is just one. I think this case needs other kind of fix.

I use a plugin for character replacement but the same characters are completely different represented with this now playing plugin when running spotify.

From plugin dev
Part of the issue is that LCDSmartie mostly passes the text straight through to the display, and any display bought after (IIRC) 2006 has a different character set that can display Western European diacritics like Å, Ä, and Ö - but LCDSmartie doesn't let plugins know which character set is available, and also replaces 8 characters for compatibility with an old bug.

limbo
Plugin Author
Posts: 1604
Joined: February 13th, 2005, 7:38 pm
Location: Athens - Greece
Contact:

Re: International characters support

Post by limbo »

but LCDSmartie doesn't let plugins know which character set is available, and also replaces 8 characters for compatibility with an old bug.
LCD Smartie doesn't read the char table from the dispaly module and I believe that this is not possible unless the backend board supports such function, which should be a rare case (not 100% sure is such board exists). In addition to that fucntion plugins are not desinged to get info from LCD smartie.
The 8 characters replaced by LCD smartie are Custom Characters and they are there to be replaced by designing symbols and characters.

This is how LCD Smartie works.

Again, using my previous example I'm able to display Greek chacarters to any display by remaping to specific character table (look at 18=Σ , remapped to 18= $Chr(246) on my dispaly module) and creating custom character for those are not exist in the charm map (using the 8 custom characters).

hydrolisk1792
Site Admin
Posts: 305
Joined: July 23rd, 2010, 8:32 pm
Location: Las Vegas, NV USA
Contact:

Re: International characters support

Post by hydrolisk1792 »

limbo wrote:
February 11th, 2025, 5:15 pm
but LCDSmartie doesn't let plugins know which character set is available, and also replaces 8 characters for compatibility with an old bug.
LCD Smartie doesn't read the char table from the dispaly module and I believe that this is not possible unless the backend board supports such function, which should be a rare case (not 100% sure is such board exists). In addition to that fucntion plugins are not desinged to get info from LCD smartie.
The 8 characters replaced by LCD smartie are Custom Characters and they are there to be replaced by designing symbols and characters.

This is how LCD Smartie works.

Again, using my previous example I'm able to display Greek chacarters to any display by remaping to specific character table (look at 18=Σ , remapped to 18= $Chr(246) on my dispaly module) and creating custom character for those are not exist in the charm map (using the 8 custom characters).
I think something like this can be done with a custom backpack using an Atmel chip and some C++. Also I do believe that there is a way past the 8 custom character limitation. Has something to do with cycling the display but there is a visual strobe effect on the display itself. Just a thought.

trihy
Posts: 100
Joined: January 17th, 2018, 1:43 pm

Re: International characters support

Post by trihy »

Doesnt seem to work for spotify.

I have already replaced custom chars for my board. Spotify use others for the same characters. Dont know why.

I think the data comes wrong formatted from spotify. It is not lcdsmartie related.

Post Reply