Index: trunk/fw_g473rct/SES/inc/battery_voltage.h
===================================================================
--- trunk/fw_g473rct/SES/inc/battery_voltage.h	(revision 24)
+++ trunk/fw_g473rct/SES/inc/battery_voltage.h	(revision 25)
@@ -16,4 +16,7 @@
 
 //--- GLOBALE DEFINES ----------------------------------------------------------
+#define BATTERY_VOLTAGE_VOLTAGE_DIVIDER       6.0
+#define BATTERY_VOLTAGE_ADC_RESOLUTION		  32768.0 //65536/2 da im differential mode
+#define BATTERY_VOLTAGE_ADC_OFFSET			  32768.0
 
 //--- GLOBALE VARIABLEN PROTOTYPEN ---------------------------------------------
Index: trunk/fw_g473rct/SES/inc/doku.h
===================================================================
--- trunk/fw_g473rct/SES/inc/doku.h	(revision 24)
+++ trunk/fw_g473rct/SES/inc/doku.h	(revision 25)
@@ -1,6 +1,17 @@
 /*
+
+Neue Version für smartPro
+
+- VDD muss jetzt nicht mehr berechnet werden, da wir eine echte Referenz haben. Deshalb entfällt die Anzeige im Register 101. Diese wurde ersetzt durch die
+  Spannung der neuen Backup Batterie
+- Register Position für mWs und mWh getauscht, damit besser lesbar und ggf weniger Datenübetragung notwendig
+- Register Position für mAs und mAh getauscht, damit besser lesbar und ggf weniger Datenübetragung notwendig
+
+
+
+----- ALT greenMeter-------
 Achtung:
 - IMMER NEUE HEX und NEUE BIN DATEI erzeugen!!!
-- Bin Datei für Encryption Tool
+- Bin Datei fr Encryption Tool
 - Hex für Prüfprogramm, automatische Programmierung
 
@@ -22,5 +33,5 @@
 2.0 COMMON MODE ERROR COMPENSATION
 - Temperatur kalt, Raumtemperartur
-- Busspannung 24,00V (Dabei änder sich der gemessene Strom um z.B. -120mA )
+- Busspannung 24,00V (Dabei nder sich der gemessene Strom um z.B. -120mA )
 - Busstrom 0,0A - Lastschalter aus!!
 - Warten bis Mittwelwert stabilisert
@@ -30,5 +41,5 @@
 2.1 (OPTIONAL)
 - Common Mode Error Kompensation testen
-- Spannung auf 32V erhöhen
+- Spannung auf 32V erhhen
 - Fehler Strommessung < +- 5VmA
 - Spannung auf 6V verringern
@@ -41,11 +52,11 @@
 
 3.0 OFFSET TEMP COMPENSATION
-- Kein erheblicher Fehler.  Kompensation kann zunächst entfallen
+- Kein erheblicher Fehler.  Kompensation kann zunchst entfallen
 
 4.0 GAIN CAL
-- SHUNT Überbrücken
+- SHUNT berbrcken
 - 250A einstellen
 - warten bis stabil, +- 2mA
-- SHUNT ÜBERBRÜCKUNG ÖFFNEN
+- SHUNT BERBRCKUNG FFNEN
 - Warten auf Mittelwertbildung (10 Sekunden)
 - COMMAND 10
@@ -53,5 +64,5 @@
 
 5.0 GAIN TEMP CAL
-- Warten bis Shunt Temp um 10°C gestiegen ist.
+- Warten bis Shunt Temp um 10C gestiegen ist.
 - 
 */
@@ -63,5 +74,5 @@
 //---------------------
 //Test Shunt Spannungsmessung:
-//Mit greenSwitch als Hauptschalter nur bis 32V möglich. Da Überspannungsschutzdiode im greenSwitch aktiv wird
+//Mit greenSwitch als Hauptschalter nur bis 32V mglich. Da berspannungsschutzdiode im greenSwitch aktiv wird
 // Sollwer:         Read:              Strom am Shunt:
 // 0 V               0,09 V              0,0 mA
@@ -79,5 +90,5 @@
 
 /*
-Prüfung Common Mode Error nach Kalibrierung 12/24V
+Prfung Common Mode Error nach Kalibrierung 12/24V
 - Muster 1 hatte bei 0V  - 8 mA
 - Muster 1 hatte bei 2V  - 6 mA
Index: trunk/fw_g473rct/SES/inc/fast_current.h
===================================================================
--- trunk/fw_g473rct/SES/inc/fast_current.h	(revision 24)
+++ trunk/fw_g473rct/SES/inc/fast_current.h	(revision 25)
@@ -16,4 +16,20 @@
 
 //--- GLOBALE DEFINES ----------------------------------------------------------
+#define FAST_CURRENT_I_SENSE_GAIN						  40.0
+#define FAST_CURRENT_ADC_OFFSET							  32768
+#define FAST_CURRENT_ADC_RESOLUTION						  32768 //65536/2 da im differential mode
+
+
+  #if (DEVICETYPE == 500)
+    #define FAST_CURRENT_SHUNT_RESISTOR	0.000125	
+  #elif (DEVICETYPE == 250)
+    #define FAST_CURRENT_SHUNT_RESISTOR	0.000250	
+  #elif (DEVICETYPE == 125)
+    #define FAST_CURRENT_SHUNT_RESISTOR	0.000500	
+  #else
+  #error No valid device type
+  #endif
+  		
+
 
 //--- GLOBALE VARIABLEN PROTOTYPEN ---------------------------------------------
Index: trunk/fw_g473rct/SES/inc/sysdata.h
===================================================================
--- trunk/fw_g473rct/SES/inc/sysdata.h	(revision 24)
+++ trunk/fw_g473rct/SES/inc/sysdata.h	(revision 25)
@@ -170,14 +170,18 @@
 	/* 8 of 8 */ uint32_t lastTimeVbatEmpty;									// 146-147	[s]
 	/* 4 of 8 */ uint32_t onTime;												// 148-149	[s] Runtime Zähler zum speichern der Statistik Werte im EEPROM und als Betriebszeitzähler
-	/* 8 of 8 */ uint32_t dischargeTotalAh;										// 150-151	[mAs]
-	/* 4 of 8 */ uint32_t chargeTotalAh;										// 152-153	[mAs]
-	/* 8 of 8 */ uint32_t dischargeTotalWh;										// 154-155	[mAs]
-	/* 4 of 8 */ uint32_t chargeTotalWh;										// 156-157	[mAs]
+	/* 8 of 8 */ uint32_t dischargeTotalAh;										// 150-151	[Ah]
+	/* 4 of 8 */ uint32_t chargeTotalAh;										// 152-153	[Ah]
+	/* 8 of 8 */ uint32_t dischargeTotalWh;										// 154-155	[Wh]
+	/* 4 of 8 */ uint32_t chargeTotalWh;										// 156-157	[Wh]
 	/* 6 of 8 */ uint16_t fullCyclesCnt;										// 158
-	/* 8 of 8 */ uint16_t volatile UNIQUE_NAME(reserved);								// 159
-	/* 8 of 8 */ int64_t  mAs_AutoMode;											// 160-163
-	/* 8 of 8 */ int64_t  mWs_AutoMode;											// 164-167
-	/* 2 of 8 */ uint16_t ovp_sense;                                                                         // 168
-	/* 4 of 8 */ uint16_t lvp_sense;                                                                        // 169
+	/* 8 of 8 */ uint16_t volatile UNIQUE_NAME(reserved);						// 159
+	/* 4 of 8 */ int32_t  mAh_AutoMode;											// 160-161
+	/* 6 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 162
+	/* 8 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 163
+	/* 4 of 8 */ int32_t  mWh_AutoMode;											// 164-165
+	/* 6 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 166
+	/* 8 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 167
+	/* 2 of 8 */ uint16_t ovp_sense;                                            // 168
+	/* 4 of 8 */ uint16_t lvp_sense;                                            // 169
 	/* 6 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 170
 	/* 8 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 171
@@ -186,12 +190,9 @@
 	/* 6 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 174
 	/* 8 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 175
-	/* 2 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 176
-	/* 4 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 177
-	/* 6 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 178
-	/* 8 of 8 */ uint16_t UNIQUE_NAME(reserved);								// 179
+
 
 	// --- DEBUG WERTE
-	/* 4 of 8 */ int32_t  mAh_AutoMode;											// 180-181	[mWh]
-	/* 8 of 8 */ int32_t  mWh_AutoMode;											// 182-183	[mWh]
+	/* 8 of 8 */ int64_t  mAs_AutoMode;											// 176-179	[mWh]
+	/* 8 of 8 */ int64_t  mWs_AutoMode;											// 180-183	[mWh]
 	/* 8 of 8 */ int64_t  mWsCounter;											// 184-187	[mWs]
 	/* 4 of 8 */ int32_t  mWhCounter;											// 188-189	[mWh]
@@ -209,5 +210,5 @@
 	/* 4 of 8 */ int16_t  selfDischargeStatus;									// 206
 	/* 6 of 8 */ uint16_t selfDischargeTime;									// 207
-	/* 8 of 8 */ uint8_t  message[24];											// 208-219	ASCII-char message, limited to 8 letters
+	/* 8 of 8 */ uint8_t  message[20];											// 208-219	ASCII-char message, limited to 20 letters
 	/* 4 of 8 */ int32_t  current_buffer[SAMPLE_ARRAY_SIZE];					// 220-283
 	/* 8 of 8 */ int32_t  voltage_buffer[SAMPLE_ARRAY_SIZE];					// 284-347
