Changes for page LSS Communication Protocol
Last modified by Eric Nantel on 2024/11/21 09:43
Change comment: There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -158,14 +158,14 @@ 158 158 159 159 SR overwrites SD / CSR overwrites CSD and vice-versa. 160 160 )))|(% style="text-align:center; width:113px" %)Max per servo 161 -| 14|[[**LED** Color>>||anchor="H14.LEDColor28LED29"]]| LED| QLED| CLED|✓| ✓| ✓|none (integer from 0 to 8)|(% style="width:510px" %)0=Off (black); 1=Red 2=Green; 3=Blue; 4=Yellow; 5=Cyan; 6=Magenta; 7=White;|(% style="text-align:center; width:113px" %) 7161 +| 14|[[**LED** Color>>||anchor="H14.LEDColor28LED29"]]| LED| QLED| CLED|✓| ✓| ✓|none (integer from 0 to 8)|(% style="width:510px" %)0=Off (black); 1=Red 2=Green; 3=Blue; 4=Yellow; 5=Cyan; 6=Magenta; 7=White;|(% style="text-align:center; width:113px" %)0 (OFF) 162 162 | 15|[[**G**yre direction (**G**)>>||anchor="H15.GyreRotationDirection28G29"]]| G| QG| CG|✓| ✓| ✓|none |(% style="width:510px" %)Gyre / rotation direction: 1= CW (clockwise) -1 = CCW (counter-clockwise)|(% style="text-align:center; width:113px" %)1 163 163 | 16|[[**ID** #>>||anchor="H16.IdentificationNumber28ID29"]]| | QID| CID| | | ✓|none (integer from 0 to 250)|(% style="width:510px" %)Note: ID 254 is a "broadcast" which all servos respond to. |(% style="text-align:center; width:113px" %)0 164 -| 17|[[**B**aud rate>>||anchor="H17.BaudRate"]]| | QB| CB| | | ✓|none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 9600164 +| 17|[[**B**aud rate>>||anchor="H17.BaudRate"]]| | QB| CB| | | ✓|none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)115200 165 165 | 18|//{coming soon}//| | | | | | | |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)((( 166 166 167 167 ))) 168 -| 19|[[**F**irst Position (**D**eg)>>||anchor="H19.FirstPosition28Degrees2 928FD29"]]| | QFD|CFD|X| ✓| ✓|none |(% style="width:510px" %)CFDoverwrites CFP and vice-versa|(% style="text-align:center; width:113px" %)Limp168 +| 19|[[**F**irst Position (**D**eg)>>||anchor="H19.FirstA0Position28Degrees28G29"]]| | QFD|CFD|X| ✓| ✓|none |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)No Value 169 169 | 20|[[**M**odel **S**tring>>||anchor="H20.QueryModelString28QMS29"]]| | QMS| | | | |none (string)|(% style="width:510px" %) Returns the type of servo (ST, HS, HT)|(% style="text-align:center; width:113px" %) 170 170 | 21|[[Serial **N**umber>>||anchor="H21.QuerySerialNumber28QN29"]]| | QN| | | | |none (integer)|(% style="width:510px" %) Returns the unique serial number for that servo|(% style="text-align:center; width:113px" %) 171 171 | 22|[[**F**irmware version>>||anchor="H22.QueryFirmware28QF29"]]| | QF| | | | |none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) ... ... @@ -222,6 +222,12 @@ 222 222 223 223 This command is a modifier only for a position (P) action and determines the speed of the move in microseconds per second. A speed of 750 microseconds would cause the servo to rotate from its current position to the desired position at a speed of 750 microseconds per second. This command is in place to ensure backwards compatibility with the SSC-32 / 32U protocol. 224 224 225 +Query Speed (**QS**) 226 + 227 +Example: #5QS<cr> might return *5QS300<cr> 228 + 229 +This command queries the current speed in microseconds per second. 230 + 225 225 ====== __5. (Relative) Move in Degrees (**MD**)__ ====== 226 226 227 227 Example: #5MD123<cr> ... ... @@ -291,7 +291,7 @@ 291 291 292 292 ====== __9. Position in Degrees (**D**)__ ====== 293 293 294 -Example: #5 PD1456<cr>300 +Example: #5D1456<cr> 295 295 296 296 This moves the servo to an angle of 145.6 degrees, where the center (0) position is centered. Negative values (ex. -176 representing -17.6 degrees) are used. A full circle would be from -1800 to 1800 degrees. A value of 2700 would be the same angle as -900, except the servo would move in a different direction. 297 297 ... ... @@ -390,7 +390,7 @@ 390 390 391 391 This action sets the servo's RGB LED color for that session.The LED can be used for aesthetics, or (based on user code) to provide visual status updates. Using timing can create patterns. 392 392 393 -0=O FF1=RED2=GREEN3=LUE4=YELLOW5=CYAN6= 7=MAGENTA, 8=WHITE399 +0=Off (black); 1=Red 2=Green; 3=Blue; 4=Yellow; 5=Cyan; 6=Magenta; 7=White; 394 394 395 395 Query LED Color (**QLED**) 396 396 ... ... @@ -440,7 +440,7 @@ 440 440 441 441 ====== __17. Baud Rate__ ====== 442 442 443 -A servo's baud rate cannot be set "on the fly" and must be configured via the CB command described below. The factory default baud rate for all servos is 9600. Since smart servos are intended to be daisy chained, in order to respond to the same serial bus, all servos in a project should ideally be set to the same baud rate. Setting different baud rates will have the servos respond differently and may create issues. Available baud rates are: 9600 bps, 19200 bps, 38400 bps, 57600 bps, 115.2 kbps, 230.4 kbps, 250.0 kbps, 460.8 kbps, 500.0 kbps. Servos are shipped with a baud rate set to 9600. The baud rates are currently restricted to those above.449 +A servo's baud rate cannot be set "on the fly" and must be configured via the CB command described below. The factory default baud rate for all servos is 115200. Since smart servos are intended to be daisy chained, in order to respond to the same serial bus, all servos in a project should ideally be set to the same baud rate. Setting different baud rates will have the servos respond differently and may create issues. Available baud rates are: 9600 bps, 19200 bps, 38400 bps, 57600 bps, 115.2 kbps, 230.4 kbps, 250.0 kbps, 460.8 kbps, 500.0 kbps. Servos are shipped with a baud rate set to 9600. The baud rates are currently restricted to those above. 444 444 445 445 Query Baud Rate (**QB**) 446 446 ... ... @@ -460,21 +460,21 @@ 460 460 461 461 Command coming soon.... 462 462 463 -====== __19. First Position (Degrees) (**FD**)__ ======469 +====== __19. First Position (Degrees)__ ====== 464 464 465 -In certain cases, a user might want to have the servo move to a specific angle upon power up; we refer to this as "first position" (a.k.a. "initial position"). The factory default has no first position value stored in EEPROM and therefore upon power up, the servo remains limp until a position (or hold command) is assigned. FP and FD are different in that FP is used for RC mode only, whereas FD is used for smart mode only.471 +In certain cases, a user might want to have the servo move to a specific angle upon power up; we refer to this as "first position" (a.k.a. "initial position"). The factory default has no first position value stored in EEPROM and therefore upon power up, the servo remains limp until a position (or hold command) is assigned. 466 466 467 467 Query First Position in Degrees (**QFD**) 468 468 469 469 Ex: #5QFD<cr> might return *5QFD64<cr> 470 470 471 -The reply above indicates that servo with ID 5 has a first position pulse of 1550 microseconds. 477 +The reply above indicates that servo with ID 5 has a first position pulse of 1550 microseconds. If there is no first position value stored, the reply will be DIS 472 472 473 473 Configure First Position in Degrees (**CFD**) 474 474 475 475 Ex: #5CD64<cr> 476 476 477 -This configuration command means the servo, when set to smart mode, will immediately move to 6.4 degrees upon power up. Sending a CFD command without a number (Ex. #5CFD<cr>) results in the servo remaining limp upon power up. 483 +This configuration command means the servo, when set to smart mode, will immediately move to 6.4 degrees upon power up. Sending a CFD command without a number (Ex. #5CFD<cr>) results in the servo remaining limp upon power up. In order to remove the first position, send no value, ex: #5CFD<cr> 478 478 479 479 ====== __20. Query Model String (**QMS**)__ ====== 480 480