HTTP Endpoints
You can communicate with HTTP/REST api over edelkrone SDK.
Caution
The SDK supports the only version of HTTP/1.1.
Note
SDK does not provide an SSL connection. So you can only connect over HTTP.
Caution
The SDK does not supported CORS, so when you send a request with "OPTIONS" method, the SDK return a error because a HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Pairing
Pairing means that the devices are connected to each other and can also communicate. The PC communicates over link devices with paired devices.
In addition, paired devices are called "Bundle". You can also check What is Bundle?
Wifi
Initiate wireless scan
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because a HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"wirelessPairingScanStart"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
wirelessPairingScanStart |
command name |
Return value
Get current wireless scan results
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not supported CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"wirelessPairingScanResults"
}
| Label | Type | Description |
|---|---|---|
command |
string |
wirelessPairingScanResults |
Return value
{
"data": [
{
"deviceFirmware": 18,
"groupId": 65535,
"isDeviceFirmwareUpdateAvailable": false,
"isRadioFirmwareUpdateAvailable": false,
"linkPairigingActive": true,
"mac": "A4:E5:7C:CF:4F:66",
"radioFirmware": 32,
"rssi": -32.0,
"setup": "groupMember",
"type": "slideModuleV3"
},
{
"deviceFirmware": 101,
"groupId": 23113,
"isDeviceFirmwareUpdateAvailable": false,
"isRadioFirmwareUpdateAvailable": false,
"mac": "E8:DB:84:2C:C4:76",
"radioFirmware": 32,
"rssi": -76.0,
"setup": "panTilt",
"type": "headPlusV2"
},
{
"deviceFirmware": 101,
"groupId": 65535,
"isDeviceFirmwareUpdateAvailable": false,
"isRadioFirmwareUpdateAvailable": false,
"linkPairigingActive": true,
"mac": "E8:DB:84:2C:D2:AE",
"radioFirmware": 33,
"rssi": -58.0,
"setup": "panTiltAndSlide",
"type": "headPlusV2"
},
{
"deviceFirmware": 101,
"groupId": 16519,
"isDeviceFirmwareUpdateAvailable": false,
"isRadioFirmwareUpdateAvailable": false,
"mac": "98:F4:AB:21:A7:7E",
"radioFirmware": 32,
"rssi": -66.0,
"setup": "panTilt",
"type": "headPlusProV2"
}
],
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
data |
device array |
[deviceinfo1, deviceinfo2] |
Array of information of devices on canbus |
| Label | Type | Value | Description |
|---|---|---|---|
deviceFirmware |
int |
Device fimrware number | |
groupId |
int |
Which group device is in | |
linkPairigingActive |
bool |
||
IsTilted |
bool |
||
mac |
string |
FF:FF:FF:FF:FF:FF |
Mac address as string, it should be hex string |
rssi |
int |
Received signal strength indication | |
isDeviceFirmwareUpdateAvailable |
bool |
If there is exist a update available, this flag will be true | |
isRadioFirmwareUpdateAvailable |
bool |
If there is exist a update available, this flag will be true | |
radioFirmware |
int |
Radio Firmware Version | |
setup |
string |
If device is master device:
|
- |
type |
string |
- | Device Type |
| Device Type |
|---|
slideModule |
headPlus |
headPlusPro |
headOne |
surfaceOne |
dollyPlus |
sliderOnePro |
sliderOne |
dollyOne |
dollyPlusPro |
jibOne |
goldFinch |
slideModuleV3 |
panPro |
jibOneMk2 |
focusPlusPro |
headPlusV2 |
headPlusProV2 |
slideModuleV1 |
none |
Note
The scan wireless command should be sent before that command is sent. Otherwise, Link adapter does not return any device info.
Create Bundle
Pairs devices and joins to them.
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK return a error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "wirelessPairingCreateBundle",
"deviceCount": 1,
"forcedMasterDevice": "none",
"macList": [
"E8:68:E7:2E:B5:E2"
]
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
wirelessPairingCreateBundle |
command name |
deviceCount |
integer |
0 - ... |
Number of device to be paired |
forcedMasterDevice |
string |
- | Forced Device Type |
macList |
string |
FF:FF:FF:FF:FF:FF |
Mac list of devices. Mac pattern should be like "xx:xx:xx:xx:xx" |
| Forced Master Device |
|---|
slideModule |
headPlus |
headPlusPro |
headOne |
surfaceOne |
dollyPlus |
sliderOnePro |
sliderOne |
dollyOne |
dollyPlusPro |
jibOne |
goldFinch |
slideModuleV3 |
panPro |
jibOneMk2 |
focusPlusPro |
headPlusV2 |
headPlusProV2 |
slideModuleV1 |
none |
Return value
Note
The send mac addresses are reachable while creating the bundle. Otherwise, the pairing process will be crashed, in which case get pair state by using this command.
Attach to Exist Bundle
Attach to already existing paired devices.
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command": "wirelessPairingAttachToBundle",
"mac": "30:AE:A4:8F:B1:46"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
wirelessPairingAttachToBundle |
command name |
mac |
string |
FF:FF:FF:FF:FF:FF |
Which device mac you want to connect. Mac pattern should be like "xx:xx:xx:xx:xx" |
Return value
Note
The send mac addresses are reachable while creating the bundle. Otherwise, the pairing process will be crashed, in which case get pair state by using this command.
Get Pairing Status
URL
/v1/link/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"wirelessPairingStatus"
}
| Label | Type | Value | Description |
|---|---|---|---|
| command | string |
wirelessPairingStatus |
command name |
Return value
{
"data": {
"lastPairError": "none",
"wirelessPairState": "idle"
},
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
lastPairError |
string |
connectionProblem |
Last pair error |
pairState |
string |
|
Disconnect from bundle
URL
/v1/link/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"disconnect"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
disconnect |
command name |
Return value
Default Return Values
{
"result": "ok"
}
System executed your command without any issues.
{
"result": "Invalid Arguments"
}
Given arguments are invalid.
Link
Get Link Devices results
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not supported CORS, so when you send a request with "OPTIONS" method, the SDK return a error because of HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"link2PairingScanResults"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
link2PairingScanResults |
command name |
Return value
{
"data": [
{
"firmwareVersionMajor": 0,
"firmwareVersionMinor": 18,
"isDeviceFirmwareUpdateAvailable": false,
"type": "slideModuleV3"
},
{
"firmwareVersionMajor": 0,
"firmwareVersionMinor": 101,
"isDeviceFirmwareUpdateAvailable": false,
"type": "headPlusV2"
}
],
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
data |
device array |
[deviceinfo1, deviceinfo2] |
Array of information of devices on Link |
| Label | Type | Value | Description |
|---|---|---|---|
type |
string |
- | Device Type |
firmwareVersionMajor |
int |
- | Device Firmware Major Version |
firmwareVersionMinor |
int |
- | Device fimrware Minor number |
isDeviceFirmwareUpdateAvailable |
bool |
- | If there is exist a update available, this flag will be true |
| Device Type |
|---|
slideModule |
headPlus |
headPlusPro |
headOne |
surfaceOne |
dollyPlus |
sliderOnePro |
sliderOne |
dollyOne |
dollyPlusPro |
jibOne |
goldFinch |
slideModuleV3 |
panPro |
jibOneMk2 |
focusPlusPro |
headPlusV2 |
headPlusProV2 |
slideModuleV1 |
none |
Connect to Bundle
Pairs devices and joins to them.
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not supported CORS, so when you send a request with the "OPTIONS" method, the SDK returns an error because of HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"link2PairingConnect"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
link2PairingConnect |
command name |
Return value
Get Pairing Status
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because of HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"link2PairingStatus"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
link2PairingStatus |
command name |
Return value
{
"data": {
"canbusPairState": "pingReceived",
"lastPairError": "none"
},
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
| canbusPairState | string |
|
Master device state |
| lastPairError | string |
|
Disconnect from bundle
URL
/v1/link/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"disconnect"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
disconnect |
command name |
Return value
Default Return Values
{
"result": "ok"
}
System executed your command without any issues.
{
"result": "Invalid Arguments"
}
Given arguments are invalid.
RJ45
Connect to Bundle
Pairs devices and joins to them.
URL
/v1/link/{linkID}
Method
POST
Caution
The SDK does not supported CORS, so when you send a request with "OPTIONS" method, the SDK return a error because of HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"link1PairingConnect"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
link1PairingConnect |
command name |
Return value
Default Return Values
{
"result": "ok"
}
System executed your command without any issues.
{
"result": "Invalid Arguments"
}
Given arguments are invalid.
{
"result": "Device is paired"
}
Pairing is complete so no longer send any movement command
Keypose
This commands is related to simple pose store and recall methods.
Keypose Store Current Pose
URL
/v1/bundle/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "keyposeStoreCurrentPose",
"index": 0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeStoreCurrentPose |
command name |
index |
integer |
0 - 5 |
Keypose slot you want to store the current pose |
Return value
Note
Use this command to store your overall pose as a keypose. You can move your system to this location later by referencing with index.
Keypose Store by Numeric Data
URL
/v1/bundle/{linkID}
Method
POST
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK return a error because of HTTP request of "Content-Type" is sent always as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeStoreWithNumericData",
"index":0,
"{axis name}":"{setpoint value}"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeStoreWithNumericData |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to move |
axis name |
float |
In which axis direction you want to move |
| Axis Name | Type | Value Range |
|---|---|---|
headPan |
float |
-180.0 - +180.0 |
headTilt |
float |
-180.0 - +180.0 |
slide |
float |
It depends your calibrations. |
focus |
float |
|
jibPlusPan |
float |
|
jibPlusTilt |
float |
Example JSON You want to send command for three axes; Head Pan, Head Tilt and Slide;
{
"command":"keyposeStoreWithNumericData",
"index":0,
"headPan":0.0,
"headTilt":0.0,
"slide":0.0,
}
Return value
Keypose Move with Fixed Duration
URL
POST /v1/bundle/{linkID}
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeMoveFixedDuration",
"index":0,
"duration":0.5,
"acceleration":0.0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedDuration |
command name |
index |
integer |
0-5 |
Keypose slot index you want to move |
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
duration |
float |
second |
Planned motion duration |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Keypose Move with Fixed Speed
URL
POST /v1/bundle/{linkID}
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Method
POST
Payload
{
"command": "keyposeMoveFixedSpeed",
"index": 0,
"acceleration": 0.5,
"speed": 8.0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedSpeed |
command name |
index |
integer |
0-5 |
Keypose slot index you want to move |
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
speed |
float |
-1.0 - +1.0 |
Speed ratio for motion |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Loop Between Keyposes with Fixed Duration
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeLoopFixedDuration",
"index1":0,
"index2":1,
"duration":0.0,
"acceleration":0.0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeMoveFixedDuration |
command name |
index1 |
integer |
0 - 5 |
|
index2 |
integer |
0 - 5 |
|
acceleration |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
duration |
float |
second |
Planned motion duration |
Note
System doesn't guarantee that every movement will be completed as requested. If requested duration is lower than what system can achieve with 100% speed, system moves with 100% speed.
Loop Between Keyposes with Fixed Speed
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json"..
Payload
{
"command": "keyposeLoopFixedSpeed",
"index1": 0,
"index2": 0,
"acceleration": 0.5,
"speed": 8.0,
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeLoopFixedSpeed |
command name |
index1 |
integer |
0 - 5 |
Keypose slot index you want to move |
acceleartion |
float |
0.0 - 1.0 |
Ease in / out amount. 0.0 is immediate move, 1.0 is most smooth |
speed |
float |
-1.0 - +1.0 |
Speed ratio for motion |
Note
System doesn't guarantee to move within you ask for it. If requested duration is lower than what system can achive with %100 speed, system moves with %100 speed.
Read Keypose Numeric Information
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "keyposeReadNumericValues",
"index": 0
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeReadNumericValues |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to get information about keypose |
Return value
{
"data": {
"{axis_name}": "{set_point}",
},
"result": "ok"
}
Example Return
{
"data": {
"focus": 0,
"headPan": 0.0,
"headTilt": 0.0,
"index": 0,
"jibPlusPan": -1.0,
"jibPlusTilt": -1.0,
"slide": 0.0
},
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
| data | string |
|
Update status |
| Axis Name | Type | Value Range |
|---|---|---|
headPan |
float |
-180.0 - +180.0 |
headTilt |
float |
-180.0 - +180.0 |
slide |
float |
It depends your calibrations. |
focus |
float |
|
jibPlusPan |
float |
|
jibPlusTilt |
float |
Delete Keypose
TO BE FILLED
URL
POST /v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"keyposeDeletePose",
"index":1
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
keyposeDeletePose |
command name |
index |
integer |
0 - 5 |
Keypose slot index you want to get information about keypose |
Default Return Values
{
"result": "ok"
}
Given arguments are invalid.
{
"result": "invalid setup"
}
Given device is invalid
Move
This command relates to move methods.
Joystick Move
URL
/v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "joystickMove",
"{axis_name}": "{speed_ratio}"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
joystickMove |
command name |
axis_name |
float |
- | In which axis direction you want to move and its speed ratio. |
| Axis Name | Type | Value Range |
|---|---|---|
headPan |
float |
-180.0 - +180.0 |
headTilt |
float |
-180.0 - +180.0 |
slide |
float |
It depends your calibrations. |
focus |
float |
|
jibPlusPan |
float |
|
jibPlusTilt |
float |
Note
As in the example below, the desired direction to move must be given as the key and the speed value as a value.
Caution
The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Example JSON You want to send command for three axes; Head Pan, Head Tilt and Slide;
{
"command":"joystickMove",
"index":0,
"headPan":0.0,
"headTilt":0.0,
"slide":0.0,
}
Focus Manual Move
URL
/v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "focusManualMove",
"deltaEnc": 10
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
focusManualMove |
command name |
deltaEnc |
integer |
`` | encoder step |
Motion Abort
URL
/v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "motionAbort"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
motionAbort |
command name |
Calibration
URL
/v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command": "calibrate",
"device": "slideModuleV3",
"isOnGround": true,
"isOnLeftSide" : false,
"jibLength" = 2,
"rodLength" = 3
}
|Label| Type | Value |Description|
|:--- |:---- |:-----------|
|command | string | motionAbort |calibrate name|
|device| string | Each device has own configuratation | Which axis you want to calibrate it.|
| jibLength | float | | length of jib|
| rodLength | float | | length of camera rod of jib|
| isOnGround | bool | | If slider is on tripod, it should be true|
| isOnLeftSide | bool | | If slide module is left side of slider, it should be true otherwise it will be false |
- `slideModule`
- `headPlus`
- `headPlusPro`
- `headOne`
- `surfaceOne`
- `dollyPlus`
- `sliderOnePro`
- `sliderOne`
- `dollyOne`
- `dollyPlusPro`
- `jibOne`
- `goldFinch`
- `slideModuleV3`
- `panPro`
- `jibOneMk2`
- `focusPlusPro`
- `headPlusV2`
- `headPlusProV2`
- `slideModuleV1`
- `none`
| Device Type | Need Parameter |
|---|---|
slideModule |
|
headPlus |
- |
headPlusPro |
- |
headOne |
- |
surfaceOne |
- |
dollyPlus |
- |
sliderOnePro |
|
sliderOne |
|
dollyOne |
- |
dollyPlusPro |
- |
jibOne |
|
goldFinch |
- |
slideModuleV3 |
|
panPro |
- |
jibOneMk2 |
- |
focusPlusPro |
- |
headPlusV2 |
- |
headPlusProV2 |
- |
slideModuleV1 |
- |
none |
- |
Example JSON You may want to send command for three axes; Head Pan, Head Tilt and Slide;
{
"command": "calibrate",
"device": "slideModuleV3",
"isOnGround": true,
"isOnLeftSide" : false
}
Numeric Limits
Each axis has specific limit value and step value, this command returns these.
URL
/v1/bundle/{linkID}
Method
POST
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Payload
{
"command":"numericLimitValues"
}
| Label | Type | Value | Description |
|---|---|---|---|
command |
string |
numericLimitValues |
command name |
Return value
{
"pan_maxLimit": 36000.0,
"pan_minLimit": -36000.0,
"pan_step": 0.0006099999882280827,
"result": "ok",
"tilt_maxLimit": 89.0999984741211,
"tilt_minLimit": -89.0999984741211,
"tilt_step": 0.0006099999882280827
}
| Label | Type | Value | Description |
|---|---|---|---|
panMaxLimit |
float list |
||
panMinLimit |
float |
||
panStep |
float |
||
tiltMaxLimit |
float |
||
tiltMinLimit |
float |
||
tiltStep |
float |
||
focusMaxLimit |
float |
||
focusMinLimit |
float |
||
focusStep |
float |
||
jibPanMaxLimit |
float |
||
jibPanMinLimit |
float |
||
jibPanStep |
float |
||
jibTiltMaxLimit |
float |
||
jibTiltMinLimit |
float |
||
jibPanStep |
float |
||
isDataReady |
bool |
Default Return Values
{
"result": "ok"
}
System executed your command without any issues.
{
"result": "invalid setup"
}
Given device is invalid
Status
This command relates to move methods.
URL
/bundle/{linkID}/status
Method
GET
Caution !!! The SDK does not support CORS, so when you send a request with "OPTIONS" method, the SDK returns an error because an HTTP request of "Content-Type" is always sent as "text/plain" NOT "application/json".
Return value
{
"data": {
"calibratedAxes": [
{
"axis": "headPan",
"device": "headPlusV2"
},
{
"axis": "headTilt",
"device": "headPlusV2"
}
],
"deviceInfo": [
{
"batteryLevel": 1.0,
"deviceFirmwareVersion": 101,
"type": "headPlusV2"
}
],
"deviceInfoEverythingReady": true,
"keyposeLoopActive": false,
"keyposeMotionAimIndex": 0,
"keyposeMotionStartIndex": 0,
"keyposeSlotsFilled": [
false,
false,
false,
false,
false,
false
],
"plannedMotionProgress": 1.0,
"plannedMotionSecs": 0.0,
"readings": {
"headPan": 89.95600128173828,
"headTilt": 0.0
},
"realTimeSupportedAxes": [],
"state": "idle",
"supportedAxes": [
{
"axis": "headPan",
"device": "headPlusV2"
},
{
"axis": "headTilt",
"device": "headPlusV2"
}
],
"timestampDevice": 303462,
"timestampEpoch": 1634645133077
},
"result": "ok"
}
| Label | Type | Value | Description |
|---|---|---|---|
calibratedAxes |
string array |
|
Calibrated axes as string array |
deviceInfo |
device info array |
Each elements describes in below table |
Array of information of devices |
deviceInfoEverythingReady |
bool |
true - false |
It means that when it is true, that can get information. Otherwise, you can not get information. |
keyposeLoopActive |
bool |
true - false |
It means that if it is true, your bundle is looping between the specified keypose indexes. |
keyposeMotionAimIndex |
int |
0 - 5 |
aim index for keypose motion. |
keyposeMotionStartIndex |
int |
0 - 5 |
Index that before start keypose motion. |
keyposeSlotsFilled |
bool array |
true - false |
Array has six elements, each element represents that whether index is filled. |
plannedMotionProgress |
float |
0.0 - 1.0 |
It shows the percentage of how many complete of keypose motion. It is mapped between 0.0 - 1.0. |
plannedMotionSecs |
float |
|
How many seconds the keypose motion will take |
readings |
key-value pair array |
Each elements describes in below table |
Array of information of each axis |
realTimeSupportedAxes |
string array |
|
Which axes the bundle has are supported in Real-Time Move. |
state |
string |
|
Shows state of the bundle movement. |
timestampDevice |
long int |
|
The status was generated at this timestamp on the master device. |
timestampEpoch |
long int |
|
The status was grabbed from the SDK at this timestamp. |
| Label | Type | Value | Description |
|---|---|---|---|
deviceFirmwareVersion |
int |
Device fimrware version | |
batteryLevel |
int |
0 - 100 |
Battery level |
type |
string |
- | Device Type |
| Device Type |
|---|
slideModule |
headPlus |
headPlusPro |
headOne |
surfaceOne |
dollyPlus |
sliderOnePro |
sliderOne |
dollyOne |
dollyPlusPro |
jibOne |
goldFinch |
slideModuleV3 |
panPro |
jibOneMk2 |
focusPlusPro |
headPlusV2 |
headPlusProV2 |
slideModuleV1 |
none |
| Label | Type | Value | Description |
|---|---|---|---|
readings It may consist of one or more of the following:
|
float |
|
In which axis direction you want to move and its speed ratio. |
Note
You need to ask for this manually at regular intervals. Each request will return a status data without waiting for the contents to be updated. If you want to differentiate whether status is changed or not, you can use the TimestampEpoch field value.
Other
Details ...