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)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -xwiki:XWiki. RB11 +xwiki:XWiki.CBenson - Content
-
... ... @@ -3,7 +3,7 @@ 3 3 4 4 {{toc depth="3"/}} 5 5 6 -= Serial Protocol = 6 += Serial Protocol Concept = 7 7 8 8 The custom 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 compact and robust yet highly versatile. The protocol was based on Lynxmotion's SSC-32 RC servo controller and almost everything one might expect to be able to configure for a smart servo motor is available. 9 9 ... ... @@ -13,9 +13,7 @@ 13 13 14 14 A "session" is defined as the time between when the servo is powered ON to when it is powered OFF or reset. 15 15 16 -Note #1: For a given session, the action related to a specific commands overrides the stored value in EEPROM. 17 -Note #2: During the power-on / reset process the LSS cannot accept commands for a small amount of time (1.25 s). 18 -You can ensure the LSS is ready by using a query command to check for response (ex: #[id]Q\r or #[id]QID\r). If the LSS is ready for commands (initialized) it will respond to the query. A timeout between 50-100 ms is recommended. 16 +Note that for a given session, the action related to a specific commands overrides the stored value in EEPROM. 19 19 20 20 == Action Commands == 21 21 ... ... @@ -132,73 +132,71 @@ 132 132 133 133 == Regular == 134 134 135 -|= #|=Description|= Mod|=Action|= Query|= Config|=Session|= RC|= Serial|= Units|=(% style="width: 510px;" %) Notes|=(% style="width: 113px;" %)Default Value136 -| 1|[[**L**imp>>||anchor="H1.Limp28L29"]]| |L| | | | | ✓|none|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)137 -| 2|[[**H**alt & **H**old>>||anchor="H2.Halt26Hold28H29"]]| |H| | | | | ✓|none|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)138 -| 3|[[**T**imed move>>||anchor="H3.Timedmove28T29modifier"]]|T| | | | | |. Time is estimated and can change based on load|(% style="text-align:center; width:113px" %)139 -| 4|[[**S**peed>>||anchor="H4.Speed28S29modifier"]]|S| |QS| | | | ✓|microseconds per second|(% style="width:510px" %) Modifier only {P}|(% style="text-align:center; width:113px" %)140 -| 5|[[**M**ove in **D**egrees (relative)>>||anchor="H5.28Relative29MoveinDegrees28MD29"]]| |MD| | | | | ✓|tenths of degrees (ex 325 = 32.5 degrees)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)141 -| 6|[[**O**rigin Offset>>||anchor="H6.OriginOffsetAction28O29"]]| |O| QO|CO|✓| ✓| ✓|tenths of degrees (ex 91 = 9.1 degrees)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)(((133 +|= #|=Description|= Action|= Query|= Config|=Session|= RC|= Serial|= Units|=(% style="width: 510px;" %) Notes|=(% style="width: 113px;" %)Default Value 134 +| 1|[[**L**imp>>||anchor="H1.Limp28L29"]]| L| | | | | ✓|none|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 135 +| 2|[[**H**alt & **H**old>>||anchor="H2.Halt26Hold28H29"]]| H| | | | | ✓|none|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 136 +| 3|[[**T**imed move>>||anchor="H3.Timedmove28T29modifier"]]| T| | | | | ✓|milliseconds|(% style="width:510px" %) Modifier only for {P, D, MD}|(% style="text-align:center; width:113px" %) 137 +| 4|[[**S**peed>>||anchor="H4.Speed28S29modifier"]]| S|QS| | | | ✓|microseconds per second|(% style="width:510px" %) Modifier only {P}|(% style="text-align:center; width:113px" %) 138 +| 5|[[**M**ove in **D**egrees (relative)>>||anchor="H5.28Relative29MoveinDegrees28MD29"]]| MD| | | | | ✓|tenths of degrees (ex 325 = 32.5 degrees)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 139 +| 6|[[**O**rigin Offset>>||anchor="H6.OriginOffsetAction28O29"]]| O| QO|CO|✓| ✓| ✓|tenths of degrees (ex 91 = 9.1 degrees)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)((( 142 142 0 143 143 ))) 144 -| 7|[[**A**ngular **R**ange>>||anchor="H7.AngularRange28AR29"]]| |AR| QAR| CAR|✓| ✓| ✓|tenths of degrees |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)(((142 +| 7|[[**A**ngular **R**ange>>||anchor="H7.AngularRange28AR29"]]| AR| QAR| CAR|✓| ✓| ✓|tenths of degrees |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)((( 145 145 1800 146 146 ))) 147 -| 8|[[Position in **P**ulse>>||anchor="H8.PositioninPulse28P29"]]| |P| QP| | | | ✓|microseconds|(% style="width:510px" %)(((145 +| 8|[[Position in **P**ulse>>||anchor="H8.PositioninPulse28P29"]]| P| QP| | | | ✓|microseconds|(% style="width:510px" %)((( 148 148 Inherited from SSC-32 serial protocol 149 149 )))|(% style="text-align:center; width:113px" %) 150 -| 9|[[Position in **D**egrees>>||anchor="H9.PositioninDegrees28D29"]]| |D| QD / QDT| | | | ✓|tenths of degrees |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)151 -| 10|[[**W**heel mode in **D**egrees>>||anchor="H10.WheelModeinDegrees28WD29"]]| |WD| QWD| | | | ✓|tenths of degrees per second (ex 248 = 24.8 degrees per second)|(% style="width:510px" %)A.K.A. "Speed mode" or "Continuous rotation"|(% style="text-align:center; width:113px" %)152 -| 11|[[**W**heel mode in **R**PM>>||anchor="H11.WheelModeinRPM28WR29"]]| |WR| QWR| | | | ✓|revolutions per minute (rpm)|(% style="width:510px" %)A.K.A. "Speed mode" or "Continuous rotation"|(% style="text-align:center; width:113px" %)153 -| 12|[[Max **S**peed in **D**egrees>>||anchor="H12.MaxSpeedinDegrees28SD29"]]| |SD| QSD|CSD|✓| ✓| ✓|degrees per second (°/s)|(% style="width:510px" %)(((148 +| 9|[[Position in **D**egrees>>||anchor="H9.PositioninDegrees28D29"]]| D| QD / QDT| | | | ✓|tenths of degrees |(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 149 +| 10|[[**W**heel mode in **D**egrees>>||anchor="H10.WheelModeinDegrees28WD29"]]| WD| QWD| | | | ✓|tenths of degrees per second (ex 248 = 24.8 degrees per second)|(% style="width:510px" %)A.K.A. "Speed mode" or "Continuous rotation"|(% style="text-align:center; width:113px" %) 150 +| 11|[[**W**heel mode in **R**PM>>||anchor="H11.WheelModeinRPM28WR29"]]| WR| QWR| | | | ✓|revolutions per minute (rpm)|(% style="width:510px" %)A.K.A. "Speed mode" or "Continuous rotation"|(% style="text-align:center; width:113px" %) 151 +| 12|[[Max **S**peed in **D**egrees>>||anchor="H12.MaxSpeedinDegrees28SD29"]]| SD| QSD|CSD|✓| ✓| ✓|degrees per second (°/s)|(% style="width:510px" %)((( 154 154 QSD: Add modifier "2" for instantaneous speed. 155 155 156 156 SD overwrites SR / CSD overwrites CSR and vice-versa. 157 157 )))|(% style="text-align:center; width:113px" %)Max per servo 158 -| 13|[[Max **S**peed in **R**PM>>||anchor="H13.MaxSpeedinRPM28SR29"]]| |SR| QSR|CSR|✓| ✓| ✓|revolutions per minute (rpm)|(% style="width:510px" %)(((156 +| 13|[[Max **S**peed in **R**PM>>||anchor="H13.MaxSpeedinRPM28SR29"]]| SR| QSR|CSR|✓| ✓| ✓|revolutions per minute (rpm)|(% style="width:510px" %)((( 159 159 QSR: Add modifier "2" for instantaneous speed 160 160 161 161 SR overwrites SD / CSR overwrites CSD and vice-versa. 162 162 )))|(% style="text-align:center; width:113px" %)Max per servo 163 -| 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)164 -| 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" %)1165 -| 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" %)0166 -| 17|[[**B**aud rate>>||anchor="H17.BaudRate"]]| | |QB| CB| | | ✓|none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)115200167 -| 18|//{coming soon}//| | | | | | | | |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)(((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" %)0 (OFF) 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 +| 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" %)115200 165 +| 18|//{coming soon}//| | | | | | | |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)((( 168 168 169 169 ))) 170 -| 19|[[**F**irst Position (**D**eg)>>||anchor="H19.FirstA0Position28Degrees29"]]| | |QFD|CFD|X| ✓| ✓|none |(% style="width:510px" %) |(% style="text-align:center; width:113px" %)No Value171 -| 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" %)172 -| 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" %)173 -| 22|[[**F**irmware version>>||anchor="H22.QueryFirmware28QF29"]]| | |QF| | | | |none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)174 -| 23|[[**Q**uery (gen. status)>>||anchor="H23.QueryStatus28Q29"]]| | |Q| | | | ✓|none (integer from 1 to 8)|(% style="width:510px" %) See command description for details|(% style="text-align:center; width:113px" %)175 -| 24|[[**V**oltage>>||anchor="H24.QueryVoltage28QV29"]]| | |QV| | | | ✓|millivolts (ex 5936 = 5936mV = 5.936V)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)176 -| 25|[[**T**emperature>>||anchor="H25.QueryTemperature28QT29"]]| | |QT| | | | ✓|tenths of degrees Celsius|(% style="width:510px" %)Max temp before error: 85°C (servo goes limp)|(% style="text-align:center; width:113px" %)177 -| 26|[[**C**urrent>>||anchor="H26.QueryCurrent28QC29"]]| | |QC| | | | ✓|milliamps (ex 200 = 0.2A)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %)178 -| 27|[[**C**hange to** RC**>>||anchor="H27.ConfigureRCMode28CRC29"]]| | | |CRC|✓| | ✓|none|(% style="width:510px" %)(((168 +| 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 +| 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 +| 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 +| 22|[[**F**irmware version>>||anchor="H22.QueryFirmware28QF29"]]| | QF| | | | |none (integer)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 172 +| 23|[[**Q**uery (gen. status)>>||anchor="H23.QueryStatus28Q29"]]| | Q| | | | ✓|none (integer from 1 to 8)|(% style="width:510px" %) See command description for details|(% style="text-align:center; width:113px" %) 173 +| 24|[[**V**oltage>>||anchor="H24.QueryVoltage28QV29"]]| | QV| | | | ✓|millivolts (ex 5936 = 5936mV = 5.936V)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 174 +| 25|[[**T**emperature>>||anchor="H25.QueryTemperature28QT29"]]| | QT| | | | ✓|tenths of degrees Celsius|(% style="width:510px" %)Max temp before error: 85°C (servo goes limp)|(% style="text-align:center; width:113px" %) 175 +| 26|[[**C**urrent>>||anchor="H26.QueryCurrent28QC29"]]| | QC| | | | ✓|milliamps (ex 200 = 0.2A)|(% style="width:510px" %) |(% style="text-align:center; width:113px" %) 176 +| 27|[[**C**hange to** RC**>>||anchor="H27.ConfigureRCMode28CRC29"]]| | |CRC|✓| | ✓|none|(% style="width:510px" %)((( 179 179 Change to RC mode 1 (position) or 2 (wheel). 180 180 )))|(% style="text-align:center; width:113px" %)Serial 181 -| 28|[[**RESET**>>||anchor="H28.RESET"]]| | | | | | |✓|none|(% style="width:510px" %)Soft reset. See command for details.|(% style="text-align:center; width:113px" %)182 -| 29|[[**DEFAULT**>>||anchor="H29.DEFAULTA026CONFIRM"]]| | | | | | |✓|none|(% style="width:510px" %)Revert to firmware default values. See command for details|(% style="text-align:center; width:113px" %)183 -| 30|[[**UPDATE**>>||anchor="H30.UPDATEA026CONFIRM"]]| | | | | | |✓|none|(% style="width:510px" %)Update firmware. See command for details.|(% style="text-align:center; width:113px" %)179 +| 28|[[**RESET**>>||anchor="H28.RESET"]]| | | | | | ✓|none|(% style="width:510px" %)Soft reset. See command for details.|(% style="text-align:center; width:113px" %) 180 +| 29|[[**DEFAULT**>>||anchor="H29.DEFAULTA026CONFIRM"]]| | | | | |✓|none|(% style="width:510px" %)Revert to firmware default values. See command for details|(% style="text-align:center; width:113px" %) 181 +| 30|[[**UPDATE**>>||anchor="H30.UPDATEA026CONFIRM"]]| | | | | |✓|none|(% style="width:510px" %)Update firmware. See command for details.|(% style="text-align:center; width:113px" %) 184 184 185 185 == Advanced == 186 186 187 -|= #|= (% style="width: 182px;" %)Description|=(%style="width: 56px;" %)Mod|=(% style="width: 70px;" %)Action|=(%style="width: 71px;" %)Query|=(%style="width: 77px;" %)Config|=(% style="width: 77px;" %)Session|=(%style="width: 56px;" %)RC|=(%style="width: 151px;" %)Serial|= Units|=(% style="width: 510px;" %) Notes188 -| A1| (% style="width:182px" %)[[**A**ngular **S**tiffness>>||anchor="HA1.AngularStiffness28AS29"]]|(% style="width:56px" %) |(% style="width:70px" %)AS|(% style="width:71px" %)QAS|(% style="width:77px" %)CAS|(% style="width:77px" %)✓|(%style="width:56px" %)✓|(%style="width:151px" %)✓|none (integer -4 to +4)|(% style="width:510px" %)Suggested values are between 0 to +4189 -| A2| (% style="width:182px" %)[[**A**ngular **H**olding Stiffness>>||anchor="HA2.AngularHoldingStiffness28AH29"]]|(% style="width:56px" %) |(% style="width:70px" %)AH|(% style="width:71px" %)QAH|(% style="width:77px" %)CAH|(% style="width:77px" %)✓|(%style="width:56px" %)|(%style="width:151px" %)✓|none (integer -10 to +10)|(% style="width:510px" %)Effect is different between serial and RC190 -| A3| (% style="width:182px" %)[[**A**ngular **A**cceleration>>||anchor="HA3:AngularAcceleration28AA29"]]|(% style="width:56px" %) |(% style="width:70px" %)AA|(% style="width:71px" %)QAA|(% style="width:77px" %)CAA|(% style="width:77px" %)✓|(%style="width:56px" %)|(%style="width:151px" %)✓|degrees per second squared|(% style="width:510px" %)Increments of 10 degrees per second squared191 -| A4| (% style="width:182px" %)[[**A**ngular **D**eceleration>>||anchor="HA4:AngularDeceleration28AD29"]]|(% style="width:56px" %) |(% style="width:70px" %)AD|(% style="width:71px" %)QAD|(% style="width:77px" %)CAD|(% style="width:77px" %)✓|(%style="width:56px" %)|(%style="width:151px" %)✓|degrees per second squared|(% style="width:510px" %)Increments of 10 degrees per second squared192 -| A5| (% style="width:182px" %)[[**E**nable **M**otion Control>>||anchor="HA5:MotionControl28EM29"]]|(% style="width:56px" %) |(% style="width:70px" %)EM|(% style="width:71px" %)QEM|(%style="width:77px" %)|(%style="width:77px" %)|(%style="width:56px" %)|(%style="width:151px" %)✓|none|(% style="width:510px" %)EM0 to disable motion control, EM1 to enable193 -| A6| (% style="width:182px" %)[[**C**onfigure **L**ED **B**linking>>||anchor="HA6.ConfigureLEDBlinking28CLB29"]]|(%style="width:56px" %)|(% style="width:70px" %) |(% style="width:71px" %)QLB|(%style="width:77px" %)CLB|(%style="width:77px" %)|(%style="width:56px" %)✓|(%style="width:151px" %)✓|none (integer from 0 to 63)|(% style="width:510px" %)(((185 +|= #|=Description|= Action|= Query|= Config|=Session|= RC|= Serial|= Units|=(% style="width: 510px;" %) Notes 186 +| A1|[[**A**ngular **S**tiffness>>||anchor="HA1.AngularStiffness28AS29"]]|AS|QAS|CAS|✓| ✓| ✓|none (integer -4 to +4)|(% style="width:510px" %)Suggested values are between 0 to +4 187 +| A2|[[**A**ngular **H**olding Stiffness>>||anchor="HA2.AngularHoldingStiffness28AH29"]]|AH|QAH|CAH|✓| | ✓|none (integer -10 to +10)|(% style="width:510px" %)Effect is different between serial and RC 188 +| A3|[[**A**ngular **A**cceleration>>||anchor="HA3:AngularAcceleration28AA29"]]|AA|QAA|CAA|✓| | ✓|degrees per second squared|(% style="width:510px" %)Increments of 10 degrees per second squared 189 +| A4|[[**A**ngular **D**eceleration>>||anchor="HA4:AngularDeceleration28AD29"]]|AD|QAD|CAD|✓| | ✓|degrees per second squared|(% style="width:510px" %)Increments of 10 degrees per second squared 190 +| A5|[[**E**nable **M**otion Control>>||anchor="HA5:MotionControl28EM29"]]|EM|QEM| | | | ✓|none|(% style="width:510px" %)EM0 to disable motion control, EM1 to enable 191 +| A6|[[**C**onfigure **L**ED **B**linking>>||anchor="HA6.ConfigureLEDBlinking28CLB29"]]| |QLB| CLB| | ✓| ✓|none (integer from 0 to 63)|(% style="width:510px" %)((( 194 194 0=No blinking, 63=Always blink; 195 195 196 196 Blink while: 1=Limp; 2=Holding; 4=Accel; 8=Decel; 16=Free 32=Travel; 197 197 ))) 198 -| A7|(% style="width:182px" %)[[**C**urrent **H**alt & **H**old>>||anchor="HA7.CurrentHalt26Hold28CH29"]]|(% style="width:56px" %)CH|(% style="width:70px" %) |(% style="width:71px" %) |(% style="width:77px" %) |(% style="width:77px" %)✓|(% style="width:56px" %) |(% style="width:151px" %)✓|milliamps (ex 400 = 0.4A)|(% style="width:510px" %)Modifier for D, MD, WD, WR 199 -| A8|(% style="width:182px" %)[[**C**urrent **L**imp>>||anchor="HA8.CurrentLimp28CL29"]]|(% style="width:56px" %)CL|(% style="width:70px" %) |(% style="width:71px" %) |(% style="width:77px" %) |(% style="width:77px" %)✓|(% style="width:56px" %) |(% style="width:151px" %)✓|milliamps (ex 400 = 0.4A)|(% style="width:510px" %)Modifier for D, MD, WD, WR 200 200 201 -== Details - Basic==197 +== Details == 202 202 203 203 ====== __1. Limp (**L**)__ ====== 204 204 ... ... @@ -472,7 +472,7 @@ 472 472 473 473 ====== __19. First Position (Degrees)__ ====== 474 474 475 -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. Note that the number should be restricted to -1790 (-179.0 degrees) to +1790 (179.0 degrees) and values beyond this will be changed to 1800.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. 476 476 477 477 Query First Position in Degrees (**QFD**) 478 478 ... ... @@ -574,7 +574,6 @@ 574 574 Ex: #5RESET<cr> or #5RS<cr> 575 575 576 576 This command does a "soft reset" (no power cycle required) and reverts all commands to those stored in EEPROM (i.e. configuration commands). 577 -Note: after a RESET command is received the LSS will restart and perform initilization again, making it unavailable on the bus for a bit. See (), note #2 for more details. 578 578 579 579 ====== __29. **DEFAULT** & CONFIRM__ ====== 580 580 ... ... @@ -600,7 +600,7 @@ 600 600 601 601 Note that after the CONFIRM command is sent, the servo will automatically perform a RESET. 602 602 603 -= =Details -Advanced ==598 += Advanced = 604 604 605 605 The motion controller used in serial mode is not the same as the motion controller use in RC mode. RC mode is intended to add functionality to what would be considered "normal" RC behavior based on PWM input. 606 606 ... ... @@ -711,25 +711,3 @@ 711 711 Ex: #5CLB63<cr> blink in all status (1 + 2 + 4 + 8 + 16 + 32) 712 712 713 713 RESETTING the servo is needed. 714 - 715 -====== __A7. Current Halt & Hold (**CH**)__ ====== 716 - 717 -This modifier, released in firmware v367, can be added to the following actions: D; MD; WD; WR. 718 - 719 -Ex: #5D1423CH400<cr> 720 - 721 -This has servo with ID 5 move to 142.3 degrees but, should it detect a current of 400mA or higher before it reaches the desired position, will immediately halt and hold position. 722 - 723 -====== __A8. Current Limp (**CL**)__ ====== 724 - 725 -This modifier, released in firmware v367, can be added to the following actions: D; MD; WD; WR. 726 - 727 -Ex: #5D1423CH400<cr> 728 - 729 -This has servo with ID 5 move to 142.3 degrees but, should it detect a current of 400mA or higher before it reaches the desired position, will immediately go limp. 730 - 731 -= RGB LED Patterns = 732 - 733 -The LED patterns below do not include those which are part of the button menu, which can be found here: [[LSS Button Menu>>doc:lynxmotion-smart-servo.lss-button-menu.WebHome]] 734 - 735 -[[image:LSS - LED Patterns.png]]
- LSS - LED Patterns.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -xwiki:XWiki.RB1 - Size
-
... ... @@ -1,1 +1,0 @@ 1 -116.3 KB - Content