Changes for page LSS Communication Protocol
Last modified by Eric Nantel on 2025/06/06 07:47
Change comment: There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -xwiki:XWiki. RB11 +xwiki:XWiki.CBenson - Content
-
... ... @@ -100,8 +100,7 @@ 100 100 | 6|**O**rigin Offset| O| QO| CO| ✓| ✓| tenths of degrees (ex 325 = 32.5 degrees; 91 = 9.1 degrees)| 101 101 | 7|**A**ngular **R**ange| AR| QAR| CAR| ✓| ✓| tenths of degrees (ex 325 = 32.5 degrees; 91 = 9.1 degrees)| 102 102 | 8|Position in **P**ulse| P| QP| | | ✓| microseconds|((( 103 -Valid values for P are [500, 2500]. Values outside this range are corrected to end points. 104 -Valid values for QP are {-500, [500, 2500], -2500}. Values outside the [500, 2500] range are given a negative corresponding end point value to indicate they are out of bounds. 103 +See details below. 105 105 ))) 106 106 | 9|Position in **D**egrees| D| QD| | | ✓| tenths of degrees (ex 325 = 32.5 degrees; 91 = 9.1 degrees)| 107 107 | 10|**W**heel mode in **D**egrees| WD| QWD| | | ✓| tenths of degrees per second (ex 248 = 24.8 degrees per second)| ... ... @@ -108,8 +108,8 @@ 108 108 | 11|**W**heel mode in **R**PM| WR| QWR| | | ✓| rpm| 109 109 | 12|**S**peed in **D**egrees| SD| QSD| CSD| ✓| ✓| tenths of degrees per second (ex 248 = 24.8 degrees per second)| 110 110 | 13|**S**peed in **R**PM| SR| QSR| CSR| ✓| ✓| rpm| 111 -| 14| **A**ngular**A**cceleration|AA|QAA|CAA|✓|✓|tenths of degrees per second squared|112 -| 15| **A**ngular**D**eceleration|AD|QAD|CAD|✓|✓|tenths of degrees per second squared|110 +| 14| | | | | | | | 111 +| 15| | | | | | | | 113 113 | 16|**LED** Color| LED| QLED| CLED| ✓| ✓| none (integer from 1 to 8)|0=OFF 1=RED 2=GREEN 3= BLUE 4=YELLOW 5=CYAN 6= 7=MAGENTA, 8=WHITE 114 114 | 17|**ID** #| ID| QID| CID| | ✓| none (integer from 0 to 250)|Note: ID 254 is a "broadcast" which all servos respond to. 115 115 | 18|**B**aud rate| B| QB| CB| | ✓| none (integer)| ... ... @@ -211,13 +211,14 @@ 211 211 212 212 Example: #5P2334<cr> 213 213 214 -The position in PWM pulses was retained in order to be backward compatible with the SSC-32 / 32U protocol. This relates the desired angle with an RC standard PWM pulse and is further explained in the SSC-32 and SSC-32U manuals found on Lynxmotion.com. Without any modifications to configuration considered, and a ±90.0 degrees standard range where 1500 microseconds is centered, a pulse of 2334 would set the servo to 165.1 degrees 213 +The position in PWM pulses was retained in order to be backward compatible with the SSC-32 / 32U protocol. This relates the desired angle with an RC standard PWM pulse and is further explained in the SSC-32 and SSC-32U manuals found on Lynxmotion.com. Without any modifications to configuration considered, and a ±90.0 degrees standard range where 1500 microseconds is centered, a pulse of 2334 would set the servo to 165.1 degrees. Valid values for P are [500, 2500]. Values outside this range are corrected to end points. 215 215 216 216 Query Position in Pulse (**QP**) 217 217 218 218 Example: #5QP<cr> might return *5QP 219 219 220 -This command queries the current angular position in PWM "units". The user must take into consideration that the response includes any angular range and origin configurations in order to determine the actual angle. 219 +This command queries the current angular position in PWM "units". The user must take into consideration that the response includes any angular range and origin configurations in order to determine the actual angle. 220 +Valid values for QP are {-500, [500, 2500], -2500}. Values outside the [500, 2500] range are given a negative corresponding end point value to indicate they are out of bounds. 221 221 222 222 __9. Position in Degrees (**D**)__ 223 223 ... ... @@ -291,46 +291,6 @@ 291 291 292 292 Using the CSD command sets the servo's maximum speed which is saved in EEPROM. In the example above, the servo's maximum speed will be set to 45rpm. When the servo is powered on (or after a reset), the CSD value is used. Note that CSD and CSR are effectively the same, but allow the user to specify the speed in either unit. The last command (either CSR or CSD) is what the servo uses for that session. 293 293 294 -__14. Angular Acceleration (**AA**)__ 295 - 296 -{More information coming soon} 297 - 298 -Ex: 299 - 300 -{Description coming soon} 301 - 302 -Query Angular Acceleration (**QAA**) 303 - 304 -Ex: 305 - 306 -{Description coming soon} 307 - 308 -Configure Angular Acceleration (**CAA**) 309 - 310 -Ex: 311 - 312 -{Description coming soon} 313 - 314 -__15. Angular Deceleration (**AD**)__ 315 - 316 -{More information coming soon} 317 - 318 -Ex: 319 - 320 -{Description coming soon} 321 - 322 -Query Angular Acceleration (**QAD**) 323 - 324 -Ex: 325 - 326 -{Description coming soon} 327 - 328 -Configure Angular Acceleration (**CAD**) 329 - 330 -Ex: 331 - 332 -{Description coming soon} 333 - 334 334 __16. RGB LED (**LED**)__ 335 335 336 336 Ex: #5LED3<cr> ... ... @@ -485,23 +485,30 @@ 485 485 486 486 This command does a "soft reset" (no power cycle required) and reverts all commands to those stored in EEPROM (i.e. configuration commands). 487 487 488 -**__DEFAULT__** 448 +**__DEFAULT __**__& **CONFIRM**__ 489 489 490 490 Ex: #5DEFAULT<cr> 491 491 492 -This command sets all values to the default values included with the version of the firmware installed on that servo. 452 +This command sets in motion the reset all values to the default values included with the version of the firmware installed on that servo. The servo then waits for the CONFIRM command. Any other command received will cause the servo to exit the DEFAULT function. 493 493 494 - __**FIRMWARE**&**CONFIRM**__454 +EX: #5DEFAULT<cr> followed by #5CONFIRM<cr> 495 495 496 - Ex:#5FIRMWARE<cr>456 +Since it it not common to have to restore all configurations, a confirmation command is needed after a firmware command is sent. Should any command other than CONFIRM be received by the servo after the firmware command has been received, it will leave the firmware action. 497 497 498 - This command clears all user-inputvaluesin EEPROM and reverts backtofactory defaults for thefirmware installed.It does notoverwriteany firmware updates. To revert toan older firmware version, pleaserefertothe LSS - Firmware page. The firmwarecommand alonedoes nothing otherthan have the servo waitfor aconfirmation.458 +Note that after the CONFIRM command is sent, the servo will automatically perform a RESET. 499 499 500 - EX: #5FIRMWARE<cr>followedby #5CONFIRM<cr>460 +**__UPDATE __**__& **CONFIRM**__ 501 501 502 - Sinceit it notcommon to have torestore all configurations, a confirmation command is needed after a firmware command is sent. Should any command other than CONFIRM be received by the servo after the firmware command has been received, it will leave the firmware action.462 +Ex: #5UPDATE<cr> 503 503 464 +This command sets in motion the equivalent of a long button press when the servo is not powered in order to enter firmware update mode. This is useful should the button be broken or inaccessible. The servo then waits for the CONFIRM command. Any other command received will cause the servo to exit the UPDATE function. 504 504 466 +EX: #5UPDATE<cr> followed by #5CONFIRM<cr> 467 + 468 +Since it it not common to have to update firmware, a confirmation command is needed after an UPDATE command is sent. Should any command other than CONFIRM be received by the servo after the firmware command has been received, it will leave the firmware action. 469 + 470 +Note that after the CONFIRM command is sent, the servo will automatically perform a RESET. 471 + 505 505 === Virtual Angular Position === 506 506 507 507 {In progress}