Page 1 of 2

[Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 15:41
by VanessaE

LED marquee mod


This mod provides a set of LED panels to form a marquee, controlled by Mesecons' Digilines mod.

Simply place one or more panels, either in a line or forming a wall, and set a channel on just the left-most or upper-left one.

Then send a character, a string, or one of several control words or codes to that channel from a Mesecons Lua Controller and the mod will try to display it.
+ Spoiler


Three glass, three Mesecons lamps, two of any kind of wood, and a Mesecons Microcontroller (not a LuaC)
+ Spoiler
Download: ...
...or browse the code:

License: LGPL 3.0 for code, CC-by-SA 4.0 for media and everything else.

Dependencies: Minetest and minetest_game/default, digilines, Mesecons LuaControllers. Mesecons Microcontrollers and Lamps are optional and only needed for crafting (you can use just the individual sub-mods if you don't want all of Mesecons)

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 15:48
by rubenwardy
Look useful! And good to see another mod from you

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 16:22
by LegoLogger
Very nice looking mod! I'll have to test this on your servers soon. And probably install them on mine. Very useful, something I've wanted for a long time! Thanks

EDIT: Now we can do Times Square in Minetest! lol


Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 16:29
by GreenXenith
Houston, I think we have a problem.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 17:07
by garywhite
Same thing for me (would post a photo but I forgot how)

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 18:32
by VanessaE
Yeah, my bad. Brain-o on my part. Fixed in git.

Note that you may have to dig-up and re-place the panels due to the change to proper wallmounting.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 15, 2018 21:54
by VanessaE
Update: this mod now supports the ISO-8859-1 character set. Of course since Lua has no concept of what a character set is (nevermind trying to use Unicode/UTF-8 :-P in this particular situation), you'll have to use string.char() to specify them. I'll try to work out something better later.

There are also a bunch of symbols stuffed into the empty 128-159 range that should be useful on a marquee:
  • 128,129: musical notes
  • 130-140: box drawing glyphs
  • 141-144: block shades
  • 145-152: arrows
  • 153-156: explosion/splat
  • 157-159: smileys
Plus, I changed the "all on" keyword to point to char(144), and "cursor" is moved to char(31).

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Thu Aug 16, 2018 04:27
by GreenXenith
Ohhhh man do I love this mod.
With the power of luatransform to create 4800 panels at once, set each one to a unique xy channel name, and put a digimese wall behind them, plus a luacontroller that is gonna have a bad day, and some code (below), I have created a totally efficient and completely optimal full UltraHD LED screen.
In fact it's so efficient I stopped it loading because I was too impatient (4 pixels per second, man!).
Ok, it's not very fast and its only 80x60, but it's still cool!
+ Spoiler
I tried a few different variations of the code (10x10 chunks, odd/even at the same time), and it ended up that having 2 luacontrollers with the code but one starting at the top was the "fastest". There are so many things one could do with a smaller screen! :D

I am currently in the process of making a game of pong with this.. we'll see how that goes.

Because this was totally what this mod was meant for, right?

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Thu Aug 16, 2018 06:46
by VanessaE
Now featuring multi-line support (GreenDimond's hack is obsolete ;-) ). See README or first post for details.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Thu Aug 16, 2018 18:09
by VanessaE
Added basic "cursor position" support, and rudimentary UTF-8 string translation.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Thu Aug 16, 2018 20:23
by Andrey01
May i know how did you make that mod? I mean probably did you register black panels with all kinds of symbols on it and each symbol with each color? I think you would have very many nodes.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Thu Aug 16, 2018 20:33
by VanessaE
There are 224 nodes - one for each character from 0x20 to 0xFF. The textures are a sort of black plastic for the "frame" and back side, a background image of 8x8 LEDs (all turned off) for the front, and an overlay face is used for the character glyph (textures thereof are drawn as if they're made of white LEDs).

They use param2 for colorization of the overlay containing the white glyphs ("colorwallmounted" mode which is why the color selection is somewhat limited).

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Fri Aug 17, 2018 15:51
by VanessaE
More keywords added again, and some stupid ones removed. :-)

Fixed a few minor bugs also, see commit log and README (or first post here).

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Aug 20, 2018 11:44
by Isja Krass
how can i change the COLOR of the Digilines LED marquee?

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Aug 20, 2018 14:58
by GreenXenith
Isja Krass wrote:how can i change the COLOR of the Digilines LED marquee?
VanessaE wrote:A byte value of 0 to 27 in a string will change colors (i.e. string.char(0 to 27) ).

Color values 0 to 11 are:

Red (0), orange, yellow, lime, green, aqua, cyan, sky blue, blue, violet, magenta, or red-violet (11)

Colors 12 to 23 are the same as 0 to 11, but lower brightness.

Colors 24 - 27 are white, light grey, medium grey, and dim grey (or think of them as full bright white, a bit less bright, medium brightness, and dim white).

The last color that was used is stored in the left-most/upper-left "master" panel's metadata, and defaults to red. It should persist across reboots.
Therefore, doing something like

Code: Select all

digline_send("My channel", string.char(4).."My awesome message!")
Should send a green message.

And please use a normal font size in your posts.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Aug 20, 2018 15:22
by Isja Krass
Thanks for your for your support. :-)
and I will use a normal size in the future

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Aug 20, 2018 21:26
by VanessaE
Note that I'm going to change how colors work. It'll be proper readable strings using a forward slash as the key, instead of string.char() codes. i.e. "foo/1bar/2/baz/3blah" will print foo in red, bar in orange, baz in yellow, blah in lime. Colors > 10 will use letters i.e. "/A" through "/R" (or lowercase).

I'll post a follow-up when that change goes live.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Tue Aug 21, 2018 00:35
by VanessaE
That change is live now. Also, char(10) is newline now, like it should be. See first post or README.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 22, 2018 00:32
by v-rob
I decided to write this post on my new HD screen, but if you want to read it in normal text (or you can't see the images), it's as following:

I made some alternate textures for this mod which are 32 x 32 pixels instead of 64 x 64, and instead of being round, they're square. I think it looks better, and if anyone else wants them, I attached them to the post.

While I was making the square textures, I noticed a problem with some of the original textures. Some of them have LED lights that are offset by a pixel so that they don't match up properly. I didn't keep a log of which ones they were, but the ones that I remember were the smileys (157 - 159) and some of the block shades (141 - 144), although there are many more. Look at the bottom screenshot or the numbers I specified to see what I mean.

And here are the images:

(Nearly) full post on an HD LED screen.

Close-up on the square textures.

Notice the offset LED lights in the right one.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Wed Aug 22, 2018 01:16
by VanessaE
Nice :-)

Shifted pixels fixed in git (it was just two of the block shades, the smileys are fine). If you find any others, please give me a list.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Dec 24, 2018 08:21
by Whiskey
Any possibility of getting an example of code for the luacontroller that does scroll. I did a digiline_send("theproperchannel","start_scroll") after sending the text but the text displays with no scrolling.
Thanks a bunch.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Dec 24, 2018 08:33
by Whiskey
I can get it to scroll at a max speed of 1 char per second with:

digiline_send("daf","scroll_speed 1")
digiline_send("daf","This is the Dead and found box")

If I try to send a decimal value i.e. 0.5 instead of 1 with scroll_speed. It then goes back to not scrolling.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Dec 24, 2018 08:57
by VanessaE
Please file an issue on the gitlab repo and I'll take a look at it when I can.

In the meantime, omit the speed, start, and stop scroll commands, send your text, and then just have your LuaC repeatedly send the scroll_step command on a timed interrupt.

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Mon Jan 07, 2019 21:48
by Sokomine
Very nice looking display and intresting mod. It'd be great if we could actually control each "LED" individually, but then - that would be far too many textures (and close to impossible to control).

Re: [Mod] Digilines LED marquee [git][led_marquee]

Posted: Sat Feb 02, 2019 17:45
by minetest-user
Hello everybody!

With the mod "LED marquee mod" I would like to build a display to display text.

For this I have set 6 "LED marquee panel" side by side. I then connected these with Digiline to a Luacontroller. With the following code I would like to display the text "Stage 1 to City Middle". This should come from the right and left "run out".

Code: Select all

digiline_send("1","scroll_speed 1")

digiline_send("2","scroll_speed 1")

digiline_send("3","scroll_speed 1")
digiline_send("3"," ")

digiline_send("4","scroll_speed 1")
digiline_send("4"," ")

digiline_send("5","scroll_speed 1")
digiline_send("5"," ")

digiline_send("6","scroll_speed 1")
digiline_send("6"," ")

Unfortunately, it does not work.
Does anyone see the error?

Thank you in advance!