Skip to main content

CF Servo - Memory Table Explanation

1. Servo Memory Table Definition​

If a function address uses two bytes of data, the low byte is at the earlier address, and the high byte is at the later address.

1.1 Version Information​

Address DECAddress HEXFunction NameBytesInitial ValuePermissionValueUnitDescription
00x00Firmware major version number13Read-only---
10x01Firmware minor version number1-Read-only40 - 59--
20x02END10Read-only--0 indicates little-endian storage structure
30x03Servo major version number110Read-only---
40x04Servo minor version number1-Read-only---

1.2 EPROM Configuration​

Address DECAddress HEXFunctionBytesInitial ValuePermissionValueUnitDescription
50x05Primary ID11Read/write0 - 253NumberUnique primary ID identifier in the bus (first identifier)
60x06Baud rate10Read/write0 - 7None0 - 7 respectively represent baud rates: 1000000(0), 500000(1), 250000(2), 128000(3), 115200(4), 76800(5), 57600(6), 38400(7)
70x07Secondary ID10Read/write0 - 253NumberSecondary ID identifier (second identifier); the secondary ID only applies to write commands
80x08Response status level11Read/write0 - 1None0: except for read commands and the PING command, other commands do not return a response packet; 1: return a response packet for all commands
90x09Minimum angle limit20Read/write0 - 40940.087 degreeIn multi-turn absolute position control, this value is 0
110x0BMaximum angle limit24095Read/write1 - 40950.087 degreeIn multi-turn absolute position control, this value is 0
130x0DMaximum temperature upper limit170Read/write0 - 100°C-
140x0EMaximum input voltage1-Read/write0 - 2540.1V-
150x0FMinimum input voltage140Read/write0 - 2540.1V-
160x10Maximum torque2980Read/write0 - 10000.1%Assigned to address 48 torque limit at power-on
180x12Phase1-Read/write0 - 254NoneSpecial function byte; do not modify unless specifically required
190x13Unload condition1-Read/write0 - 254NoneSetting the corresponding bit to 1 enables the corresponding protection; setting the corresponding bit to 0 disables the corresponding protection
200x14LED alarm condition1-Read/write0 - 254NoneSetting the corresponding bit to 1 enables the flashing light alarm; setting the corresponding bit to 0 disables the flashing light alarm
210x15Position loop P proportional coefficient1-Read/write0 - 254NoneAssigned to address 50 Kp at power-on
220x16Position loop D derivative coefficient1-Read/write0 - 254NoneAssigned to address 51 Kd at power-on
230x17Position loop I integral coefficient10Read/write0 - 254NoneAssigned to address 52 Ki at power-on
240x18Minimum starting force1-Read/write0 - 2540.1%Set the servo's minimum output starting torque
250x19Integral limit value10Read/write0 - 254NoneMaximum integral value = integral limit value * 4; 0 indicates disabling the integral limit function; effective in position mode 0 and mode 4
260x1APositive dead zone11Read/write0 - 160.087 degreeThe minimum unit is one minimum resolution angle
270x1BNegative dead zone11Read/write0 - 160.087 degreeThe minimum unit is one minimum resolution angle
280x1CProtection current2-Read/write0 - 20476.5mAAssigned to address 44 target current at power-on
300x1EAngle resolution11Read/write1 - 128NoneAmplification factor for the sensor's minimum resolution angle
310x1FPosition offset20Read/write-4095 - 40950.087 degreeBIT15 indicates positive/negative direction; the other bits can represent a range of 0 - 4095
330x21Operating mode10Read/write0 - 3None0: position servo mode (position + current limiting); 1: motor constant speed mode (constant speed + current limiting); 2: motor constant current mode (current limiting, speed uncontrollable); 3: PWM open-loop speed control mode
340x22Current loop P proportional coefficient1-Read/write-None-
350x23Current loop I integral coefficient1-Read/write-None-
360x24Undefined1-Read/write---
370x25Speed closed-loop P proportional coefficient1-Read/write0 - 254NoneIn motor constant speed mode (mode 1), the speed loop proportional coefficient
380x26Overcurrent protection time1200Read/write0 - 25410msMaximum settable value 254 * 10ms = 2540ms
390x27Speed closed-loop I integral coefficient1-Read/write0 - 254NoneIn motor constant speed mode (mode 1), the speed loop integral coefficient

1.3 SRAM Control​

Address DECAddress HEXFunction NameBytesInitial ValuePermissionValueUnitDescription
400x28Torque switch10Read/write0 - 2NoneWrite 0: disable torque output; write 1: enable torque output; write 2: damping output
410x29Acceleration10Read/write0 - 2548.7 degree/s²Servo running acceleration/deceleration; 0 indicates maximum acceleration
420x2ATarget position20Read/write-32767 - 327670.087 degreeAbsolute position control method; the maximum corresponds to the maximum effective angle; BIT15 is the direction bit
440x2CTarget current2Protection current (28)Read/write-2047 - 20476.5mAExcept for mode 3, other modes can modify this value to control the output of the motor's maximum operating current; in constant current mode (mode 2), BIT15 is the current direction bit; in PWM open-loop speed control mode (mode 3), the write range is -1000 - 1000, and BIT10 is the direction bit
460x2ERunning speed2Servo factory default maximum speedRead/write-32767 - 327670.732 RPMControl the motor's maximum running speed; 0 indicates stopping; in constant speed mode (1), BIT15 is the speed direction bit
480x30Torque limit2Maximum torque (16)Read/write0 - 10000.1%Users can modify this value through programming to control the stall torque output
500x32Kp1Position loop P proportional coefficient (21)Read/write0 - 254NoneProportional coefficient controlling the motor position loop (1/8)
510x33Kd1Position loop D derivative coefficient (22)Read/write0 - 254NoneDerivative coefficient controlling the motor position loop (1/4)
520x34Ki1Position loop I integral coefficient (23)Read/write0 - 254NoneIntegral coefficient controlling the motor position loop
53 - 540x35 - 0x36Undefined1-Read/write---
550x37Lock flag11Read/write0 - 1NoneWrite 0 to disable the write lock, and values written to EPROM addresses are saved after power-off; write 1 to enable the write lock, and values written to EPROM addresses are not saved after power-off

1.4 SRAM Feedback​

Address DECAddress HEXFunction NameBytesInitial ValuePermissionValueUnitDescription
560x38Current position2-Read-only-0.087 degreeFeedback of the servo's current absolute position; BIT15 is the direction bit
580x3ACurrent speed2-Read-only-0.732 RPMFeedback of the current motor rotation speed; BIT15 is the direction bit
600x3CCurrent load2-Read-only-0.1%Current control output voltage duty cycle driving the motor; BIT10 is the direction bit
620x3ECurrent voltage1-Read-only-0.1VCurrent servo operating voltage
630x3FCurrent temperature1-Read-only-°CCurrent internal operating temperature of the servo
640x40Asynchronous write flag10Read-only-NoneFlag bit when using asynchronous write commands
650x41Servo status10Read-only-NoneSetting the corresponding bit to 1 indicates that the corresponding error has occurred; for details, refer to the special byte explanation
660x42Moving flag10Read-only-NoneBIT0: the flag is 1 when the servo is moving (greater than the moving speed threshold), and 0 when the servo stops; BIT1: the flag is 1 when the servo is moving, 0 when the servo reaches the target and stops, and remains 0 when the servo does not update the target position
670x43Target position2-Read-only-0.087 degreeCurrent target position
690x45Current current2-Read-only-6.5 mAFeedback of the current motor phase current
710x47Undefined2-Read-only---
730x49Current offset2-Read-only--Current 0-point offset value

2. Special Byte Explanation​

2.1 Servo Status​

Byte BitBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0
Bit Weight1286432168421
Address 65----Load status--Current statusTemperature statusMagnetic encoder statusVoltage status
 ----(0) Load normal--(0) Current normal(0) Temperature normal(0) Magnetic encoder normal(0) Voltage normal
----(1) Load overload--(1) Current overcurrent(1) Temperature overheating(1) Magnetic encoder abnormal(1) Overvoltage/undervoltage
info

If multiple statuses occur at the same time, the servo status value is the sum of the individual bit values. For example: overvoltage/undervoltage and servo overheating give a servo status value of 4+1=5.

2.2 LED Alarm Condition​

Byte BitBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0
Bit Weight1286432168421
Address 20--------Overcurrent alarmOverheating alarmMagnetic encoder alarmVoltage alarm
 --------(0) Disable overcurrent alarm(0) Disable overheating alarm(0) Disable magnetic encoder alarm(0) Disable voltage alarm
--------(1) Enable overcurrent alarm(1) Enable overheating alarm(1) Enable magnetic encoder alarm(1) Enable voltage alarm
info

If multiple bits are set at the same time, the servo's LED alarm condition value is the sum of the individual bit values. For example: enabling both the voltage alarm and the overheating alarm gives an alarm condition value of 4+1=5.

2.3 Unload Condition​

Byte BitBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0
Bit Weight1286432168421
Address 19--------Overcurrent protectionOverheating protectionMagnetic encoder protectionVoltage protection
 --------(0) Disable overcurrent protection(0) Disable overheating protection(0) Disable magnetic encoder protection(0) Disable voltage protection
--------(1) Enable overcurrent protection(1) Enable overheating protection(1) Enable magnetic encoder protection(1) Enable voltage protection
info

If multiple bits are set at the same time, the servo's unload condition value is the sum of the individual bit values. For example: enabling both the voltage protection and the overheating protection gives an unload condition value of 4+1=5.

2.4 Servo Phase​

Byte BitBIT7BIT6BIT5BIT4BIT3BIT2BIT1BIT0
Bit Weight1286432168421
Address 18Position feedback direction phasePWM frequencyDriver bridge configurationAngle feedback modeSpeed direction phase (firmware version <=3.41)Driver bridge direction phaseCurrent feedback direction phaseMagnetic encoder support (firmware version >=3.41)
(0) Forward(0) 24kHz(0) Independent H-bridge(0) Feedback single-turn angle(0) Forward(0) Forward(0) Forward(0) AS5600
(1) Reverse(1) 16kHz(1) Integrated H-bridge(1) Feedback full angle(1) Reverse(1) Reverse(1) Reverse(1) MT6701
info

If multiple bits are set at the same time, the servo's phase value is the sum of the individual bit values. For example: with the original phase value at 0 and the servo running in reverse, the phase value is 128+4+2=134.