Complete Technical Guide to CT Query Commands for Programmable Electric Turntables

Programmable electric turntable CT command tutorial, 3D product photography setup with CT query commands

Full Command Overview

  • First of all, this tutorial covers the 5 core read-only CT query commands for ComXim programmable electric turntables.
  • Meanwhile, none of these 5 commands will drive the motor or modify any internal device configuration.
  • Besides, after you send a valid command string, the turntable returns a corresponding data message.
  • Furthermore, the five commands covered in this article are CT+GETTBCONFIG();, CT+GETPN();, CT+GETEBC();, CT+GETFWV();, and CT+GETOFFSETANGLE();.
  • Apart from that, USB serial, WiFi TCP, and BLE Bluetooth all fully support this command set.
  • Moreover, these commands form the foundation for secondary development, automated 3D product photography, device self-check, and fault troubleshooting.
  • On the one hand, you can identify hardware identity before sending any control logic.
  • On the other hand, you can read real-time runtime status without interrupting an ongoing shooting task.
  • Finally, automated projects built around a programmable electric photo turntable will rely on this query set very frequently.

Detailed Applicable Use Cases

  • Use case 1: Hardware identity recognition on first connection First, when host software connects to an unknown turntable, you should call CT+GETPN(); first. Next, based on the returned model string, you can distinguish MT, NT, and UT hardware series. Then, the program loads control parameters matched to that specific model. Therefore, model identification prevents sending unsupported advanced commands to incompatible hardware.
  • Use case 2: Firmware version compatibility check First, many advanced CT commands set a minimum firmware version threshold. Secondly, right after the communication handshake, call CT+GETFWV(); first. As a result, you can avoid the runtime error code 40 for unsupported functions. In addition, if the firmware is too old, your software UI can pop up a firmware upgrade reminder.
  • Use case 3: Reading the saved hardware configuration snapshot On the one hand, CT+GETTBCONFIG(); reads all persistent parameters stored in Flash. On the other hand, the returned content includes rotation direction, operation mode, auto-shutter state, rotation angle, pause time, repeat count, and speed level. Consequently, after an unexpected power cycle, you can restore working parameters from the read configuration.
  • Use case 4: Serial number and multi-unit asset management At the same time, CT+GETEBC(); reads the unique electronic identity code of the device. Besides, custom software can bind the EBC code for license authorization. Furthermore, when debugging multiple turntables on site, you use the EBC code to distinguish each physical unit.
  • Use case 5: Real-time angle offset closed-loop verification For one thing, CT+GETOFFSETANGLE(); reads the real-time offset angle relative to the software zero point. For another thing, a positive return means clockwise offset, while a negative return means counter-clockwise offset. Thus, after every single stepping rotation, you can verify whether the actual angle matches the expected value.
  • Use case 6: Integrated debugging for automated workstations Last but not least, you can integrate all 5 query commands into your custom software UI. Meanwhile, pair them with a programmable turntable secondary development kit to build a complete 360-degree product photography workstation.

Command Syntax and Full Parameter Explanation

Universal syntax rules for all 5 commands

  • First, every command follows the format CT+COMMANDNAME();.
  • Second, all 5 are zero-parameter commands; you must not put any character inside the parentheses.
  • Third, the fixed prefix is CT+, and command names are case-sensitive.
  • Fourth, every instruction must end with an English half-width semicolon.
  • Finally, if you use full-width Chinese punctuation, the device returns a syntax error directly.

CT+GETTBCONFIG();

  • First, this command reads the full saved configuration stored in device Flash.
  • Meanwhile, it returns 7 key parameters in total.
  • Besides, the first item is rotation direction: 0 means clockwise, 1 means counter-clockwise.
  • Furthermore, the second item is rotation mode: 0 continuous rotation, 1 repeat stepping, 3 swing mode.
  • Moreover, the third item is auto-shutter switch: 0 off, 1 on. In addition, the fourth item is rotation angle in degrees, a positive floating-point number.
  • Also, the fifth item is pause time in seconds, a positive integer.
  • Next, the sixth item is repeat count, a positive integer.
  • Finally, the seventh item is speed level, a positive integer capped by the hardware maximum speed.

CT+GETPN();

  • First, CT+GETPN(); reads the full product model PN code.
  • Example return: PN=MT200RUWPSL20Pr;CR+OK;.
  • Meanwhile, the model string encodes turntable diameter, infrared, WiFi, shutter, and other hardware features.
  • Therefore, business code can branch logic based on model suffix letters.
  • Besides, this command requires firmware V2R02C01 or newer.

CT+GETEBC();

  • First, CT+GETEBC(); reads the unique EBC electronic serial number.
  • Example return: EBC=B0E3‑8ADB‑4343‑A1A3;CR+OK;.
  • Meanwhile, the EBC code never changes across firmware upgrades.
  • Besides, developers commonly use it for software license binding and multi-unit asset tracking.
  • Furthermore, minimum firmware version is V2R02C01.

CT+GETFWV();

  • First, CT+GETFWV(); reads the current firmware version string.
  • Example return: FWV=FW V2R04C02;CR+OK;.
  • Meanwhile, before calling CT+GETOFFSETANGLE();, you must use this command for version checking.
  • Besides, CT+GETOFFSETANGLE(); requires firmware V2R03C02 or newer.
  • Therefore, CT+GETFWV(); is the compatibility gatekeeper for every advanced command.

CT+GETOFFSETANGLE();

  • First, this command reads the offset angle relative to the software zero point.
  • Meanwhile, a positive example looks like OffsetAngle= +16.12°.
  • Also, a negative example looks like OffsetAngle= -47.29°.
  • Furthermore, a plus sign means clockwise offset from zero, while a minus sign means counter-clockwise offset.
  • Moreover, angle data lives in runtime RAM; once power cuts off, the data vanishes and never writes to Flash.
  • Finally, minimum firmware version is V2R03C02.

Universal return message format

  • First, on successful execution, the reply always ends with CR+OK;.
  • Meanwhile, the business data appears right before the CR+OK; segment.
  • Besides, if an error occurs, the device returns CR+ERR=xx;, where xx is the specific error code.
  • Therefore, when parsing replies, you split message segments by the semicolon delimiter.

Step-by-Step Practical Operation Guide

Pre-operation hardware preparation

  • First, connect the DC power adapter and turn on the ComXim programmable turntable.
  • Second, wait for the full power-on self-check to finish before sending any CT command.
  • At the same time, choose one communication link: USB serial, WiFi TCP, or BLE Bluetooth. Besides, for USB connections, you must install the CH340 driver in advance.
  • Furthermore, in WiFi AP mode, connect to the turntable hotspot, default password 88889999, default IP 192.168.181.181, port 8181. Finally, never manually twist the platter after power-on; otherwise angle counting will lose sync.

How to input commands

  • First, open TurntableX, the web debug console, or your custom serial tool.
  • Second, paste CT+GETFWV(); first. Meanwhile, confirm every character uses English half-width formatting.
  • Besides, check that no extra spaces sit before the semicolon.
  • Then, click send to transmit the command to the turntable.

Standard execution flow after connection

  • First send CT(); to complete the basic communication handshake.
  • Next, wait for CR+OK; to confirm the link is healthy.
  • Then send CT+GETFWV(); to read the firmware version.
  • After that, run CT+GETPN(); to fetch the product model.
  • At the same time, call CT+GETEBC(); to read the serial number.
  • Then call CT+GETTBCONFIG(); to read saved configuration.
  • Finally, call CT+GETOFFSETANGLE(); to verify the power-on zero position.

Execution logic

  • First, all 5 query commands are read-only operations.
  • Second, they neither change motor state nor rewrite Flash-persisted configuration.
  • Meanwhile, you can safely issue query commands during idle time, stepping pauses, and shooting gaps.
  • Besides, do not flood the hardware with unlimited high-frequency polling.
  • Furthermore, keep at least a 100-millisecond gap between two query commands to prevent buffer overflow and packet loss.

Reset and recovery workflow

  • First, if the angle reading drifts, send CT+SETZERO(); to mark the current physical position as the new software zero.
  • Second, call CT+GETOFFSETANGLE(); again to verify the angle returns to zero.
  • Meanwhile, if configuration looks wrong, run CT+SAVECONF(); after fixing parameters.
  • Besides, note that CT+SAVECONF(); never saves the software zero position.

Real-World Practical Examples

CT query command introduction for programmable electric turntables

Example 1: Full power-on initialization sequence

CT(); CT+GETFWV(); CT+GETPN(); CT+GETEBC(); CT+GETTBCONFIG(); CT+GETOFFSETANGLE();

  • First, CT(); confirms the communication link is alive.
  • Second, CT+GETFWV(); validates firmware version and filters incompatible units.
  • Meanwhile, CT+GETPN(); identifies the hardware model.
  • Besides, CT+GETEBC(); reads the serial number for logging.
  • Furthermore, CT+GETTBCONFIG(); reads the saved device parameters.
  • Finally, CT+GETOFFSETANGLE(); confirms the boot zero sits at zero degrees.

Example 2: Firmware check before angle queries

CT+GETFWV(); CT+GETOFFSETANGLE();

  • First, CT+GETFWV(); reads the firmware version string.
  • Second, only when firmware is V2R03C02 or newer can you run the angle query.
  • Meanwhile, if firmware is too old, CT+GETOFFSETANGLE(); returns ERR=40.
  • Therefore, business code branches based on the version return value.

Example 3: Read config and angle after zero calibration

CT+SETZERO(); CT+SAVECONF(); CT+GETTBCONFIG(); CT+GETOFFSETANGLE();

  • First, CT+SETZERO(); marks the current position as the software zero.
  • Second, CT+SAVECONF(); persists motion parameters to Flash.
  • Meanwhile, CT+GETTBCONFIG(); reads back the saved configuration.
  • Finally, CT+GETOFFSETANGLE(); confirms the angle returns to zero and calibration takes effect.

Example 4: Batch device log collection

CT+GETPN(); CT+GETEBC(); CT+GETFWV();

  • First, this group fetches model, serial number, and firmware version in one shot.
  • Second, you can store the returned data into a local workstation database.
  • Meanwhile, when after-sales issues arise, you pull these three fields to identify the hardware quickly.

Common Errors and Troubleshooting

CT command troubleshooting guide for programmable electric turntables
  • Error CR+ERR=40: unsupported function First, the root cause is outdated firmware that lacks this query command. Second, some legacy low-end hardware simply does not implement the interface. Troubleshooting: send CT+GETFWV(); to compare the actual firmware version. Fix: upgrade firmware if hardware allows; otherwise fall back to alternative business logic.
  • Error CR+ERR=41~48: syntax error First, common causes include missing CT+ prefix, missing parentheses, or missing trailing semicolon. Fix: copy the standard command text from this article directly, and never hand-edit characters.
  • Error CR+ERR=51~52: invalid command name First, typos or wrong letter casing trigger this error. Fix: double-check the full command name and respect case sensitivity.
  • Error CR+ERR=61~64: parameter count mismatch First, all 5 query commands take zero arguments; parentheses must stay empty. Fix: clear every character inside the parentheses, leaving an empty pair ();.
  • No response received at all First, the ACK reply switch is off, or the communication link has dropped. Troubleshooting: send CT(); for a handshake and watch for CR+OK;. Fix: run CT+ACK(1); to enable replies, then check USB, WiFi, or Bluetooth physical connection.
  • Offset angle does not match the physical platter position First, someone twisted the platter by hand after power-on, so the motor did not follow and the internal counter lost sync. Second, the old zero calibration no longer matches the current physical setup. Fix: keep the platter static, send CT+SETZERO(); to recalibrate, then query the angle again.

Safety Guidelines and Device Maintenance

  • First, all query commands are read-only, but still place the turntable on a stable flat surface during operation.
  • Second, center loaded objects as much as possible; eccentric load accelerates mechanical wear over time.
  • Meanwhile, never send query commands in an infinite fast loop inside automation code.
  • Besides, keep at least a 100-millisecond gap between two consecutive queries to avoid buffer overflow and packet loss.
  • Furthermore, offset angle data is volatile RAM data; it resets fully on power cycle, so never treat it as a permanent absolute position.
  • Therefore, every time your host software reconnects to the turntable, re-run the zero calibration routine.
  • At the same time, keep actual payload within 80 percent of rated maximum load; heavy overload degrades positioning accuracy and weakens angle reliability.
  • Finally, keep the working environment dry and dust-free; dust entering the shaft gap increases mechanical clearance and hurts rotation precision.

FAQ Section

  • Q1: Do all 5 CT query commands work on every ComXim hardware model? A: Not completely. CT+GETTBCONFIG();, CT+GETPN();, CT+GETEBC();, and CT+GETFWV(); require firmware V2R02C02 or newer. A: CT+GETOFFSETANGLE(); requires firmware V2R03C02 or newer. A: Therefore, your workflow must read firmware first and branch logic accordingly.
  • Q2: Can I send these query commands over BLE Bluetooth? A: Yes. USB serial, WiFi TCP, and BLE Bluetooth all support the same CT protocol. A: The command text needs no modification; syntax is identical across all transport layers. A: BLE is especially suitable for Android app secondary development and short-range wireless control.
  • Q3: What does CT+GETTBCONFIG(); actually return? A: It returns 7 Flash-persisted parameters: rotation direction, rotation mode, auto-shutter switch, rotation angle, pause seconds, repeat count, and speed level. A: Note that it reads persistent saved values, not live runtime values; if you change parameters without CT+SAVECONF();, the read result stays old.
  • Q4: How does the EBC serial number benefit a WooCommerce foreign-trade store? A: You can build an after-sales warranty lookup feature around it. A: Your companion software can bind the EBC code for license verification. A: As a result, EBC data improves asset tracking and after-sales technical support workflows.
  • Q5: CT+GETOFFSETANGLE(); returns zero degrees, but the platter has clearly moved. Why? A: Most likely someone twisted the platter by hand after power-on. A: The motor did not follow the physical movement, so internal counting has decoupled from real position. A: Send CT+SETZERO(); to recalibrate, then query the angle again.
  • Q6: Can CT+GETTBCONFIG(); replace live runtime parameter reading? A: No. CT+GETTBCONFIG(); reads Flash-persisted values. A: If you change parameters without calling CT+SAVECONF();, this command still returns the old configuration. A: To persist changed parameters, always run the save command after tuning.
  • Q7: What polling frequency is safe in automation projects? A: Prefer the EVENT push messages TB_PAUSE and TB_END to detect task completion; do not rely on polling. A: Use query commands only for periodic status inspection. A: Keep polling intervals at 100 milliseconds or longer to prevent communication overload.
  • Q8: Will these 5 query commands trigger the camera shutter or LED lights? A: No. All 5 are pure read-only commands. A: They will not fire the shutter, RGB LEDs, or load-cell output. A: Therefore, you can safely call them mid-shoot without interrupting exposure workflows.

Final Summary

  • First of all, CT+GETTBCONFIG();, CT+GETPN();, CT+GETEBC();, CT+GETFWV();, and CT+GETOFFSETANGLE(); form the backbone of the programmable electric turntable query system.
  • Secondly, the first four commands handle hardware identity and compatibility gating.
  • Meanwhile, the fifth command handles real-time angle closed-loop verification.
  • Furthermore, the recommended development order is handshake, firmware read, model read, serial read, config read, and offset-angle read.
  • Besides, business code must branch on firmware version; otherwise error code 40 will surprise you in production.
  • Finally, paired with a programmable motorized photo rotation stand, developers can reliably build automated 360-degree product showcase pipelines.

Leave a Reply

Your email address will not be published. Required fields are marked *


类似文章

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注