meldCX
Smart Power Station
Firmware version 3.62
27th of October 2023
Command Set
Revision 0.1
Packet Definition
The format of data packet
bytes | 0~3 | 4 | 5 | 6 | 7 |
Name | Header | Command | channel | Data | Footer |
Value | 0x4D534250 | 0x01 ~ 0xFF | 0x01 ~ 0x05 | 0x0 ~ 0xFF | 0x04 |
Header (fixed value)
Description | Header Signature |
Value | ‘MSBP’ 0x4D534250 |
Command set
Description | Command |
CMD Value | Hexadecimal values |
Channel Numbers
Description | Channel # |
Power Channel #1 | 0x01 |
Power Channel #2 | 0x02 |
Power Channel #3 | 0x03 |
Power PT #1 (Path Through #1) | 0x04 |
Power PT #2 (Path Through #2) | 0x05 |
Data (general use parameter)
Description | Data |
Value | 0x0 to 0xFF |
Footer (fixed value)
Description | Footer |
Value | 0x04 |
Serial Protocol Configuration
Description | Value |
Baud Rate | 57600 |
Data Bits | 8 |
Parity | None |
Stop Bit | 1 |
Flow Control | None |
Smart Board Layout
Commands List
# | Command | Value |
1 | Reset smart power station board | 0x20 |
2 | Get smart power station board information | 0x30 |
3 | Turn channel on/off | 0x40 |
4 | Read channel status | 0x41 |
5 | Turn power station on/off | 0x50 |
6 | Turn OLED display on/off | 0x51 |
7 | Buzzer beep | 0x52 |
8 | Read power switch status | 0x53 |
9 | Read light sensor | 0x54 |
10 | Read temperature sensor | 0x55 |
11 | Read output power voltage | 0x56 |
12 | Read output ampere | 0x57 |
13 | Read humidity sensor | 0x58 |
14 | Using RealTerm | |
15 | Firmware Upload |
Status Code
# | Description | Code |
1 | Successfully | 0xD0 |
2 | Invalid Channel | 0xD1 |
3 | Invalid Data | 0xD2 |
4 | Invalid Command | 0xD3 |
5 | Invalid Header | 0xD4 |
Sending HEX command to serial port
Use REALTERM serial terminal software to send the HEX commands to the serial port.
For more details, please see how to use realterm to send HEX serial commands
Commands Description
-
Reset smart power station board – 0x20
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | blank | blank | 04 |
cmd: 0x20
blank: 0x00
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Default Values:
Description | Strip Color |
Channel #1 | On |
Channel #1 | On |
Channel #1 | On |
PT #1 | On |
PT #2 | On |
Display | On “meldCX” |
Example:
Packet out: 0x04d 0x053 0x42 0x50 0x20 0x00 0x00 0x04
Packet in: 0x01 0xd0 0x04
-
Get smart power station bored information – 0x30
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | blank | blank | 04 |
cmd: 0x30
blank: 0x00
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
83 bytes | ASCII String | Board Information (ASCII format) |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Packet out: 0x4d 0x53 0x42 0x50 0x30 0x00 0x00 0x04
Packet in: 0x01 0x46 0x69 0x72 0x6D 0x77 0x61 0x72 0x65 0x20 0x56 0x65 0x72 0x73 0x69 0x6F 0x6E 0x3A 0x20 0x33 0x2E 0x36 0x30 0x0D 0x0A 0x46 0x69 0x72 0x6D 0x77 0x61 0x72 0x65 0x20 0x44 0x61 0x74 0x65 0x3A 0x20 0x31 0x30 0x2F 0x31 0x30 0x2F 0x32 0x30 0x32 0x33 0x0D 0x0A 0x50 0x72 0x6F 0x64 0x75 0x63 0x74 0x20 0x4E 0x61 0x6D 0x65 0x3A 0x20 0x6D 0x65 0x6C 0x64 0x43 0x58 0x20 0x53 0x6D 0x61 0x72 0x74 0x20 0x50 0x6F 0x77 0x65 0x72 0x20 0x53 0x74 0x61 0x74 0x69 0x6F 0x6E 0x0D 0x0A 0xD0 0x04
-
Turn channel on/off – 0x40
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | channel | data | 04 |
cmd: 0x40
channel: (0x01, 0x02, 0x03, 0x04, 0x05)
0x01 channel #1
0x02 channel #2
0x03 channel #3
0x04 PT #1
0x05 PT #2
data:
0x00 off
0x01 on
0x02 off then on after 10 seconds
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example 1:
Turn off channel #1 for 10 seconds and then turn it back on again
Packet out: 0x4d 0x53 0x42 0x50 0x40 0x01 0x02 0x04
Packet in: 0x01 0xd0 0x04
Example 2:
Turn off channel #3
Packet out: 0x4d 0x53 0x42 0x50 0x40 0x03 0x00 0x04
Packet in: 0x01 0xd0 0x04
-
Read channel status – 0x41
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | channel | blank | 04 |
cmd: 0x41
channel: (0x01, 0x02, 0x03, 0x04, 0x05)
0x01 channel #1
0x02 channel #2
0x03 channel #3
0x04 PT #1
0x05 PT #2
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | 0x00 – 0x01 | 0x00 low – 0x01 high |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Read channel #1 status
Packet out: 0x4d 0x53 0x42 0x50 0x41 0x01 0x00 0x04
Packet in: 0x01 0x01 0xd0 0x04
-
Turn power station on/off – 0x50
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | blank | data | 04 |
cmd: 0x50
data:
0x00 off
0x01 on
0x02 off then on after 10 seconds
Blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example 1:
Turn off power station for 10 seconds and then turn it back on again
Packet out: 0x4d 0x53 0x42 0x50 0x50 0x00 0x02 0x04
Packet in: 0x01 0xd0 0x04
Example 2:
Turn off power station
Packet out: 0x4d 0x53 0x42 0x50 0x50 0x00 0x00 0x04
Packet in: 0x01 0xd0 0x04
-
Turn OLED display on/off – 0x51
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | blank | data | 04 |
cmd: 0x51
data:
0x00 off
0x01 on
Blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example 1:
Turn OLED display off
Packet out: 0x4d 0x53 0x42 0x50 0x51 0x00 0x00 0x04
Packet in: 0x01 0xd0 0x04
Example 2:
Turn OLED display on
Packet out: 0x4d 0x53 0x42 0x50 0x51 0x00 0x01 0x04
Packet in: 0x01 0xd0 0x04
-
Buzzer beep – 0x52
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | blank | data | 04 |
cmd: 0x52
data:
0x00 shortBeep
0x01 longBeep
blank: 0x00
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example 1:
Buzzer short beep
Packet out: 0x4d 0x53 0x42 0x50 0x52 0x0 0x0 0x4
Packet in: 0x01 0xd0 0x04
Example 2:
Buzzer long beep
Packet out: 0x4d 0x53 0x42 0x50 0x52 0x0 0x1 0x4
Packet in: 0x01 0xd0 0x04
-
Read power switch status – 0x53
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | Cmd | blank | blank | 04 |
cmd: 0x53
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
1 byte | 0x00 – 0x01 | 0x00 low – 0x01 high |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Read power switch status
Packet out: 0x4d 0x53 0x42 0x50 0x53 0x00 0x00 0x04
Packet in: 0x01 0x01 0xd0 0x04
-
Read light sensor – 0x54
Packet send
Header | Command | Port | Data | Footer | |
Value | 4D534248 | cmd | blank | blank | 04 |
cmd: 0x54
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
4 to 6 bytes | ASCII String | Light Sensor |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Packet out: 0x4d 0x53 0x42 0x50 0x54 0x00 0x00 0x04
Packet in: 0x01 0x38 0x2E 0x31 0x37 0xD0 0x04
-
Read temperature sensor – 0x55
Packet send
Header | Command | Port | Data | Footer | |
Value | 4D534248 | cmd | blank | blank | 04 |
cmd: 0x55
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
4 to 5 bytes | ASCII String | Temperature Sensor |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Packet out: 0x4d 0x53 0x42 0x50 0x55 0x00 0x00 0x04
Packet in: 0x01 0x32 0x31 0x2E 0x32 0x36 0xD0 0x04
-
Read output power voltage – 0x56
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | channel | blank | 04 |
cmd: 0x56
channel: (0x01, 0x02, 0x03, 0x04, 0x05)
0x01 channel #1
0x02 channel #2
0x03 channel #3
0x04 PT #1
0x05 PT #2
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
4 to 5 bytes | ASCII String | Output Power Voltage |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Read channel #1 output power voltage
Packet out: 0x4d 0x53 0x42 0x50 0x56 0x01 0x00 0x04
Packet in: 0x01 0x35 0x2E 0x30 0x33 0xD0 0x04
-
Read output ampere – 0x57
Packet send
Header | Command | Channel | Data | Footer | |
Value | 4D534250 | cmd | channel | blank | 04 |
cmd: 0x57
channel: (0x01, 0x02, 0x03, 0x04, 0x05)
0x01 channel #1
0x02 channel #2
0x03 channel #3
0x04 PT #1
0x05 PT #2
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
4 to 5 bytes | ASCII String | Output Ampere |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Read channel #1 output ampere (require electronic load)
Packet out: 0x4d 0x53 0x42 0x50 0x57 0x01 0x00 0x04
Packet in: 0x01 0x31 0x2E 0x35 0x35 0xD0 0x04
-
Read humidity sensor – 0x58
Packet send
Header | Command | Port | Data | Footer | |
Value | 4D534248 | cmd | blank | blank | 04 |
cmd: 0x58
blank: 0x0
Packet Receive
Bytes | Value | Description |
1 byte | 0x01 | SOH - Start of Heading |
4 to 5 bytes | ASCII String | Temperature Sensor |
1 byte | (0xd0, 0xd1, 0xd2, 0xd3 0xd4) | See Status code table |
1 byte | 0x04 | EOT - End of Transmission |
Example:
Packet out: 0x4d 0x53 0x42 0x50 0x58 0x00 0x00 0x04
Packet in: 0x01 0x35 0x33 0x2E 0x34 0x35 0xD0 0x04
Using RealTerm
- Download RealTerm from the following link:
https://realterm.sourceforge.io/
- Install RealTerm on your windows based computer
- Open RealTerm, click on Display tab and select ASCII
- Click on Port tab and select the Smart board com port then set the following:
Baud: 57600
Parity: none
DataBits: 8
Stop Bit: 1
Hardware flow control: none
Then click on Open twice
- Open the Smart board Command set documentation and copy the command you want to test.
In this example, we are going to copy “get smart power station board information”
- Go back to RealTerm and click on Send tab then paste the command you copped in step 5 on the left of Send Numbers (as showed in the following screen capture)
- Click on Send Numbers, You should receive the firmware version in ASCII format.
- If you need to show the results in HEX format; Click on Display tab then select:
Hexadecimal [space]
- Click on Send tab, the click on Send Number.
You will get the firmware displayed in hexadecimal [space] format
Firmware Upload
1. You will need to use windows-10 operating system.
2. Disconnect all usb devices on your computer.
3. Connect the the smart board to your PC USB port.
4. run CMD as administrator.
5. unzip the attached file boot-loader zip file
6. type fw-update.bat then press enter.
Example
D: \ boot-loader-folder-name>fw-update
Comments
0 comments
Please sign in to leave a comment.