MBMap Registry
  1. Devices
  2. Bosch Rexroth
  3. Smart Flex Effector

Bosch Rexroth Smart Flex Effector Modbus register map

Also covers SFE

Smart Flex Effector with pose and acceleration readout and a motor lock, over Modbus RTU

  • Official
  • 74 registers
  • Modbus RTU
  • Revision 1 · 2026-10-18

Official: Written from the manufacturer's documentation, but not tested on a device yet. Check the map against the manufacturer's documentation before you write to a live device. Tested it? Report a test.

Communication

Protocol
Modbus RTU
Unit ID
1
Serial
9600 8E1 · 9600 baud, 8 data bits, even parity, 1 stop bit defaults
Byte / word order
ABCD · bytes big-endian, words high first
Addresses
0-based

Connection values are defaults: the device may be configured differently.

Map

Registers
50 holding registers, 24 input registers
Groups
9
Translation tables
12
Revision
1 · 2026-10-18
Added
()
File
maps/bosch-rexroth/smart-flex-effector.mbmap.json · 18 KB · history
SHA-256
98c2c2132034737847e0f50d694c4f712f0a116f8e185577a06aed0ce4808f8e
Manufacturer
boschrexroth.com

Sources and notes

Source: Bosch Rexroth Smart Flex Effector Modbus Documentation, firmware version 1.41.0 (updated 2023-05-24)

  • Input registers are read-only (function 04); holding registers are read and write (function 03, 06, 16, 23); write-only holding registers are actions that do something when 1 is written. Function 20 (read file record, for the error log and logger data) and function 43 (read device identification) are not register reads and are not mapped.
  • Multi-register values are big-endian with the high word first (UINT32 2974880010 is [45393, 4362]); floats are IEEE 754 in two registers. The manual shows 'BOOL' registers as 0 or 1.
  • The device identification (function 43) objects are: 0 vendor name, 1 serial number, 2 firmware version, 3 vendor URL, 4 product name, 5 model name, 128 bootloader version.
  • Writes can be refused without a Modbus exception: the cause (wrong mode, storage protection against frequent EEPROM writes, invalid value, processing error) is then in 'Last command status' (input 51). A rejected value also discards the other registers of the same Write Multiple Registers frame.
  • Only quality threshold set 0 is listed; there are ten sets of 12 floats (24 registers) from 1010 to 1249. The 36 RGB LED registers at 1262 to 1369 (3 per LED) and the logger data and error log records are described in the manual.
  • The manual gives no factory serial format (data bits, parity, stop bits) or default address and baud rate; baud rates 9600, 38400, 115200 and 921600 are accepted. Set the connection to match the device. The motor timeout and velocity units are not stated in the manual.
  • The documentation is for firmware 1.41.0. The Modbus RTU interface only answers when 'Protocol mode' is MODBUS; the device also speaks a text protocol.
AreaAddressNameTypeAccessUnitScaleDescription
IR 0 float32 ABCD R mm Deflection of the adapter plate
IR 2 float32 ABCD R mm Deflection of the adapter plate
IR 4 float32 ABCD R mm Deflection of the adapter plate
IR 6 float32 ABCD R ° Rotation of the adapter plate
IR 8 float32 ABCD R ° Rotation of the adapter plate
IR 10 float32 ABCD R ° Rotation of the adapter plate
IR 12 uint16 R ms Time needed to calculate the deflection
IR 13 uint16 R
IR 26 uint16 R
IR 27 float32 ABCD R g 1 g = 9.81 m/s2
IR 29 float32 ABCD R g 1 g = 9.81 m/s2
IR 31 float32 ABCD R g 1 g = 9.81 m/s2
IR 33 float32 ABCD R g Corrected by the acceleration due to gravity
IR 35 uint16 R Pose values within the quality thresholds (quality mode on)
IR 36 uint16 R
IR 37 uint64 ABCD R ms Based on the system up time
IR 41 uint16 R Number of records in the logger data
IR 42 uint64 ABCD R ms
IR 46 float32 ABCD R °C
IR 48 uint32 ABCD R Total lock/unlock operations
IR 50 uint16 R 0 to 100 errors in the error log
IR 51 uint16 R
IR 4000 uint32 ABCD R
IR 4002 float32 ABCD R m Total distance moved by deflection
HR 1000 uint16 RW Read Motor current lock state to check that it was reached
HR 1001 uint16 RW Non-persistent; used while the temporary flag is set; changing it recalculates the temporary timeout
HR 1002 uint16 RW
HR 1003 uint16 RW Non-persistent lock/unlock timeout used while the temporary timeout flag is set
HR 1004 uint16 RW
HR 1005 uint16 RW Persistent; changing it recalculates the motor timeout
HR 1006 uint16 RW Persistent lock timeout used by default
HR 1007 uint16 RW
HR 1008 uint16 RW
HR 1009 uint16 RW Which of the ten threshold sets is in use
HR 1010 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1012 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1014 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1016 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1018 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1020 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1022 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1024 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1026 float32 ABCD RW mm Set 0 of 10; set s starts at 1010 + 24 x s
HR 1028 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1030 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1032 float32 ABCD RW ° Set 0 of 10; set s starts at 1010 + 24 x s
HR 1250 uint16 W Action: triggers a quality check when the quality mode is QUALITY_TRIGGER
HR 1251 uint16 W Action: resets the quality check result
HR 1252 uint16 RW Pin function
HR 1253 uint16 RW Pin function
HR 1254 uint16 RW Pin function; pin 2 accepts only LOCK, QUALITY_TRIGGER, OFF, INPUT and LOGGER_TRIGGER
HR 1255 uint16 RW Logical level of the pin (high = 1)
HR 1256 uint16 RW Logical level of the pin (high = 1)
HR 1257 uint16 RW Logical level of the pin (high = 1)
HR 1258 uint16 RW
HR 1259 uint16 W Sets all LEDs and switches the LED mode to CUSTOM
HR 1260 uint16 W Sets all LEDs and switches the LED mode to CUSTOM
HR 1261 uint16 W Sets all LEDs and switches the LED mode to CUSTOM
HR 1370 uint16 RW ms Recording interval in steps of 5 ms
HR 1371 uint16 RW
HR 1372 uint16 RW 1 = stop when the maximum count is reached
HR 1373 uint16 RW
HR 1374 uint16 RW Records kept from before the trigger; below the maximum count
HR 1375 uint16 W Action
HR 1376 uint16 W Action
HR 1377 uint16 RW Moving average length; 0 = off
HR 1378 uint32 ABCD RW
HR 1380 uint16 W Action
HR 1381 uint16 RW Response delay in pause characters; the time depends on the baud rate
HR 1382 uint16 RW Temperature compensation; keep on for an accurate pose
HR 1383 uint16 W Action: sets the pose to zero in the locked state; only with compensation off
HR 1384 uint16 RW
HR 1385 uint16 W Action: restores the default settings
HR 1386 uint16 RW

Help improve this map