Skip to content

Protocol

JP150PCB 1.3PCB 1.4Jan PřibyslavskýThis page does not apply to the product or PCB revision chosen in the header.

Transports

Transport Settings
User UART (UART1) 115200 bit/s, 8 data bits, no parity, 1 stop bit, 3.3 V logic (RX 5 V tolerant). Pinout: Connectors.
USB virtual COM port Part of the module's composite USB device (16D0:15B8 from firmware 26.10.1, 0483:5741 before). No driver on Windows 10 and 11. Any baud rate.

Command format

Commands are ASCII strings. Queries end with ?. Set commands omit the ? and carry their argument after a space; several arguments are separated by commas. Terminate every command with CRLF and parse responses as single-line ASCII strings, also CRLF-terminated.

Most query responses repeat the command prefix, followed by a colon and the value: AMP:VOL? answers AMP:VOL:32. Action and set commands answer a status string (<CMD>:OK, or <CMD>:ERR:<REASON> when refused) or execute without a reply, as the reference notes per command.

SYS:INPUT?              →  SYS:INPUT:BT
SYS:INPUT WIFI          →  SYS:INPUT:OK
AMP:VOL 32              →  (no reply)
SYS:POWER:AUTO:DELAY?   →  SYS:POWER:AUTO:DELAY:1800
SYS:TRIG:MODE FOLLOW    →  (no reply)

A set command that is refused answers with an error string rather than falling silent, for example SYS:INPUT:ERR:DISABLED. Treat any value field that begins with ERR as a rejected command, and do not assume the setting changed.

Rules for a robust host

  • Match responses on the whole prefix. Several commands are prefixes of longer ones (SYS:INPUT and SYS:INPUT:ENABLE, BT:TWS:PAIR and BT:TWS:PAIR:START, SYS:BOOTLOADER and SYS:BOOTLOADER:INFO?).
  • Expect unrequested changes. The module changes its power level on its own (automatic power-down, wake sources, the 12 V trigger), so an unrequested change is normal.
  • Allow time after a power level change. Returning from a level that removed power from the power stages takes several hundred milliseconds without a reply.
  • Read extensible answers by position. SYS:BOOTLOADER:INFO? and SYS:NVM:EEPROM:PENDING? may gain fields at the end; read the fields you know.
  • Treat ERR:BOARD:UNSUPPORTED as "exists but unavailable". A module in the safe state answers it to every command outside its reduced set (Start-up and the safe state).
  • A missing reply is not always an error. SYS:MEAS:VOLT? and SYS:MEAS:CURR? draw no answer on PCB 1.4 when the supply monitor cannot be read; treat it as a sensor failure.
  • Do not use the blocking pairing command. BT:TWS:PAIR holds the control interface for up to 15 s; use BT:TWS:PAIR:START and poll BT:TWS:PAIR:STATUS?.