diff --git a/dynamixel_manager/include/modules/motion_manager.h b/dynamixel_manager/include/modules/motion_manager.h
index b5d3bbe2e32678e5d0c055bb3bd27d08c02fa9c8..1a2e9aa525ec2a72902713300277b41e484ca573 100644
--- a/dynamixel_manager/include/modules/motion_manager.h
+++ b/dynamixel_manager/include/modules/motion_manager.h
@@ -4,10 +4,7 @@
 #include "dyn_module.h"
 
 #ifndef MM_MAX_NUM_MOTION_MODULES
-  #define MM_MAX_NUM_MOTION_MODULES        8
-#endif
-#ifdef MM_MAX_NUM_MODELS
-  #define MODULE_MAX_NUM_MODELS            MM_MAX_NUM_MODELS
+  #error "Please, specify the maximum number of motion modules with the MM_MAX_NUM_MOTION_MODULES macro"
 #endif
 
 typedef enum {MM_NONE          = -1,
diff --git a/dynamixel_manager/include/modules/motion_manager_registers.h b/dynamixel_manager/include/modules/motion_manager_registers.h
index 208e6b810965e8a28d47268820f151b25498137e..02fbc9ed572a7d596bada1c73b517df5bb13815a 100644
--- a/dynamixel_manager/include/modules/motion_manager_registers.h
+++ b/dynamixel_manager/include/modules/motion_manager_registers.h
@@ -3,60 +3,14 @@
 
 #include "dyn_module_registers.h"
 
-#ifndef RAM_MM_BASE_ADDRESS
-  #define RAM_MM_BASE_ADDRESS                ((unsigned short int)0x0000)
-#endif
-
-#ifndef EEPROM_MM_BASE_ADDRESS
-  #define EEPROM_MM_BASE_ADDRESS             ((unsigned short int)0x0000)
-#endif
-
-#define RAM_MM_LENGTH                        (RAM_DYN_MODULE_LENGTH + )
+#define RAM_MM_LENGTH                        (RAM_DYN_MODULE_LENGTH + 0)
 
-#define EEPROM_MM_LENGTH                     (EEPROM_DYN_MODULE_LENGTH + )
+#define EEPROM_MM_LENGTH                     (DYN_MANAGER_MAX_NUM_DEVICES)
 
-#define MM_PERIOD                            DYN_MODULE_PERIOD
-
-#define MM_CNTRL                             DYN_MODULE_CNTRL
-#define MM_NUM_MODELS                        DYN_MODULE_NUM_MODELS
-#define MM_NUM_DEVICES                       DYN_MODULE_NUM_DEVICES
-
-#ifndef DEFAULT_MM_PERIOD
-  #define DEFAULT_MM_PERIOD                  DEFAULT_DYN_MODULE_PERIOD
-#endif
-#define MM_SERVO0_OFFSET                ((unsigned short int)0x0011)
-#define MM_SERVO1_OFFSET                ((unsigned short int)0x0012)
-#define MM_SERVO2_OFFSET                ((unsigned short int)0x0013)
-#define MM_SERVO3_OFFSET                ((unsigned short int)0x0014)
-#define MM_SERVO4_OFFSET                ((unsigned short int)0x0015)
-#define MM_SERVO5_OFFSET                ((unsigned short int)0x0016)
-#define MM_SERVO6_OFFSET                ((unsigned short int)0x0017)
-#define MM_SERVO7_OFFSET                ((unsigned short int)0x0018)
-#define MM_SERVO8_OFFSET                ((unsigned short int)0x0019)
-#define MM_SERVO9_OFFSET                ((unsigned short int)0x001A)
-#define MM_SERVO10_OFFSET               ((unsigned short int)0x001B)
-#define MM_SERVO11_OFFSET               ((unsigned short int)0x001C)
-#define MM_SERVO12_OFFSET               ((unsigned short int)0x001D)
-#define MM_SERVO13_OFFSET               ((unsigned short int)0x001E)
-#define MM_SERVO14_OFFSET               ((unsigned short int)0x001F)
-#define MM_SERVO15_OFFSET               ((unsigned short int)0x0020)
-#define MM_SERVO16_OFFSET               ((unsigned short int)0x0021)
-#define MM_SERVO17_OFFSET               ((unsigned short int)0x0022)
-#define MM_SERVO18_OFFSET               ((unsigned short int)0x0023)
-#define MM_SERVO19_OFFSET               ((unsigned short int)0x0024)
-#define MM_SERVO20_OFFSET               ((unsigned short int)0x0025)
-#define MM_SERVO21_OFFSET               ((unsigned short int)0x0026)
-#define MM_SERVO22_OFFSET               ((unsigned short int)0x0027)
-#define MM_SERVO23_OFFSET               ((unsigned short int)0x0028)
-#define MM_SERVO24_OFFSET               ((unsigned short int)0x0029)
-#define MM_SERVO25_OFFSET               ((unsigned short int)0x002A)
-#define MM_SERVO26_OFFSET               ((unsigned short int)0x002B)
-#define MM_SERVO27_OFFSET               ((unsigned short int)0x002C)
-#define MM_SERVO28_OFFSET               ((unsigned short int)0x002D)
-#define MM_SERVO29_OFFSET               ((unsigned short int)0x002E)
-#define MM_SERVO30_OFFSET               ((unsigned short int)0x002F)
-#define MM_SERVO31_OFFSET               ((unsigned short int)0x0030)
+#define MM_SERVO_OFFSET                      0
 
+#define dyn_mm_eeprom_data(name,section_name,base_address) \
+unsigned short int name##_eeprom_data[] __attribute__ ((section (section_name)))={0,base_address+MM_SERVO_OFFSET};
 
 #endif