System Status
Controller Initialization Completion
Query Whether Complete
Command Word: 0x4305 CONTROLLER_INIT_FINISH_INQUIRE
{}Controller Response
Command Word: 0x4306 CONTROLLER_INIT_FINISH_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| finishinit | bool | true: complete, false: not complete |
{
"finishinit": true
}Controller IP Settings
Controller IP Settings
Command Word: 0x4301 CONTROLLER_IP_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| name | string | Network interface name |
| address | string | IP address |
| gateway | string | Gateway |
| dns | string | DNS server |
{
"name": "p1p1",
"address": "192.168.1.13",
"gateway": "192.168.1.1",
"dns": "114.114.114.114"
}Query Controller IP
Command Word: 0x4302 CONTROLLER_IP_INQUIRE
No parameters
Controller Response
Command Word: 0x4303 CONTROLLER_IP_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| num | int | Network interface count |
| network | array | Network interface information array |
{
"num": 1,
"network": [
{
"name": "p1p1",
"address": "192.168.1.13",
"gateway": "192.168.1.1",
"dns": "114.114.114.114"
},
{
"name": "p2p1",
"address": "192.168.1.14",
"gateway": "192.168.1.1",
"dns": "114.114.114.114"
}
]
}Controller License
Get Controller ID
Command Word: 0x5052 IDENTIFY_NUMBER_INQUIRE
Controller Response
Command Word: 0x5053 IDENTIFY_NUMBER_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| controllerID | string | Controller ID |
{
"controllerID": "4DC9F0249098C82E"
}Get Controller Remaining Usage Days
Command Word: 0x5055 USE_REST_DAYS_INQUIRE
Controller Response
Command Word: 0x5056 USE_REST_DAYS_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| restdays | int | Remaining days, -1: unlimited usage, 0: usage period expired |
| year | int | Expiration year |
| mon | int | Expiration month |
| day | int | Expiration day |
{
"restdays": 30,
"year": 1,
"mon": 1,
"day": 1
}Update Serial Number
Command Word: 0x5057 LICENSE_SERIAL_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| license | string | Controller serial number |
{
"license": "ACOCWKBZHSKBEJHI"
}Controller Response
Command Word: 0x5059 LICENSE_SERIAL_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| result | string | License key updated successfully, controller will restart |
| ivalid | string | Invalid license key |
| error | string | Tampering detected, unlock refused |
{
"result": "success",
"ivalid": "Invalid license key!",
"error": "Tampering detected, unlock refused!"
}Query Image Version
Command Word: 0x505A IMAGE_VERSION_INQUIRE (not available on teach pendant)
Return Query Result
Command Word: 0x505B IMAGE_VERSION_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| result | bool | Whether query succeeded |
| version | int | Version number (returned when query succeeds) |
{
"result": true,
"version": xx
}Controller Send (Unauthorized Usage Notice)
Command Word: 0x505C DISABLE_CONTROLLER
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| reason | string | Controller unauthorized usage notice message |
{
"reason": ""
}Controller Send (Remaining Days Reminder)
Command Word: 0x505F REST_DAYS_REMIND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| restDays | int | Controller sends remaining usage days |
{
"restDays": 0
}Version Number Acquisition
When the teach pendant needs to get the current controller version number, send the following command:
Command Word: 0x3402 VERSIONNUM_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| version | string | Version number content |
| servoVersion | string | Servo version |
| ocmVersion | string | Static library version |
| ioVersion | string | IO board version |
{
"version": "v1.0-rc1-67-gf34dae7",
"servoVersion": xx,
"ocmVersion": xx,
"ioVersion": xx
}When Controller Receives Query Command, Sends the Following
Command Word: 0x3403 VERSIONNUM_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| configFileVersionMismatch | bool | Whether config file matches, false: mismatch; true: match |
| jobFileVersion | string | Job file version |
| rtlVersion | string | Controller version |
| sysClock | string | System clock, format: YYYY.MM.DD HH:MM:SS |
| version | string | Version number content |
| servoVersion | string | Servo version (Jiutong controller returns empty string) |
| ocmVersion | string | Static library version (Jiutong controller returns empty string) |
| ioVersion | string | IO version number (Jiutong controller returns empty string) |
| nodka_c1201 | object | C1201 controller specific node |
{
"configFileVersionMismatch": false,
"jobFileVersion": "5.2.0",
"rtlVersion": "22.08.0",
"sysClock": "2023.11.10 13:29:25",
"version": "v1.0-rc1-67-gf34dae7",
"servoVersion": "",
"ocmVersion": "",
"ioVersion": "",
"nodka_c1201": {
"deviceId": "",
"hw_version": "",
"fw_version": "",
"drv_version": ""
}
}nodka_c1201 Node Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| hw_version | string | Hardware version number |
| fw_version | string | Firmware version number |
| drv_version | string | Driver version number |
Version Verification
Query Whether Current Version Teach Pendant Program Exists
Command Word: 0x3404 EXIST_TEACHBOX_EQUAL_QTTP_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| MD5 | string | MD5 value of teach pendant program |
{
"MD5": "xx"
}Return Query Result
Command Word: 0x3405 EXIST_TEACHBOX_EQUAL_QTTP_RESPOND
If not found, the current version program needs to be uploaded.
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| backuppath | string | Teach pendant program path |
{
"backuppath": "xx"
}Query Whether Teach Pendant Program Matching Controller Version Exists
Command Word: 0x3406 EXIST_CONTROLLER_MATCHED_QTTP_INQUIRE
No parameters
Return Query Result
Command Word: 0x3407 EXIST_CONTROLLER_MATCHED_QTTP_RESPOND
If the result is yes, a dialog box will pop up for the user to choose whether to auto-upgrade.
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| backuppath | string | Teach pendant program path |
{
"backuppath": "xx"
}Reboot Controller
When rebooting the controller, the teach pendant sends:
Command Word: 0x5061 REBOOT_CONTROLLER
No parameters
Factory Reset
When performing factory reset, the teach pendant sends:
Command Word: 0x5064 RETURN_FACTORY_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| clearConfigFile | bool | Clear all system configuration files |
| clearExtendedFile | bool | Clear all extended files |
{
"clearConfigFile": true,
"clearExtendedFile": true
}System Auto Backup
Backup System
Teach pendant sends:
Command Word: 0x5065 CONTROLLER_BACKUP_INQUIRE
No parameters
Controller Response
Command Word: 0x5066 CONTROLLER_BACKUP_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| backUpNum | int | Backup count |
| backUpName | array | Backup system names, up to ten |
{
"backUpNum": 1,
"backUpName": ["string", "string", "string"]
}Restore System
Teach pendant sends:
Command Word: 0x5067 CONTROLLER_BACKUP_RESTORE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| backUpOneName | string | System name to restore |
{
"backUpOneName": "string"
}Controller Response
Command Word: 0x5068 CONTROLLER_BACKUP_RESTORE_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| success | bool | true: system restore succeeded, false: system restore failed |
{
"success": true
}Servo Parameters
Set Servo Internal Parameters via Controller
Command Word: 0x5071 SERVO_INSIDE_PARM_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| robot | int | Robot number |
| servoNum | int | Servo number |
| ParameterName | object | Servo parameter name |
{
"robot": 1,
"servoNum": 1,
"ParameterName": {
"value": "",
"unit": "",
"upLimit": "",
"lowLimit": ""
}
}Teach Pendant Query
Command Word: 0x5072 SERVO_INSIDE_PARM_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| robot | int | Robot number |
| servoNum | int | Servo number |
{
"robot": 1,
"servoNum": 1
}Controller Return
Command Word: 0x5073 SERVO_INSIDE_PARM_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| robot | int | Robot number |
| servoNum | int | Servo number |
| sendNum | int | Send sequence number |
| totalNum | int | Total count |
| servo | array | Specific servo parameter array |
{
"robot": 1,
"servoNum": 1,
"sendNum": 1,
"totalNum": 1,
"servo": [
{
"name": "Motor Rated Power",
"value": 3000
},
{
"name": "Motor Rated Speed",
"value": 4000
}
]
}File Transfer
Request to Upload a File
Command Word: 0x5501 REQUEST_UPLOAD_FILE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| name | string | File name |
| size | int | File size |
{
"name": "vxWorks",
"size": 4096
}Accept Upload Request / Reject Upload Request
Command Word: 0x5502 REQUEST_UPLOAD_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| answer | string | "yes": accept upload, "busy": controller busy |
{
"answer": "yes"
}Request to Download a File
Command Word: 0x5504 REQUEST_DOWNLOAD_FILE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| name | string | File name |
{
"name": "log.0"
}Accept Download Request / Reject Download Request
Command Word: 0x5505 REQUEST_DOWNLOAD_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| answer | string | "yes": accept download, "busy": controller busy, "nofile": no such file |
| name | string | Job file full path |
| size | int | If rejected, size is invalid |
{
"answer": "yes",
"name": "log.0",
"size": 4096
}File Transfer Network Exception Interrupt (Teach Pendant Only)
Command Word: 0x5525 DownLoadInterrupt
No parameters
{}Teach Pendant Queries Controller Configuration File Directory
Command Word: 0x5507 CONFIG_FILE_INQUIRY
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| isExport | bool | true: export configuration, false: import configuration |
{
"isExport": true
}Controller Sends Configuration File Directory to Teach Pendant
Command Word: 0x5508 CONFIG_FILE_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| filenum | int | Configuration file count |
| filelist | array | Configuration file name list |
{
"filenum": 2,
"filelist": ["xxx.json", "yyy.json"]
}Send File Binary Data
Command Word: 0x5511 UploadFileData (notifies controller file sending complete)
Command Word: 0x5512 UploadFileDone (sends file to controller in loop)
Controller Response
Command Word: 0x5513 ReceiveUploadFinish
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| finish | bool | true means upload success, false means failure |
{
"finish": true
}Teach Pendant Requests Log File List
Command Word: 0x5542 LOGFILE_LIST_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| num | int | Number of recent files to get, available values: 5, 30, 100 |
{
"num": 5
}Controller Returns Log File List
Command Word: 0x5543 LOGFILE_LIST_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| absolutepath | string | Log directory path |
| logfilenum | int | Note: this number may not equal the num above |
| logfilelist | array | Log file list |
{
"absolutepath": "log/",
"logfilenum": 3,
"logfilelist": ["logInfo.0", "logInfo.1", "logInfo.2"]
}ENI File List Query
Command Word: 0x5545 ENIFILE_LIST_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| num | int | Number of recent files to get, available values: 5, 30, 100 |
{
"num": 5
}Controller Returns ENI File List
Command Word: 0x5546 ENIFILE_LIST_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| absolutepath | string | File directory path |
| ENIfilenum | int | Note: this number may not equal the num above |
{
"absolutepath": "log/",
"ENIfilenum": 3
}Teach Pendant Sends Reception Complete
Command Word: 0x5544 DownLoadControlLogFileFinish
Teach Pendant Requests Job File List
Command Word: 0x5532 JOBFILE_LIST_INQUIRE
Controller Returns Job File Directory and Count
Command Word: 0x5533 JOBFILE_SUM_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| absolutepath | array | Job file paths |
| jobfilenum | array | Job file count under each path |
{
"absolutepath": ["/job/R1/", "/job/R2/", "/job/R3/", "/job/R4/"],
"jobfilenum": [2, 33, 233, 666]
}Controller Returns Job File List
Command Word: 0x5534 JOBFILE_LIST_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| robot | int | Robot number |
| listnum | int | Up to 10 |
| jobfilelist | array | Job file list |
{
"robot": 1,
"listnum": 2,
"jobfilelist": [
{
"name": "xxx.JBR",
"MD5": "123"
},
{
"name": "yyy.JBR",
"MD5": "132"
}
]
}Reception Complete Sent to Teach Pendant
Command Word: 0x5535 JOBFILE_LIST_FINISH
No parameters. Sent to teach pendant after all four robots are sent.
Teach Pendant Queries Lua Script List
Command Word: 0x5552 LUASCRIPT_LIST_INQUIRE
No parameters
Controller Returns Lua Script List
Command Word: 0x5553 LUASCRIPT_LIST_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| absolutepath | string | Lua script directory path |
| sum | int | Total list count |
| scriptlist | array | Script list |
{
"absolutepath": "lua/",
"sum": 3,
"scriptlist": ["ww.lua", "ee.lua"]
}Message Prompts
Error Prompt
Command Word: 0x2B03 ERROR_CODE
Warning Prompt
Command Word: 0x2B04 WARNING_CODE
Info Bar Prompt
Command Word: 0x2B05 INFO_CODE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| data | string | Info bar content |
| type | int | Message code |
{
"data": "Example",
"type": 1234
}Popup Prompt
Command Word: 0x2B06 POPUP_CODE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| count | int | Number of popup buttons, max 3 |
| text1 | string | Main text displayed in popup center |
| text2 | string | Button 1 text |
| text3 | string | Button 2 text |
| text4 | string | Button 3 text |
| kind | int | Popup prompt type, 1=message, 2=warning, 3=error |
| node | string | Robot number 1-4 |
| Tips | bool | Popup shown as true |
{
"count": 1,
"text1": "Example",
"text2": "Example",
"text3": "Example",
"text4": "Example",
"kind": 1,
"node": "1",
"Tips": true
}Popup Interaction Feedback
Settings based on user's popup operation:
Command Word: 0x2B07 GET_OPTION
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| node | string | Robot number 1-4 |
| option | int | 1-3, corresponding to popup option 1-3 content |
{
"node": "1",
"option": 1
}Controller Time Query
Time Query
Command Word: 0x5742 CONTROLLER_TIME_INQUIRE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| type | int | 1: get seconds from system start to now, 0: display time |
| format | int | 1: get Beijing time, 0: get timestamp |
{
"type": 0,
"format": 0
}Return Query Result
Command Word: 0x5743 CONTROLLER_TIME_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| tType | int | 1: get seconds from system start to now, 0: display time |
| format | int | 1: get Beijing time, 0: get timestamp |
| date | object | When format is 1, expressed in Greenwich Mean Time |
| year | int | Year in date |
| mon | int | Month in date |
| day | int | Day in date |
| hour | int | Hour in time |
| min | int | Minute in time |
| sec | int | Second in time |
| msec | int | Millisecond in time |
| timestamp | object | Timestamp recorded in seconds and nanoseconds |
| s | int | Seconds in timestamp |
| ns | int | Nanoseconds in timestamp |
{
"tType": 0,
"format": 0,
"date": {
"year": 2023,
"mon": 1,
"day": 1,
"hour": 1,
"min": 1,
"sec": 1,
"msec": 1
},
"timestamp": {
"s": 1,
"ns": 1
}
}Copy Robot Parameters
Command Word: 0x9111 COPY_ROBOT_PARAM
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| mainRobot | int | Robot number of the robot whose parameters are being copied |
| copyToRobot | array | Array index represents robot number; array element: 1: needs copy, 0: no copy needed |
{
"mainRobot": 1,
"copyToRobot": [0, 1, 0, 1]
}Send and Receive Messages
// 0x95XX is occupied by upper computer service functions
Server Send Error
Command Word: 0x6010 SEVERO_ERROR
Send Robot Error
Command Word: 0x6020 ROBOT_ERROR
Send Controller Error
Command Word: 0x6030 CONTROLLER_ERROR
Send Memory Error
Command Word: 0x6040 MEMORY_ERROR
Warning Type
Command Word: 0x6110 WARNING_TYPE
Message Type
Command Word: 0x6210 INFO_TYPE
Hard Disk Status
Hardware Status Query
Command Word: 0x50D2 HARDDISK_STATUS_INQUIRE
No parameters
{}Controller Returns After Hardware Status Query
Command Word: 0x50D3 HARDDISK_STATUS_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| Estimated_Available_Time | int | Estimated available time, unit: h |
| get_harddisk_warning_time | int | Hard disk warning time, unit: h |
{
"Estimated_Available_Time": 200,
"get_harddisk_warning_time": 500
}Set Hard Disk Warning Time
Command Word: 0x50D4 HARDDISK_WARNING_TIME_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| set_harddisk_warning_time | int | Hard disk warning time, unit: h |
{
"set_harddisk_warning_time": 500
}Operation Parameters
Operation Parameter Settings
Command Word: 0x50A1 OPERATE_PARAM_SET
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| OutageKeepFunctionFlag | bool | Power outage keep function |
| checkServoStatusWordMaxTime | int | Servo response time, unit: ms, range 1-1000 |
| runModeAutoManBegFlag | bool | Auto power-on when switching to run mode |
| remoteUseReserveModeFlag | bool | Reservation mode |
| remoteAllowContinueRunFlag | bool | Remote IO breakpoint execution |
| remoteAllowCurrentRunFlag | bool | Remote IO current line execution |
| remoteSwitchModeEnable | bool | Switch to remote mode without teach pendant |
| allowReserveRunningPro | bool | Allow reservation again while remote IO program is running |
| SetSafeScreenTeachInvalidFlag | bool | Safety light curtain disabled in teach mode |
| keepStepRunFlag | int | Single step/return zero/reset point/run operation mode, 0: click to run, 1: press to run |
| defaultRunningSpeed | int | Default speed on power-on in run mode |
| language | string | Language option: "chinese", "english", "korean" |
| craftSelect | string | Process selection: general-general process, special-dedicated process, punch-stamping process, pallet-palletizing process, weld-welding process, cut-cutting process |
| switch_only_note | bool | Instruction insert only show point annotation, true: only show annotation, false: show both |
{
"OutageKeepFunctionFlag": false,
"checkServoStatusWordMaxTime": 100,
"runModeAutoManBegFlag": false,
"remoteUseReserveModeFlag": false,
"remoteAllowContinueRunFlag": true,
"remoteAllowCurrentRunFlag": false,
"remoteSwitchModeEnable": false,
"allowReserveRunningPro": false,
"SetSafeScreenTeachInvalidFlag": false,
"keepStepRunFlag": 0,
"defaultRunningSpeed": 1,
"language": "chinese",
"craftSelect": "general",
"switch_only_note": false
}Query
Command Word: 0x50A2 OPERATE_PARAM_INQUIRE
No parameters
Controller Return
Command Word: 0x50A3 OPERATE_PARAM_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| rebootRunEnable | bool | Power outage keep function |
| defaultRunningSpeed | int | Default speed on power-on in run mode |
| runModeAutoManBegFlag | bool | Auto power-on when switching to run mode |
| remoteUseReserveModeFlag | bool | Reservation mode |
| remoteAllowContinueRunFlag | bool | Remote IO breakpoint execution |
| remoteAllowCurrentRunFlag | bool | Remote IO current line execution |
| remoteSwitchModeEnable | bool | Switch to remote mode without teach pendant |
| allowReserveRunningPro | bool | Allow reservation again while remote IO program is running |
| SetSafeScreenTeachInvalidFlag | bool | Safety light curtain disabled in teach mode |
| keepStepRunFlag | int | Single step/return zero/reset point/run operation mode, 0: click to run, 1: press to run |
| craftSelect | string | Process selection |
| switch_only_note | bool | Instruction insert only show point annotation |
{
"rebootRunEnable": false,
"defaultRunningSpeed": 1,
"runModeAutoManBegFlag": false,
"remoteUseReserveModeFlag": false,
"remoteAllowContinueRunFlag": true,
"remoteAllowCurrentRunFlag": false,
"remoteSwitchModeEnable": false,
"allowReserveRunningPro": false,
"SetSafeScreenTeachInvalidFlag": false,
"keepStepRunFlag": 0,
"craftSelect": "general",
"switch_only_note": false
}Switch System
Command Word: 0x5101 SWITCH_MASTER
No parameters
Get Supported Languages
Query Language Support
Command Word: 0x50A5 LANGUAGE_SUPPORT_INQUIRE
No parameters
{}Return Query Result
Command Word: 0x50A6 LANGUAGE_SUPPORT_RESPOND
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| language | array | Supported language list |
| language_used | string | Currently used language |
{
"language": ["Chinese", "Korean", "English"],
"language_used": "Chinese"
}Compare Teach Pendant and Controller Current Language
Command Word: 0x50A7 TEACHBOX_LANGUAGE
Parameter Description:
| Parameter | Type | Description |
|---|---|---|
| teachbox_language | string | Teach pendant current language |
{
"teachbox_language": "Chinese"
}Unplug Teach Pendant
Send When Teach Pendant Unplugged
Command Word: 0x7277 TEACHBOXSTATE_CLOSE
No parameters
{}Insert Teach Pendant to Restore Communication
Command Word: 0x7278 TEACHBOXSTATE_OPEN
No parameters
{}