11#ifndef EEPROM_ADDRESSES_H_
12#define EEPROM_ADDRESSES_H_
20#define NB_EXPORTABLE_ADR 149
39#define ADR_HW_VERSION 1
40#define ADR_SW_VERSION 2
41#define ADR_FLASH_VERSION 4
42#define ADR_CURRENT_CONFIG 10
44#define ADR_CANCONF1 0xC1
45#define ADR_I2CCONF1 0xC2
47#define ADR_FFBWHEEL_BUTTONCONF 0x101
48#define ADR_FFBWHEEL_ANALOGCONF 0x102
49#define ADR_FFBWHEEL_CONF1 0x103
51#define ADR_CANREMOTE_CONF1 0x120
52#define ADR_CANREMOTE_CONF2 0x121
54#define ADR_SPI_BTN_1_CONF 0x201
55#define ADR_SHIFTERANALOG_CONF 0x202
56#define ADR_LOCAL_BTN_CONF 0x203
57#define ADR_LOCAL_BTN_CONF_2 0x204
58#define ADR_SPI_BTN_2_CONF 0x205
59#define ADR_SPI_BTN_1_CONF_2 0x206
60#define ADR_SPI_BTN_2_CONF_2 0x207
61#define ADR_LOCAL_BTN_CONF_3 0x208
63#define ADR_ENCLOCAL_CPR 0x210
64#define ADR_ENCLOCAL_OFS 0x211
66#define ADR_PWM_MODE 0x220
68#define ADR_LOCALANALOG_MASK 0x230
70#define ADR_SHIFTERANALOG_X_12 0x240
71#define ADR_SHIFTERANALOG_X_56 0x241
72#define ADR_SHIFTERANALOG_Y_135 0x242
73#define ADR_SHIFTERANALOG_Y_246 0x243
74#define ADR_SHIFTERANALOG_CONF_2 0x244
75#define ADR_SHIFTERANALOG_CONF_3 0x245
77#define ADR_PCFBTN_CONF1 0x250
79#define ADR_CANBTN_CONF1 0x260
80#define ADR_CANBTN_CONF2 0x261
82#define ADR_CANANALOG_CONF1 0x270
84#define ADR_FFB_CF_FILTER 0x280
85#define ADR_FFB_FR_FILTER 0x281
86#define ADR_FFB_DA_FILTER 0x282
87#define ADR_FFB_IN_FILTER 0x283
88#define ADR_FFB_EFFECTS1 0x284
89#define ADR_FFB_EFFECTS2 0x285
90#define ADR_FFB_EFFECTS3 0x286
92#define ADR_ADS111X_CONF1 0x290
94#define ADR_AXIS_COUNT 0x300
96#define ADR_AXIS1_CONFIG 0x301
97#define ADR_AXIS1_POWER 0x302
98#define ADR_AXIS1_DEGREES 0x303
99#define ADR_AXIS1_MAX_SPEED 0x304
100#define ADR_AXIS1_MAX_ACCEL 0x305
101#define ADR_AXIS1_ENDSTOP 0x307
102#define ADR_AXIS1_EFFECTS1 0x308
103#define ADR_AXIS1_SPEEDACCEL_FILTER 0x309
104#define ADR_AXIS1_ENC_RATIO 0x30A
105#define ADR_AXIS1_EFFECTS2 0x30B
106#define ADR_AXIS1_POSTPROCESS1 0x30C
108#define ADR_TMC1_MOTCONF 0x320
109#define ADR_TMC1_CPR 0x321
110#define ADR_TMC1_ENCA 0x322
111#define ADR_TMC1_ADC_I0_OFS 0x323
112#define ADR_TMC1_ADC_I1_OFS 0x324
113#define ADR_TMC1_ENC_OFFSET 0x325
114#define ADR_TMC1_OFFSETFLUX 0x326
115#define ADR_TMC1_TORQUE_P 0x327
116#define ADR_TMC1_TORQUE_I 0x328
117#define ADR_TMC1_FLUX_P 0x329
118#define ADR_TMC1_FLUX_I 0x32A
119#define ADR_TMC1_PHIE_OFS 0x32B
120#define ADR_TMC1_TRQ_FILT 0x32C
122#define ADR_AXIS2_CONFIG 0x341
123#define ADR_AXIS2_POWER 0x342
124#define ADR_AXIS2_DEGREES 0x343
125#define ADR_AXIS2_MAX_SPEED 0x344
126#define ADR_AXIS2_MAX_ACCEL 0x345
127#define ADR_AXIS2_ENDSTOP 0x347
128#define ADR_AXIS2_EFFECTS1 0x348
129#define ADR_AXIS2_SPEEDACCEL_FILTER 0x349
130#define ADR_AXIS2_ENC_RATIO 0x34A
131#define ADR_AXIS2_EFFECTS2 0x34B
132#define ADR_AXIS2_POSTPROCESS1 0x34C
134#define ADR_TMC2_MOTCONF 0x360
135#define ADR_TMC2_CPR 0x361
136#define ADR_TMC2_ENCA 0x362
137#define ADR_TMC2_ADC_I0_OFS 0x363
138#define ADR_TMC2_ADC_I1_OFS 0x364
139#define ADR_TMC2_ENC_OFFSET 0x365
140#define ADR_TMC2_OFFSETFLUX 0x366
141#define ADR_TMC2_TORQUE_P 0x367
142#define ADR_TMC2_TORQUE_I 0x368
143#define ADR_TMC2_FLUX_P 0x369
144#define ADR_TMC2_FLUX_I 0x36A
145#define ADR_TMC2_PHIE_OFS 0x36B
146#define ADR_TMC2_TRQ_FILT 0x36C
148#define ADR_AXIS3_CONFIG 0x381
149#define ADR_AXIS3_POWER 0x382
150#define ADR_AXIS3_DEGREES 0x383
151#define ADR_AXIS3_MAX_SPEED 0x384
152#define ADR_AXIS3_MAX_ACCEL 0x385
153#define ADR_AXIS3_ENDSTOP 0x387
154#define ADR_AXIS3_EFFECTS1 0x388
155#define ADR_AXIS3_SPEEDACCEL_FILTER 0x389
156#define ADR_AXIS3_ENC_RATIO 0x38A
157#define ADR_AXIS3_EFFECTS2 0x38B
158#define ADR_AXIS3_POSTPROCESS1 0x38C
160#define ADR_TMC3_MOTCONF 0x3A0
161#define ADR_TMC3_CPR 0x3A1
162#define ADR_TMC3_ENCA 0x3A2
163#define ADR_TMC3_ADC_I0_OFS 0x3A3
164#define ADR_TMC3_ADC_I1_OFS 0x3A4
165#define ADR_TMC3_ENC_OFFSET 0x3A5
166#define ADR_TMC3_OFFSETFLUX 0x3A6
167#define ADR_TMC3_TORQUE_P 0x3A7
168#define ADR_TMC3_TORQUE_I 0x3A8
169#define ADR_TMC3_FLUX_P 0x3A9
170#define ADR_TMC3_FLUX_I 0x3AA
171#define ADR_TMC3_PHIE_OFS 0x3AB
172#define ADR_TMC3_TRQ_FILT 0x3AC
174#define ADR_RMD1_DATA1 0x3C0
175#define ADR_RMD1_TORQUE 0x3C1
176#define ADR_RMD1_OFFSET 0x3C2
177#define ADR_RMD2_DATA1 0x3C3
178#define ADR_RMD2_TORQUE 0x3C4
179#define ADR_RMD2_OFFSET 0x3C5
181#define ADR_ODRIVE_CANID 0x3D0
182#define ADR_ODRIVE_SETTING1_M0 0x3D1
183#define ADR_ODRIVE_SETTING1_M1 0x3D2
184#define ADR_ODRIVE_OFS_M0 0x3D3
185#define ADR_ODRIVE_OFS_M1 0x3D4
187#define ADR_VESC1_CANID 0x3E0
188#define ADR_VESC1_DATA 0x3E1
189#define ADR_VESC1_OFFSET 0x3E2
190#define ADR_VESC2_CANID 0x3E3
191#define ADR_VESC2_DATA 0x3E4
192#define ADR_VESC2_OFFSET 0x3E5
193#define ADR_VESC3_CANID 0x3E6
194#define ADR_VESC3_DATA 0x3E7
195#define ADR_VESC3_OFFSET 0x3E8
197#define ADR_MTENC_OFS 0x400
198#define ADR_MTENC_CONF1 0x401
200#define ADR_BISSENC_CONF1 0x410
201#define ADR_BISSENC_OFS 0x411
203#define ADR_SSI_CONF1 0x413
204#define ADR_SSI_OFS 0x414
206#define ADR_LOCALANALOG_MIN_0 0x500
207#define ADR_LOCALANALOG_MAX_0 0x501
208#define ADR_LOCALANALOG_MIN_1 0x502
209#define ADR_LOCALANALOG_MAX_1 0x503
210#define ADR_LOCALANALOG_MIN_2 0x504
211#define ADR_LOCALANALOG_MAX_2 0x505
212#define ADR_LOCALANALOG_MIN_3 0x506
213#define ADR_LOCALANALOG_MAX_3 0x507
214#define ADR_LOCALANALOG_MIN_4 0x508
215#define ADR_LOCALANALOG_MAX_4 0x509
216#define ADR_LOCALANALOG_MIN_5 0x50A
217#define ADR_LOCALANALOG_MAX_5 0x50B
218#define ADR_LOCALANALOG_MIN_6 0x50C
219#define ADR_LOCALANALOG_MAX_6 0x50D
220#define ADR_LOCALANALOG_MIN_7 0x50E
221#define ADR_LOCALANALOG_MAX_7 0x50F
223#define ADR_ADS111X_MIN_0 0x510
224#define ADR_ADS111X_MAX_0 0x511
225#define ADR_ADS111X_MIN_1 0x512
226#define ADR_ADS111X_MAX_1 0x513
227#define ADR_ADS111X_MIN_2 0x514
228#define ADR_ADS111X_MAX_2 0x515
229#define ADR_ADS111X_MIN_3 0x516
230#define ADR_ADS111X_MAX_3 0x517
const uint16_t VirtAddVarTab[NB_OF_VAR]
const uint16_t exportableFlashAddresses[NB_EXPORTABLE_ADR]