Contents of LEDmsg Protocol document
What is LEDmsg protocol ?
Attachment
A-1. How to set Display Effects
A-2. How to display Information Data
A-3. How to Display Special Character
A-4. More Examples of Real Time Message
A-5. How to set X/Y position of the section
You can see this document in pdf version also.
1. Introduction
The LEDmsg protocol is a “simple, smart and reliable” communication protocol between LMD controller and industrial PCs, PLCs, IoT and embedded systems.
By sending message data or commands according to this protocol, LMD controller displays the message on the LED signboard or controls it.
2. Features
- The basic structure LEDmsg protocol is “![000Hello world!]”.
- The text message is displayed by the default display Properties as below.
☞in real-time, starting from the top left on the full screen, yellow color, no effect, 8×16/16×16 pixel size, etc. - If you want to change any display property, you can insert the property delimiter and the value in the form of “/Xyyzz“ or “/Xy” to the message packet.
- The real-time message data is saved in RAM while page messages in flash ROM. Their formats are basically almost the same.
- If you prestore the background image files (text, graphics, animation) by using Dabitche software in advance, you can use them as the background for real-time/page messages or directly display it on LED sign by calling up the file number.
Examples of LEDmsg Protocol (screen size: 96×32 dots)
![000Hello world!]
![000/C1Industrial /C2LED /C6sign /C7123!]
![000/F0103/C1123 /C2ようこそ/C3欢迎 /C75678!]
3. Application cases
LMD controller allows you to display messages in a variety of ways as follows:
Case 1
- This is the most common cases for industrial LED sign to display frequently changing message instantly.
- As the message data is stored in RAM, it is deleted when the power is reset.
Case 2
- This is to display general messages (information, notices, warnings, greetings..) by page order in a loop.
- Since message data is stored in FLASH memory, it continues to be displayed even if the power is reset.
- Up to 10 page messages can be used by allocating memory.
Case 3
- Normally, Page messages are displayed repeatedly in order.
However, when real time message data is received, it is immediately displayed for the set time. After that, page messages resumes displaying.
Case 4
- Using DabitChe software, you can create various image files, save them in one BG Playlist(Max. 255) and upload them to the controller.
After that, you can call any file number on the BG Playlist to display it on the LED signboard by sending a simple protocol.
Ex.) “![002003!]” is to display number 3 file of the BG Playlist. - Image file can be any of text, graphic (logos, specific sign, border lines, etc.), animation (moving arrows, etc.) format.
Case 5
- This is the same case as the above “Case 4” only except that the file calling method is not a protocol but switch signals.
- Up to 255 signals can be made by inputting 8 different signals from PLC SSR(DC12~24V) or dry contact of the switch/relay blocks.
- For this application, you need to install “Switch IO Board” as an option.
4. Protocol Structure
Command structure of LEDmsg protocol is in the form of “![abc … !]”. Ex)”![000Hello World!]”
Division | Description | |
![ | Start character | This indicates the start of the protocol. |
a | Address | This is the address of the LED sign controller. 1 : 1 communication (single mode) for RS232/Ethernet: The address should be “0” (default). 1 : n communication(multi mode) for RS-485 : The address can be any of “1 ~ F(15)”. Master address must be “0”. |
b | Error check | “0”: not to use the BCC(Block Check Character). “1”: to use the BCC by adding two bytes of BCC after the end character “!]”. BCC value means the number of characters between “Start character“ and “End character” inclusive. Ex.) ![010ABCD!]33 ![010/C3123/C6ABC!]42 |
c | Command type | “0”: Real-time message – The message data is stored in RAM memory of the controller and displayed on LED sign immediately. “1”: Page message – The message data is stored in the page memory allocated to the ROM of the controller and displayed in page order one by one in a loop. “2x”: Special Command – This is command codes to control or set up LED sign. |
… | Data (Max.208byte) | Messages: contents for display properties and text message Special Command: details |
!] | End character | This indicates the end of the protocol. |
Response structure of LEDmsg protocol is in the form of “![0bcd!]”. Ex)”![0000!]”
Division | Description | |
![ | Start character | This indicates the start of the protocol. |
0 | Address | The address is always “0”. |
b | Error check | Refer to the above command packet |
c | Command Type | This is the same as the command packet above. |
d | Communication status | If the command is processed normally, it responds with “0”. Ex) “![0000!]” However, if the command cannot be processed properly, it responds with “F”. Ex) “![000F!]” In this case, appropriate measures, such as resetting the CPU, must be taken. |
!] | End character | This indicates the end of the protocol |
5. Display Properties
You can add various message display properties in the format of “/ + delimiter + values” into the LMD protocol message packet. Ex) ![000/P0001/X0324/Y0408/C11234!]
If not, the default Properties[Note 1] are automatically applied to the message
Delimiter | “xx“ | “yy“ | Default Properties[Note 1] | |
Value | Description | |||
/Pxxyy | 01 Page number | 02 Section number | /P0000 | Page 0, Section 0 |
/Dxxyy | 03 Times of displays | 04 Display Priority | /D9901 | Infinite repetition, urgently |
/Fxxyy | 05 Character encoding | 06 Font size | /F0003 | ASCII: 1 byte by 8×16 pixel Languages: 2 byte by 16×16 |
/Exxyy | 07 Entry effect | 08 Exit effect | /E0101 | Stationary effect |
/Sxxyy | 09 Effect speed | 10 Stay time | /S1502 | Speed: 15, Stay time: 1 sec. |
/Xxxyy | 11 X start position | 12 X end position | /X0000 | Horizontally, from left end to right end |
/Yxxyy | 13 Y start position | 14 Y end position | /Y0000 | Vertically, from top to bottom |
/Bxxx | 15 Background image number | /B000 | Do not use background image | |
/Cx | 16 Text color | /C3 | Yellow color | |
/Gx | 17 Text BG color | /G0 | Do not use background color | |
/Tx | 18 Font group | /T0 | “Font group 0” applied |
01 /Pxxyy: Page number [00/01/02/03… → Page 0 / 1 / 2 / 3 …]
When using a page message, assign the page number. ☞refer to Chapter “6-B”.
In the case of real-time message packets, there is no page number, so it is fixed to “00”.
02 /Pxxyy: Section number [00/01.. → Section0 / Section 1…]
By dividing one screen into four sections, message data can be transmitted individually and displayed with different display properties.
03 /Dxxyy: Times of display [00/01/02 ~ 98/99 → No display / 1 time /2 times ~ 98 times / Infinite repetition]
Real-time message 00: LED sign does not display the message
1 ~ 98: LED sign displays the message repeatedly for this number of times.
99: LED sign displays the message infinitelyPage message 00: LED sign does not display the message.
99: LED sign displays the page message for the period of “10 Stay time” and goes over to the next page message display.
04 /Dxxyy: Display priority [00/01 → Normal / Urgent]
Normal : After the current message display ends, a new message packet will start displaying from the next loop.
Urgent(Clear) : Displaying the current message will be immediately cleared and a new message packet will start displaying.
05 /Fxxyy Character encoding type[Note 2]
Since the encoding method varies depending on your program in use, it is recommended to try all of “/F0003, /F0103, /F0203, /F0303″ until your language fonts are displayed correctly.
00 (default) | ASCII character: 1-byte format Korean: 2-byte combination | 02 | All languages: 2-byte UTF-8 Korean: 2-byte combination |
01 | All languages : 2-byte UTF-16 and displayed in 2-byte Unicode. | 03 | All languages : 3-byte UTF-16 and displayed in 2-byte Unicode. |
[NOTE 1] How to change the default message display properties
The default properties are as the right packets:![0032/P0000/D9901/F0003/E0101/S1502/X0000/Y0000/B000/C3/G0/T0!]
User can change any of this default properties by sending this special command.
For example, if the user sends the packet below and then sends a simple packet of “![000hello world!]”, you can see that the text default color is automatically changed to green.
☞![0032/P0000/D9901/F0003/E0101/S1502/X0000/Y0000/B000/C2/G0/T0!]
[NOTE 2] When you send the sample packet “![000/F0303/C1123 /C2ようこそ/C3欢迎 /C75678!]” and see that your languages are garbled and displayed abnormally, try as follows:
1.Change the packet(in text) to hexadecimal at this link as below, and send it(in hex.) again to LMD controller.
Ex.) “215b3030302f46303330332f4331313233202f4332e38288e38186e38193e3819d2f4333e6aca2e8bf8e202f433735363738215d”
2.If there is no improvement, change any of “ /F0103, /F0203” and try it again.
06 /Fxxyy : Font size in pixel (width x height)
The default size of ASCII fonts is “8×16” pixels, and the size can be easily changed.
The default size of the language font is “16×16” pixels, and changing the size is not recommended as it does not look good.
07 /Exxyy : Entry effect[Note 3] [01~55 → no effect…] ☞ Refer to “A-1. Codes for Entry/Exit effect of Message”
08 /Exxyy : Exit effect[Note 3] [01~55 → no effect…] ☞ Refer to “A-1. Codes for Entry/Exit effect of Message”
In case of a long message, you can display up to 120 characters in a row by setting the Entry & Exit effect as “Shift left”.
09 /Sxxyy : Effect speed[Note 3] [00/10/20/30/40~99 → fast ~ slow]
The smaller the value, the faster the speed.
Normally, “10~20” is good for “Shifting to Left” effect, while “50~80” for “Blinking” effect.
Effect speed is a relative speed and changes depending on the LED module scanning method, etc.
10 /Sxxyy : Stay Time[Note 3] [00/01/02/03~99 x 0.5sec.]
Stay time refers to the time from when the entry effect ends to when the exit effect begins.
Actual Stay time (in second) shall be multiplied by “0.5” to the set value. Ex.) 04 x 0.5 sec. = 2 sec.
For Shifting Effect for long text message, Stay Time should be “00”.
[NOTE 3] How to set the message display effect, speed and stay time
Each message section has the process of “Entry > Stay > Exit”.
You can set the Entry/Exit effect, effect speed, and Stay time individually.
The default value is “Stop effect, Effect speed: 15, Stat time: 2 x 500ms”.
11 /Xxxyy : X-start position(X1) [00/01/02~99 x 4 pixels] ☞ Refer to “A-5. How to set X/Y position”
Set the horizontal starting position of the text display area in nibble (4 pixel) units from the left end.
12 /Xxxyy : X-end position(X2) [00/01/02~99 x 4 pixels] ☞ Refer to “A-5. How to set X/Y position”
Set the horizontal ending position of the text display area in nibble (4 pixel) units from the left end.
13 /Yxxyy : Y-start position(Y1) [00/01/02~99 x 4 pixels] ☞ Refer to “A-5. How to set X/Y position”
Set the vertical starting position of the text display area in nibble (4 pixel) units from the top.
14 /Yxxyy : Y-end position(Y2) [00/01/02~99 x 4 pixels] ☞ Refer to “A-5. How to set X/Y position”
Set the vertical starting position of the text display area in nibble (4 pixel) units from the bottom.
15 /Bxxx : Background image number [000/001/002/003~255 → No use/#001/#002/#003 ~ #255]
The DabitChe software allows you to create a list (BGplaylist) containing background images of various types (text/graphics/animation) and upload them to the controller.
Then, you can call up the image number from the list and display it individually or use it as a text message background. ☞ For details, refer to “DabitChe Manual, Chapter 4”
When the screen is split into two or more sections, the background image can be called only in section 0.
16 /Cx : Text color [0-Black, 1-Red, 2-Green, 3-Yellow, 4-Blue, 5-Purple, 6-Skyblue, 7-White]
You can set the color for individual character or all characters as below examples.
Ex.1) “![000/C1Hello World!]” → Hello World
Ex.2) “![000/C6Hello /C7World!]” → Hello World
Ex.3) “![000/C1H/C2e/C3l/C4l/C5o /C6World!] → Hello World
17 /Gx : Text BackGround color [0-Black, 1-Red, 2-Green, 3-Yellow, 4-Blue, 5-Purple, 6-Skyblue, 7-White]
You can also set the background color for individual character or all characters as below esamples.
Ex.1) “![000/C1/G2Hello World!]” → Hello World
Ex.2) “![000/C1/G4Hello/C2/G0 World!] “ → Hello World
18 /Tx : Font group in use [0-Font Group0, 1-Font Group1, 2-Font Group2, 3-Font Group3]
You can set English/language/user fonts differently into up to 4 groups and display them selectively for each character. For more detalts, please contact us.
[TIP 1] If you’d like to display the character “/” on the LED sign, input “//” to the message packet. . Ex.) “![000/C1RS-232//485!]” → RS-232/485
[TIP 2] Special characters such as “►☺%♫…” are displayed by directly calling up the position value from the USER font file in the form of “/Uxxx“. For details, refer to “A-3”.
[TIP 3] “Extended ASCII code for European language” such as “È Ù á é í ü…” is displayed by directly calling up the position value from the ASCII font file in the form of “/Axx”. For details, refer to “How to display Euro extended font”.
6. Tutorial
6-1. How to display Real time message
Real time message of LEDmsg protocol is to transmit frequently changing message data to the LED signboard and display it immediately.
To understand how it works, please send the below example packets for the””96 x 32 pixels” screen from the DABIT simulator to the LED sign.
If the message display position (x/y) is not specified, the message display starts from the left side of the first line (16 pixel height) and progresses to the right end, then moves to the next line and continues until the last line.
Example 1 ![000Hello LED!]
- ”0” means Real time message while “1” means Page message.
- The text message is displayed by default display property.
Example 2 ![000/X0300/Y0200/C1Hello /C2LED!]
- /X0300: X-start point is “03 x 4 = 12 pixels”, X-end point is the default(00).
- /Y0200: Y-start point is “02 x 4 = 08 pixels”, Y-end point is the default(00).
- Text color : /C1(Red), /C2(Green)
Example 3 ![000/C2Target:/C1 1000/C2Result:/C1 900!]
Entering one space bar creates a margin of 8 pixels, and entering two space bars creates a margin of 16 pixels horizontally.
Example 4 ![000/C7Industrial /C7/G4LED/C2/G0 sign /C6123!]
- Text color: /C7(white), /C2(green), /C6(sky blue)
- Text Background color: /G4(Blue), /G0(No color)
Example 5-1 ![000/P0000/X0400/Y0004/F0103/C2到达巴士!]
- /P0000: This packet is for “Section 0”.
- /X0400: X-start is “04 x 4 = 16 pixels” and X-end is the default(00).
- /Y0004: Y-start is the default(00), while the end is “04 x 4 = 16 pixels”.
- /F0103: Character encoding type is “01 and the font size is “03(16×16 pixels, default).
☞if characters are broken, refer to [NOTE 2] above.
Example 5-2 ![000/P0001/X0000/Y0408/E0606/S1000/C1A1234 /C3B567 /C5C8899!]
- /P0001: This packet is for “Section 1”.
- /X0000: X-start and X-end is the default(00).
- /Y0408: Y-start is” 04 x 4 = 16 pixels” and the end is “08 x 4 = 32 pixels”.
- /E0606: Entry effect and Exit effect is both “06(shifting left)”. ☞For details, refer to [NOTE 3] above.
- /S1000: Stay speed is “10” and Stay time between Entry and Exit is “00”.
- Text color : /C1(Red), /C3(yellow), /C5(pink)
Example 6 ![000/X0008/Y0408/B007/C112.3!]
- /X0008: X-start is the default and X-end is “08 x 4 = 32 pixels”.
- /Y0408: Y-start is” 04 x 4 = 16 pixels” and the end is “08 x 4 = 32 pixels”.
- /B007: Background image number is “007”.
☞ For details, refer to “DabitChe Manual, Chapter 4 and A-6”
☞ Click >> here<< to see a video of the actual display of the example packet above.
If LMD controller properly processes the real time message data, it responds with “![0000!]”. If it fails to process it, it responds with “![000F!]”.
When multiple real time message are displayed overlapping, or when you want to stop displaying the real time message, send the real time message reset command “![00621!]” or reset the power.
☞ For more details, refer to “A-4. More Samples of Real Time Message”
6-2. How to display Page messages
Page message of LEDmsg protocol is to static messages which are not changing frequently such as information, notices, greetings, etc.
The message data is stored in the page memory allocated to the ROM of the controller and displayed in page order one by one in a loop.
So, even if you reset the power, page messages will continue to display.
For easier understanding on Page messages, please proceed as follows;
Step 1. On DABIT Simulator, go to “Special Functions > Set Page Message” section, and set “3” at Total Pages and click “Send”. You can set it up to 10, if necessary.
You can just send a command protocol of “![006003!]”, for details, refer to Chapter “7-L”.
Step 2. On “ASCII Message” section, input the below sample packets and click “Send”, and you will see the three messages displaying on
LED signboard in page order for the individual Stay time.
☞ if Page message does not appear on LED sign, refer to [Note 4] below.
Page 0-0 ![001/P0000/Y0004/C7Welcome!!]
- ”1” means Page message packet.
- /P0000: This packet is for “Page 0” and “Section 0”
- /Y0004: Y-start is the default(00) and Y-end is “04 x 4 = 16 pixels”.
- Text color : /C7(sky blue)
Page 0-1 ![001/P0001/Y0408/E0606/S1000/C1LED shopping mall!]
- /P0001: This packet is for “Page 0” and “Section 1”.
- /Y0408: Y-start is “04 x 4 = 16” and Y-end is “08 x 4 = 32 pixels”.
- /E0606: Entry effect is “06(Scrolling to left)” and Exit effect is the same.
- /S1000: Effect speed is “10(fast)” and stay time is “0 sec.”.
- Text color : /C1(red)
Page 1 ![001/P0100/E0826/S2004/C1$2 /C2per /C110/C2minafter /C615min.!]
- /P0100: This packet is for “Page 1” and “Section 0”.
- /E0626: Entry effect is “06(Scrolling to left)”
- and Exit effect is “26(Curtain, vertically outward)”.
- /S2004: Effect speed is “20(normal)” and stay time is “04 x 0.5 = 2 sec.”.
- Text color : /C1(red), /C2(green), /C6(sky blue)
Page 2 ![001/P0200/S1004/F0103/C1超过15分钟每/C310分钟 /C62美元!]
- /P0200: This packet is for “Page 2” and “Section 0”.
- /S1004: Effect speed is “10(fast)” and stay time is “04 x 0.5 = 2 sec.”.
- /F0103: Character encoding type is “01” and the font size is “03(16×16 pixels)”. ☞if characters are broken, refer to [NOTE 2] above.
- Text color : /C1(red), /C3(yellow), /C6(sky blue)
If LMD controller properly processes the page message data, it responds with “![0010!]”. If it fails to process it, it responds with “![001F!]”.
In order to change Page message data, send the new message packet with the same page number to overwrite it.
To stop displaying the page message, add “/D0000” to the page (or section) message packet and send it to the LED sign.
If you want to reset(delete) all page message data stored in the controller’s ROM memory, refer to “Chapter 5.L” or click on “Special Functions> Reset Message(all Pages)“ from DABIT Simulator.
[NOTE 4] Real time message always has the priority of display over Page messages. So, If you send the page message packet while a real time message is being displayed, they will not be displayed. In this case, send a real time message reset command “![00621!]” once or reset the controller power. Then, the page message will start displaying.
6.3. How to display Page messages and Real time message
During the three page messages sent in “Chapter 6.2” are being displayed, if you send the real time message below, it will be displayed for 4 seconds two times[Note 5] . After that, the three page messages will resume to be displayed in order.
Example ![000/D0201/E0808/S1008/C2Parking Fare /C31h30m /C1$1.3!]
- ”0” indicates Real-time message of LMD protocol.
- /D0201: This display count is “02( 2 times)” and the priority is “01(Urgent)”. [Note 5]
- /E0808: Entry effect is “08(Shifting up)” and Exit effect is the same.
- /S1008: Effect speed is “10(fast)” and Stay time is “08 x 0.5 = 4 sec.”.
- Text color : /C2(green), /C3(yellow), /C1(red)
Limit the number of times to repeatedly write page messages
- Page message data is stored in flash ROM, so they are not erased even when the power turns off. But if writing count of the page message is over 100,000, the memory may be damaged. Therefore, data that changes frequently must be transmitted in real-time message mode.
- In case you want to display frequently changing data in several page messages in order, the firmware shall be changed. If you need it, please contact us.
[NOTE 5] How to set the correct period of displaying real-time message.
When sending a real-time message while page messages are displayed, it will be difficult to set how long it should be displayed. In this regards, refer to the following sequences:
1. Normally, the page messages are being displayed.
2. When an event occurs, send the real-time message.
In the real-time message packet, add to set the display time property sufficiently long. Ex) “/S1099”
3. When the event is disappeared, send the real-time message reset command “![00621!]” in addition.
Then, the real-time message disappears immediately and the page messages automatically resume to display.
7. Special Commands
Special commands for setting/controlling a LED signboard built-in LMD controller are as follows.
Most of these commands can be demonstrated directly from the Dabit simulator.
Whenever transmitting the various commands here, confirm whether the corresponding response packet is received as normal.
Command | Code | Data | Example |
A Call BG image file number to display [Note 6] | 20 | XXX 000: No calling 001 ~ 255: Image file number | Call the file No.5 of the BG playlist and display it on the LED sign [Tx] ![0020005!] [Rx] ![00200!] — “0” is proceeded normally ![0020F!] — “F” is processed abnormally |
B Turn the screen ON/OFF | 21 | X 0: Turing Off 1: Turing On | Turn the screen off [Tx] ![00210!] [Rx] ![00210!] |
C Turn the relays ON/OFF [Note 7] | 22 | XXXXXXXXXX 00000: OFF 00001: 0.1 sec 00010: 1.0 sec 61439: 6143.9 sec 61440: always ON 61696: keep the present status | To turn ON Relay No. 1 for 2 seconds and Relay No. 2 for 10 seconds. [Tx] ![00220000200010!] [Rx] ![00220!] |
D Update the controller’s clock to the PC time [Note 8] | 30 | YYMMDDdHHNNSS YYMMDD: year, month, date d: day (0,1,2..6: SUN, MON, TUE…SAT) HHNNSS: hour, minute, second | Set the display controller clock to PC time as “2019-06-19 Tuesday 12:34:56” [Tx] ![00302306192123456!] [Rx] ![00300!] |
E Read the controller’s time | 31 | Transmission data is none. The reply Data Format is the same as “D” above. | Read the controller clock as “2019-06-19 Tuesday 12:34:56” [Tx] ![0031!] [Rx] ![00312306192123456!] |
F Change the default message display properties | 32 | ![0032/P0000/D9901/F0003/E0101/S1502 /X0000/Y0000/B000/C3/G0/T0!] >>For details, refer to [NOTE 1]. | Set the default text color to Red. [Tx] ![0032/P0000/D9901/F0003/E0101/S1502 /X0000/Y0000/B000/C1/G0/T0!] [Rx] ![00320!] |
[NOTE 6] You can create various text, graphic, and animation image files using Dabitchae software, register them in the background PLAYLIST, and upload them to the electronic signboard. By transmitting this protocol, only specific file numbers can be called and displayed on the electronic signboard. ☞ refer to “DabitChe Manual, Chapter 4”
[NOTE 7] You can control a 2-channel Arduino relay by connecting it to the controller. It is widely used to control various buzzers, warning lights, and blocking bars.
[NOTE 8] When displaying the time on an electronic signboard, use this command to periodically update the time. When the power is reset, the controller’s clock starts from 2000-01-01 00:00:00. Therefore, this command is transmitted when the controller is turned on and approximately once a day (24:00).
After transmitting this packet, the next packet is transmitted after a delay of about 4 seconds of controller processing time.
G Set the screen size[Note 9] | 40 | XXYYZ XX : Number of vertical rows (00~99) YY : Number of horizontal columns (00~99) Z : Module arrangement type (0~4) 0 : Horizontal (default) 1 :1-line vertical, 2 : 2-line vertical 3 : horizontal double sided 4 : vertical double-sided | Set the screen size to “2 row vertically, 6 columns horizontally, horizontal arrangement (default)”. [Tx] ![004002060!] [Rx] ![00400!] |
H Reset CPU[Note 10] | 41 | – CPU is reset, and it takes about 4 seconds. Real-time message data is also deleted. | Reset CPU. [Tx] ![0041!] [Rx] ![00410!] 1 |
I Factory Reset | 42 | – All real-time message, page messages and BG image files are deleted. But fonts and setting values are maintained. | Execute the factory reset of the controller. [Tx] ![0042!] [Rx] ![00420!] 1 |
J Set the screen brightness[Note 11] | 50 | XX 00: auto control by CDS sensor 01: 01%, the darkest 99: 99%, the brightest(default) | Set the screen brightness to 50% of maximum. [Tx] ![005033!] [Rx] ![00500!] |
K Set the signal type of LED module | 52 | Spares |
[NOTE 9] Register the number of vertical rows and horizontal columns based on one “16 x 16” pixel LED module unit. Therefore, it is equal to the screen resolution divided by 16. If the screen resolution is “96 pixels wide and 32 pixels tall,” XX is “96/16=6”, YY is “32/16=2”, and Z is generally “0”.
[NOTE 10] Reset commands of LMD controller
1. ![00621!] : Reset the real-time message data stored in RAM
2. ![006199!] : Reset all page message data in stored in Flash ROM
3. ![0041!] : Reset CPU to reset RAM and TCP connention
4. ![0042!] : Factory reset all data except font files and setting parameters
“CPU reset” and “factory reset” commands take about 4 seconds to process, so the next command shall be sent about 5 seconds later.☞For information on how to reset the controller hardware, refer to the relevant model specifications.
[NOTE 11] The default value is 100% of the maximum brightness. In this regards, refer to “How to use CdS sensor for auto brightness control”
L Allocate memory for the total number of Page messages[Note 12] | 60 | XX 01 ~ 10: the number of Pages | Allocate memory for three page messages. [Tx] ![006003!] [Rx] ![00600!] 1 |
M Delete Page message data | 61 | 00 00 ~ 10: Delete that page data 99: Delete entire page data | Delete entire page data. [Tx] ![006199!] [Rx] ![00610!] 1 |
N Reset Real-time message data | 62 | 1 | Reset Real-time message data. [Tx] ![00621!] [Rx] ![00620!] 1 |
O Fill the screen with the color[Note 13] | 70 | X 1:red, 2:green, 3:yellow 4:blue, 5:pink, 6:sky blue, 7:white 0:black(No display) | Fill the screen with green color. [Tx] ![00702!] [Rx] ![00700!] 1 |
P Read controller firmware information[Note 14] | 81 | Read the controller firmware information [Tx] ![0081!] [Rx] ![008< 21>DIBD502S_08C_02R016C V09.16 2023-08-30 02×006-L0-R0-D0-S4P03_O-E1R-240MHz–16D_D1S11_11-C0-G W Addr:00-115200bps!] [Note 14] | |
Q Read controller Mac address[Note 15] | 830 | Read controller(LMD-C20 only) Mac address [Tx] ![00830!] [Rx] ![0083 ]54FF82800009!] |
[NOTE 12] The default is “1”. When using more than two, the total number must be registered.
[NOTE 13] Screen fill is a useful function when you want to check the display status of individual LED chip. When filling the entire area with white, maximum power is consumed, so if SMPS capacity is insufficient, the controller may malfunction.
[NOTE 14] The firmware information read as an example above can be interpreted as follows:
502S: Firmware type is 502S
2R16C: This controller can display a screen with a maximum size of “2 Row x 16 Column”.
V9.16: Firmware version is “V9.16”.
2023-08-30: Firmware release date
02×006: Present screen setting value is “2 Rows x 6 Columns”.
240Mhz: CPU clock frequency
16D_D1S11_11: This is the set value of the display signal type
Addr:00-115200bps : This show that the address is “00” and baud rate is “115200bps”.
[NOTE 15] Applies only to the LMD-C30 model with a built-in LAN communication module. When you want to periodically check the TCP communication status with the LED signboard, you can send this simple packet and check the response.
A-1. How to set Display Effects
Each message of LMD protocol basically repeat the process of “Entry effect > Stay time > Exit effect“. You can set various effects per message as follows.
Code | Effect | Direction / Properties | Description |
00 | None | – | None |
01 | Static | No direction | default |
02 | getting brighter | The text gradually becomes brighter or darker. | |
03 | getting darker | ||
04 | horizontal reflection | The normal image and the image reflected in the mirror are displayed alternately. | |
05 | vertical reflection | ||
06 | Shifting[Note 16] | left | Shift the text by 1 pixel in the specified direction |
07 | right | ||
08 | up | ||
09 | down | ||
12 | Wipe | left | Displays(or disappear) text by 1 pixel in the specified direction. |
13 | right | ||
14 | up | ||
15 | down | ||
18 | Blind | left | The text appears/disappears like a blind in the specified direction. |
19 | right | ||
20 | up | ||
21 | down | ||
24 | Curtain | horizontal outward | The text appears/disappears like a curtain in the specified direction. |
25 | horizontal to the center | ||
26 | vertical outward | ||
27 | vertical to the center | ||
35 | Zoom-in | left | The text zooms in in the specified direction. |
36 | right | ||
37 | up | ||
38 | down | ||
39 | down right | ||
40 | Rotating | counterclockwise 1 | The entire text rotates in one direction. |
41 | clockwise 1 | ||
42 | counterclockwise 2 | The text is divided into two blocks and rotated in one direction. | |
43 | clockwise 2 | ||
44 | Blinking background color [Note 17] | red | The background color blinks 8 times. |
45 | green | ||
46 | blue | ||
47 | white | ||
48 | four colors one by one | Blink the each background color 8 times in sequence. | |
49 | Blinking text color [Note 17] | red | The text color blinks 8 times. |
50 | green | ||
51 | blue | ||
52 | white | ||
53 | four colors one by one | Blink the each text color 8 times in sequence. | |
55 | four colors at the same time | Blink the all the 4 text colors 8 times at the same time. | |
54 | 3D Rotating[Note 16] | left | The text rotates to the left with a three-dimensional effect. |
[NOTE 16] “Shifting left” and “3D rotating” effect makes the entry/exit effect the same, and the stay time shall be “0” seconds. The effect speed might be good at “10~20”. Ex.) “![000/E0606/S1000hello world!]”
[NOTE 17] For blinking effects, set the effect speed to 50 or higher.
Ex.) “![000/E5353/S5000/C1AAA/C2BBB/C4CCC/C7DDD!]”
A-2. How to display Information Data
By entering “/ixx” in the data section of the LEDmsg protocol, you can display various information data such as date/time, temperature/humidity, etc. as shown in the picture on the right.
Ex.) ![000/C2 20/i17–/i18–/i19 /i24 /C1/i21/i31/i22 /C6/i27!]
In this regards, refer to “How to display exact GPS time, How to display temperature and humidity”
When the date/time display value (xx) is a single digit, to display the tens digit as “space” instead of “0”, change the display properties as follows.
☞ MONTH (/i18 → /i02), DATE (/i19 → /i03), HOUR I (/i20 → /i04), HOUR II (/i21→ /i05), SEC(/i23→/i06)
A-3. How to display Special Character
By inserting “/Uxxx” in the data section of the LEDmsg protocol, the special character including various symbols and wide English letters/numbers, can be called and displayed.
The special character size is “16 x 16 pixels”.
See below for the types of special characters provided by default and how to call them.
If you want to edit or add the special characters, please contact us.
Example 1: ![000/U000/U001/U002!]
Example 2: ![000/C2/U010/U011/U012/U013/U202!]
Example 3: ![000/C21234/C3/U048/U049/U050/U051/C1/U022/U023/U024/U025!]
A-4. More Examples of Real time message of LEDmsg protocol
Please send the various message samples below to the LED signboard to see how they are displayed, and apply to your system.
For the meaning of each delimiter, refer to “5. Display Properties“. The screen is sized “96 x 32” dots basis.
#01 ![000/B006/C1T/C2E/C3X/C6T for /C1PLC/C2PC& /C3EMBEDDED!]
#02 Section 0: ![000/P0000/Y0004/B006/C1T/C2E/C3X/C5T /C6Display!]
#02 Section 1: ![000/P0001/Y0408/E0606/S1000/C1PLC /C2Embedded!]
#03 ![000/C11234/C2XXYY/C3xxyy/C7/U049/U050/U051/C5/U065/U066/U067!]
#04 ![000/F0007/C1123/C2456!]
#05 ![000/F0007/C1/U050/C2/U051/C3/U052!]
#06 ![000/B006/C1MESSAGE /C71234/C2MESSAGE /C65678!]
#07 ![000/B006/C2A234 /C6/U196 /C105/C3M/C2BUS777 /C103/C3M!]
#08 Section 0: ![000/P0000/Y0004/C2Welcome! /C6/U198!]
#08 Section 1: ![000/P0001/Y0408/E0606/S1000/C1/U078/U089/U067/U045/U029/U029/U030/U030!]
#09 ![000/C2NO.1 TK:/C1 85/C3%/C2NO.2 TK:/C1 95/C3%!]
#10 ![000/C3Parking /C6/U066/U049/C3<</C1123/C1 110/C3>>!]
#11 ![000/C2PM/C1 034/C2ppmOZON/C1 200/C2ppm!]
#12 ![000/C2TEMP.:/C633.0/C2/U164HUMI.:/C660.0/C2/U037!]
#13 ![000 /C620/I17-/I18-/I19 /C2/I27 /C1/I21/C6:/C1/I22 /C2/I24!]
#14 ![000/C2LINE 01:/C1 44/C2%/C6LINE 02:/C1 55/C6%!]
#15 ![000/C3LINE 03:/C1 66/C3%/C4LINE 04:/C1 77/C4%!]
#16 ![000 /C6Your Speed /C1/U023/U024/U025/C6km//h!]
#17 #18 ![000/E4444/S5004 /C7FIRE ALARM /C3ZONE /U066/U045/U023!]
#19 ![000/C7/G4TEXT DISPLAY/C1IP /C3RS/C6232/C3///C2485!]
#20 Section 0: ![000/P0000/X0010/C6DABIT/C6/G4P3/C1L/C2E/C3D!]
#20 Section 1: ![000/P0001/X1123/Y0107/F0005/C72R6C!]
[#1,2,6,7]: The light blue line is saved in advance as background image file number 6, and then displayed with a text message by inserting the file number. In this regards, refer to “Chapter 5.15”.
[#4,5]: The basic font of “8 width x 16 height” pixels is enlarged to a “16 width x 32 height” font. ☞ Refer to “Chapter 5.6“.
[#2,8,20]: The screen is divided into two sections and individual message packets are sent and displayed.
[#2,8]: Long sentences can be displayed up to 120 characters using the shifting-left effect.
[#14]: To display date and time, refer to “Attachment 2”.[#3,5,7,8,10,16,17,18]: A special character can be called and displayed. ☞ for details, refer to chapter Attachment 3“.
A-5. How to set X/Y position of the Section
You can divide the whole screen into up to four sections, specify XY coordinate values, and then display an independent message in that area.
When using this feature, considerations include:
1.“X/Y start/end position” is set in nibble unit starting from the upper left (0,0).
1 nibble is equal to 4 pixels.
2.If “X/Y start/end position” is not defined or written as “00 (default)”, it is considered as the default full screen.
3.One ASCII character is displayed with “8×16” pixels while one language character with “16×16” pixels.
Example 1
The “2-row x 6-column” screen is divided into 4 sections and messages are sent and displayed respectively.
![000/P0000/X0012/Y0004/C1Sec.0!] // section 0
![000/P0001/X1200/Y0004/C2Sec.1!] // section 1
![000/P0002/X0012/Y0408/C6Sec.2!] // section 2
![000/P0003/X1200/Y0408/C7Sec.3!] // section 3
Example 2
Import the background image on the “4-row x 16-column” screen and display variable numbers (red figure) in three different areas.
The background image can be called once only in “Section 0”.
![000/P0000/X0010/Y0800/B001/C1-27!] // section 0
![000/P0001/X1925/Y0800/C155!] // section 1
![000/P0002/X3342/Y0800/C1123!] // section 2
☞ For more details, refer to “DabitChe Manual, Attachment 6”.