Skip to content

System Status

Controller Initialization Completion

Query Whether Complete

Command Word: 0x4305 CONTROLLER_INIT_FINISH_INQUIRE

json
{}

Controller Response

Command Word: 0x4306 CONTROLLER_INIT_FINISH_RESPOND

Parameter Description:

ParameterTypeDescription
finishinitbooltrue: complete, false: not complete
json
{
  "finishinit": true
}

Controller IP Settings

Controller IP Settings

Command Word: 0x4301 CONTROLLER_IP_SET

Parameter Description:

ParameterTypeDescription
namestringNetwork interface name
addressstringIP address
gatewaystringGateway
dnsstringDNS server
json
{
  "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:

ParameterTypeDescription
numintNetwork interface count
networkarrayNetwork interface information array
json
{
  "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:

ParameterTypeDescription
controllerIDstringController ID
json
{
  "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:

ParameterTypeDescription
restdaysintRemaining days, -1: unlimited usage, 0: usage period expired
yearintExpiration year
monintExpiration month
dayintExpiration day
json
{
  "restdays": 30,
  "year": 1,
  "mon": 1,
  "day": 1
}

Update Serial Number

Command Word: 0x5057 LICENSE_SERIAL_SET

Parameter Description:

ParameterTypeDescription
licensestringController serial number
json
{
  "license": "ACOCWKBZHSKBEJHI"
}

Controller Response

Command Word: 0x5059 LICENSE_SERIAL_RESPOND

Parameter Description:

ParameterTypeDescription
resultstringLicense key updated successfully, controller will restart
ivalidstringInvalid license key
errorstringTampering detected, unlock refused
json
{
  "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:

ParameterTypeDescription
resultboolWhether query succeeded
versionintVersion number (returned when query succeeds)
json
{
  "result": true,
  "version": xx
}

Controller Send (Unauthorized Usage Notice)

Command Word: 0x505C DISABLE_CONTROLLER

Parameter Description:

ParameterTypeDescription
reasonstringController unauthorized usage notice message
json
{
  "reason": ""
}

Controller Send (Remaining Days Reminder)

Command Word: 0x505F REST_DAYS_REMIND

Parameter Description:

ParameterTypeDescription
restDaysintController sends remaining usage days
json
{
  "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:

ParameterTypeDescription
versionstringVersion number content
servoVersionstringServo version
ocmVersionstringStatic library version
ioVersionstringIO board version
json
{
  "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:

ParameterTypeDescription
configFileVersionMismatchboolWhether config file matches, false: mismatch; true: match
jobFileVersionstringJob file version
rtlVersionstringController version
sysClockstringSystem clock, format: YYYY.MM.DD HH:MM:SS
versionstringVersion number content
servoVersionstringServo version (Jiutong controller returns empty string)
ocmVersionstringStatic library version (Jiutong controller returns empty string)
ioVersionstringIO version number (Jiutong controller returns empty string)
nodka_c1201objectC1201 controller specific node
json
{
  "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:

ParameterTypeDescription
deviceIdstringDevice ID
hw_versionstringHardware version number
fw_versionstringFirmware version number
drv_versionstringDriver version number

Version Verification

Query Whether Current Version Teach Pendant Program Exists

Command Word: 0x3404 EXIST_TEACHBOX_EQUAL_QTTP_INQUIRE

Parameter Description:

ParameterTypeDescription
MD5stringMD5 value of teach pendant program
json
{
  "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:

ParameterTypeDescription
backuppathstringTeach pendant program path
json
{
  "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:

ParameterTypeDescription
backuppathstringTeach pendant program path
json
{
  "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:

ParameterTypeDescription
clearConfigFileboolClear all system configuration files
clearExtendedFileboolClear all extended files
json
{
  "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:

ParameterTypeDescription
backUpNumintBackup count
backUpNamearrayBackup system names, up to ten
json
{
  "backUpNum": 1,
  "backUpName": ["string", "string", "string"]
}

Restore System

Teach pendant sends:

Command Word: 0x5067 CONTROLLER_BACKUP_RESTORE

Parameter Description:

ParameterTypeDescription
backUpOneNamestringSystem name to restore
json
{
  "backUpOneName": "string"
}

Controller Response

Command Word: 0x5068 CONTROLLER_BACKUP_RESTORE_RESPOND

Parameter Description:

ParameterTypeDescription
successbooltrue: system restore succeeded, false: system restore failed
json
{
  "success": true
}

Servo Parameters

Set Servo Internal Parameters via Controller

Command Word: 0x5071 SERVO_INSIDE_PARM_SET

Parameter Description:

ParameterTypeDescription
robotintRobot number
servoNumintServo number
ParameterNameobjectServo parameter name
json
{
  "robot": 1,
  "servoNum": 1,
  "ParameterName": {
    "value": "",
    "unit": "",
    "upLimit": "",
    "lowLimit": ""
  }
}

Teach Pendant Query

Command Word: 0x5072 SERVO_INSIDE_PARM_INQUIRE

Parameter Description:

ParameterTypeDescription
robotintRobot number
servoNumintServo number
json
{
  "robot": 1,
  "servoNum": 1
}

Controller Return

Command Word: 0x5073 SERVO_INSIDE_PARM_RESPOND

Parameter Description:

ParameterTypeDescription
robotintRobot number
servoNumintServo number
sendNumintSend sequence number
totalNumintTotal count
servoarraySpecific servo parameter array
json
{
  "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:

ParameterTypeDescription
namestringFile name
sizeintFile size
json
{
  "name": "vxWorks",
  "size": 4096
}

Accept Upload Request / Reject Upload Request

Command Word: 0x5502 REQUEST_UPLOAD_RESPOND

Parameter Description:

ParameterTypeDescription
answerstring"yes": accept upload, "busy": controller busy
json
{
  "answer": "yes"
}

Request to Download a File

Command Word: 0x5504 REQUEST_DOWNLOAD_FILE

Parameter Description:

ParameterTypeDescription
namestringFile name
json
{
  "name": "log.0"
}

Accept Download Request / Reject Download Request

Command Word: 0x5505 REQUEST_DOWNLOAD_RESPOND

Parameter Description:

ParameterTypeDescription
answerstring"yes": accept download, "busy": controller busy, "nofile": no such file
namestringJob file full path
sizeintIf rejected, size is invalid
json
{
  "answer": "yes",
  "name": "log.0",
  "size": 4096
}

File Transfer Network Exception Interrupt (Teach Pendant Only)

Command Word: 0x5525 DownLoadInterrupt

No parameters

json
{}

Teach Pendant Queries Controller Configuration File Directory

Command Word: 0x5507 CONFIG_FILE_INQUIRY

Parameter Description:

ParameterTypeDescription
isExportbooltrue: export configuration, false: import configuration
json
{
  "isExport": true
}

Controller Sends Configuration File Directory to Teach Pendant

Command Word: 0x5508 CONFIG_FILE_RESPOND

Parameter Description:

ParameterTypeDescription
filenumintConfiguration file count
filelistarrayConfiguration file name list
json
{
  "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:

ParameterTypeDescription
finishbooltrue means upload success, false means failure
json
{
  "finish": true
}

Teach Pendant Requests Log File List

Command Word: 0x5542 LOGFILE_LIST_INQUIRE

Parameter Description:

ParameterTypeDescription
numintNumber of recent files to get, available values: 5, 30, 100
json
{
  "num": 5
}

Controller Returns Log File List

Command Word: 0x5543 LOGFILE_LIST_RESPOND

Parameter Description:

ParameterTypeDescription
absolutepathstringLog directory path
logfilenumintNote: this number may not equal the num above
logfilelistarrayLog file list
json
{
  "absolutepath": "log/",
  "logfilenum": 3,
  "logfilelist": ["logInfo.0", "logInfo.1", "logInfo.2"]
}

ENI File List Query

Command Word: 0x5545 ENIFILE_LIST_INQUIRE

Parameter Description:

ParameterTypeDescription
numintNumber of recent files to get, available values: 5, 30, 100
json
{
  "num": 5
}

Controller Returns ENI File List

Command Word: 0x5546 ENIFILE_LIST_RESPOND

Parameter Description:

ParameterTypeDescription
absolutepathstringFile directory path
ENIfilenumintNote: this number may not equal the num above
json
{
  "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:

ParameterTypeDescription
absolutepatharrayJob file paths
jobfilenumarrayJob file count under each path
json
{
  "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:

ParameterTypeDescription
robotintRobot number
listnumintUp to 10
jobfilelistarrayJob file list
json
{
  "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:

ParameterTypeDescription
absolutepathstringLua script directory path
sumintTotal list count
scriptlistarrayScript list
json
{
  "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:

ParameterTypeDescription
datastringInfo bar content
typeintMessage code
json
{
  "data": "Example",
  "type": 1234
}

Command Word: 0x2B06 POPUP_CODE

Parameter Description:

ParameterTypeDescription
countintNumber of popup buttons, max 3
text1stringMain text displayed in popup center
text2stringButton 1 text
text3stringButton 2 text
text4stringButton 3 text
kindintPopup prompt type, 1=message, 2=warning, 3=error
nodestringRobot number 1-4
TipsboolPopup shown as true
json
{
  "count": 1,
  "text1": "Example",
  "text2": "Example",
  "text3": "Example",
  "text4": "Example",
  "kind": 1,
  "node": "1",
  "Tips": true
}

Settings based on user's popup operation:

Command Word: 0x2B07 GET_OPTION

Parameter Description:

ParameterTypeDescription
nodestringRobot number 1-4
optionint1-3, corresponding to popup option 1-3 content
json
{
  "node": "1",
  "option": 1
}

Controller Time Query

Time Query

Command Word: 0x5742 CONTROLLER_TIME_INQUIRE

Parameter Description:

ParameterTypeDescription
typeint1: get seconds from system start to now, 0: display time
formatint1: get Beijing time, 0: get timestamp
json
{
  "type": 0,
  "format": 0
}

Return Query Result

Command Word: 0x5743 CONTROLLER_TIME_RESPOND

Parameter Description:

ParameterTypeDescription
tTypeint1: get seconds from system start to now, 0: display time
formatint1: get Beijing time, 0: get timestamp
dateobjectWhen format is 1, expressed in Greenwich Mean Time
yearintYear in date
monintMonth in date
dayintDay in date
hourintHour in time
minintMinute in time
secintSecond in time
msecintMillisecond in time
timestampobjectTimestamp recorded in seconds and nanoseconds
sintSeconds in timestamp
nsintNanoseconds in timestamp
json
{
  "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:

ParameterTypeDescription
mainRobotintRobot number of the robot whose parameters are being copied
copyToRobotarrayArray index represents robot number; array element: 1: needs copy, 0: no copy needed
json
{
  "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

json
{}

Controller Returns After Hardware Status Query

Command Word: 0x50D3 HARDDISK_STATUS_RESPOND

Parameter Description:

ParameterTypeDescription
Estimated_Available_TimeintEstimated available time, unit: h
get_harddisk_warning_timeintHard disk warning time, unit: h
json
{
  "Estimated_Available_Time": 200,
  "get_harddisk_warning_time": 500
}

Set Hard Disk Warning Time

Command Word: 0x50D4 HARDDISK_WARNING_TIME_SET

Parameter Description:

ParameterTypeDescription
set_harddisk_warning_timeintHard disk warning time, unit: h
json
{
  "set_harddisk_warning_time": 500
}

Operation Parameters

Operation Parameter Settings

Command Word: 0x50A1 OPERATE_PARAM_SET

Parameter Description:

ParameterTypeDescription
OutageKeepFunctionFlagboolPower outage keep function
checkServoStatusWordMaxTimeintServo response time, unit: ms, range 1-1000
runModeAutoManBegFlagboolAuto power-on when switching to run mode
remoteUseReserveModeFlagboolReservation mode
remoteAllowContinueRunFlagboolRemote IO breakpoint execution
remoteAllowCurrentRunFlagboolRemote IO current line execution
remoteSwitchModeEnableboolSwitch to remote mode without teach pendant
allowReserveRunningProboolAllow reservation again while remote IO program is running
SetSafeScreenTeachInvalidFlagboolSafety light curtain disabled in teach mode
keepStepRunFlagintSingle step/return zero/reset point/run operation mode, 0: click to run, 1: press to run
defaultRunningSpeedintDefault speed on power-on in run mode
languagestringLanguage option: "chinese", "english", "korean"
craftSelectstringProcess selection: general-general process, special-dedicated process, punch-stamping process, pallet-palletizing process, weld-welding process, cut-cutting process
switch_only_noteboolInstruction insert only show point annotation, true: only show annotation, false: show both
json
{
  "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:

ParameterTypeDescription
rebootRunEnableboolPower outage keep function
defaultRunningSpeedintDefault speed on power-on in run mode
runModeAutoManBegFlagboolAuto power-on when switching to run mode
remoteUseReserveModeFlagboolReservation mode
remoteAllowContinueRunFlagboolRemote IO breakpoint execution
remoteAllowCurrentRunFlagboolRemote IO current line execution
remoteSwitchModeEnableboolSwitch to remote mode without teach pendant
allowReserveRunningProboolAllow reservation again while remote IO program is running
SetSafeScreenTeachInvalidFlagboolSafety light curtain disabled in teach mode
keepStepRunFlagintSingle step/return zero/reset point/run operation mode, 0: click to run, 1: press to run
craftSelectstringProcess selection
switch_only_noteboolInstruction insert only show point annotation
json
{
  "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

json
{}

Return Query Result

Command Word: 0x50A6 LANGUAGE_SUPPORT_RESPOND

Parameter Description:

ParameterTypeDescription
languagearraySupported language list
language_usedstringCurrently used language
json
{
  "language": ["Chinese", "Korean", "English"],
  "language_used": "Chinese"
}

Compare Teach Pendant and Controller Current Language

Command Word: 0x50A7 TEACHBOX_LANGUAGE

Parameter Description:

ParameterTypeDescription
teachbox_languagestringTeach pendant current language
json
{
  "teachbox_language": "Chinese"
}

Unplug Teach Pendant

Send When Teach Pendant Unplugged

Command Word: 0x7277 TEACHBOXSTATE_CLOSE

No parameters

json
{}

Insert Teach Pendant to Restore Communication

Command Word: 0x7278 TEACHBOXSTATE_OPEN

No parameters

json
{}