Last modified by Eric Nantel on 2024/09/06 14:52

From version < 8.1 >
edited by Eric Nantel
on 2023/06/22 14:08
To version < 9.1 >
edited by Coleman Benson
on 2023/06/26 14:48
< >
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -xwiki:XWiki.ENantel
1 +xwiki:XWiki.CBenson
Content
... ... @@ -1,5 +1,6 @@
1 1  {{warningBox warningText="More information coming soon"/}}
2 2  
3 +
3 3  (% class="wikigeneratedid" id="HTableofContents" %)
4 4  **Page Contents**
5 5  
... ... @@ -10,3 +10,20 @@
10 10  The Lynxmotion Smart Servo (LSS) serial protocol was created in order to be as simple and straightforward as possible from a user perspective ("human readable format"), while at the same time staying compact and robust yet highly versatile. The protocol was based on Lynxmotion's SSC-32 & SSC-32U RC servo controllers and almost everything one might expect to be able to configure for a smart servomotor is available.
11 11  
12 12  In order to be able to control each servo individually with commands, the first step should be to assign a different ID number to each servo (see details on the Configure ID, or "CID" command [[here>>doc:||anchor="HIdentificationNumber28ID29"]]). Only the servo(s) which have been configured to a specific ID will act on a command sent to that ID. There is currently no CRC or checksum implemented as part of the protocol.
14 +
15 += Action Commands =
16 +
17 +<div class="cmdcnt"><div class="cmdpad"></div><div class="cmdtxt">
18 +Action commands tell the servo, within that session, to do something (i.e. "take an action"). The types of action commands which can be sent are described below, and they cannot be combined with other commands such as queries or configurations. Only one action command can be sent at a time. Action commands are session-specific, therefore once a servo is power cycled, it will not have any "memory" of previous actions or ~[~[virtual positions>>||anchor="HVirtualAngularPosition"]] (described below). Action commands are sent serially to the servo's Rx pin and must be sent in the following format:<div class="wikimodel-emptyline"></div>
19 +
20 +~1. Start with a number sign ~*~*#~*~* (Unicode Character: U+0023) 
21 +~1. Servo ID number as an integer (assigning an ID described below)
22 +~1. Action command (one or more letters, no whitespace, capital or lowercase from the list below)
23 +~1. Action value in the correct units with no decimal
24 +~1. End with a carriage return ~*~*&#92;r~*~* or ~*~*&lt;cr&gt;~*~* Unicode Character (U+000D)
25 +
26 +~(~(~(
27 +Ex: #5D1800&lt;cr&gt;<div class="wikimodel-emptyline"></div>
28 +
29 +This sends a serial command to all servo's RX pins which are connected to the bus and only servo(s) with ID #5 will move to a position (1800 in tenths of degrees) of 180.0 degrees. Any servo on the bus which does not have ID 5 will take no action when receiving this command.
30 +<div class="wikimodel-emptyline"></div></div></div>
Copyright RobotShop 2018