STM32F103VDT6 Backup Register Vbat

OP #2751170
Lesenswert?

Guten Tag!

Ich arbeite mit dem uVision von Keil und dem STM32F103VDT6.

Ich erfasse die Position meines Antriebs, die nach einem Stromausfall 
bekannt sein muss. Nun lade ich die Daten ins Backup Register. Dies 
Funktioniert prima! Doch nach einem Power Off sind die Daten verloren. 
ich habe eine Batterie 3V direkt an Vbat angeschlossen.

Ich speichere die Daten alle 50ms ins Backup Register. Und lese sie nur 
nach einem Power Up.

Ich benütze die StandartLib
1
/* Enable Backup Register */
2
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
3
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE); 
4
  PWR_BackupAccessCmd(ENABLE);



Lesen:
1
set_MotorDistCounter(BKP_ReadBackupRegister(BKP_DR42));


Schreiben:
1
set_MotorDistCounterToBKP();
1
void set_MotorDistCounterToBKP(void)
2
{
3
  tsk_lock();
4
  NVIC_DisableIRQ(EXTI9_5_IRQn);     // External Interrupt 5, 6, 7, 8 and 9 are disable
5
  //BKP_DeInit();
6
  BKP_WriteBackupRegister(BKP_DR42, ihall_distance);
7
  NVIC_EnableIRQ(EXTI9_5_IRQn);      // External Interrupt 5, 6, 7, 8 and 9 are enable 
8
  tsk_unlock();
9
}

Habe ich etwas übersehen?

Dabnke und Gruss!
M.B.
#2752081
Lesenswert?

@  M. B. (drumstick)

>Tja, es scheint so als ob ein Spannungsabfall an der Batterie beim
>Einschalten auf 1.2V für eine Zeitspanne von 28ns reicht, um das Backup
>Register zu löschen.

Kaum. Wenn es kein prinzipieller Bug in dem IC ist, wird wohl deine 
Hardware oder Software das Problem sein. Meist muss die 
Backup-Geschichte einmalig per Software initialisiert werden.
OP #2752092
Lesenswert?

Ja, die Batterie ist über einen Kondensator geschalten, der aber da 
falsch am Platz ist. Das erklärt den Spannungsabfall. Aber ich denke 
auch, dass dies nicht der Grund ist, dass die Daten nicht erhalten 
bleiben.? Aber sicher bin ich mir da nicht ganz.

Werde wohl den Kondensator entfernen!
OP #2752186
Lesenswert?

A. K. schrieb:

>Könnte der TAMPER Pin eine Rolle spielen?

Note: Tamper detection is still active when VDD power is switched off. 
To avoid unwanted resetting
of the data backup registers, the TAMPER pin should be externally tied 
to the correct level.

Da ist eine gute Idee!
OP #2752197
Lesenswert?

Aber

Bit 1 TPAL: TAMPER pin active level
0: A high level on the TAMPER pin resets all data backup registers (if 
TPE bit is set).
1: A low level on the TAMPER pin resets all data backup registers (if 
TPE bit is set).
Bit 0 TPE: TAMPER pin enable
0: The TAMPER pin is free for general purpose I/O
1: Tamper alternate I/O function is activated.


wenn ich das jetzt richtig verstanden habe. Sollte es so stimmen und im 
Debugger wird nie ein Bit gesetzt?!
OP #2752199
Lesenswert?

denke ist eher dies gemeint:

Bit 8 TEF: Tamper event flag
This bit is set by hardware when a Tamper event is detected. It is 
cleared by writing 1 to the
CTE bit.
0: No Tamper event
1: A Tamper event occurred
Note: A Tamper event resets all the BKP_DRx registers. They are held in 
reset as long as the
TEF bit is set. If a write to the BKP_DRx registers is performed while 
this bit is set, the
value will not be stored.
OP #2752488
Lesenswert?

Init:
1
/* Enable Backup Register */
2
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
3
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
4
  BKP_TamperPinCmd(DISABLE);


schreiben:
1
PWR_BackupAccessCmd(ENABLE);
2
BKP_WriteBackupRegister(BKP_DR42, ihall_distance);
3
PWR_BackupAccessCmd(DISABLE);

lesen:
1
PWR_BackupAccessCmd(ENABLE);
2
set_MotorDistCounter(BKP_ReadBackupRegister(BKP_DR42));
3
PWR_BackupAccessCmd(DISABLE);
OP #2752568
Lesenswert?

M.B. schrieb:



> meine Init:

>
1
/* Enable Backup Register */
2
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
3
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
4
  BKP_TamperPinCmd(DISABLE);


> Auch im Debugger ist dieser Pin immer 0!


Habe folgendes versucht:
1
BKP_TamperPinCmd(ENABLE);

Bit bleibt 0!!
Gast #2752580
Lesenswert?

A. K. schrieb:
> Wenn man die wahrscheinlichen scheinenden Ursachen ausgeschlossen hat,
> dann sollte sich an den Gedanken gewöhnen, sich mit den als
> unwahrscheinlich oder ausgeschlossen betrachteten Ursachen beschäftigten
> zu müssen.

Das ist für mich die immer noch nicht richtig abgeblockte Spannung Vbat.
Nie und Nimmer könnte sonst das Oszilloskope oben gezeigtes Bild 
liefern. Vielleicht rechnet mal jemand die notwendigen Stöme in einem 
100nF X7R C aus, um die gezeigten Anstiegs- und Abfallzeiten zu 
erhalten. Ohne zu rechnen: diese könnte ein µC-Pin überhaupt nicht 
liefern!
OP #2753325
Lesenswert?

Warning:

During tRSTTEMPO (temporization at VDD startup) or after a PDR
is detected, the power switch between VBAT and VDD remains
connected to VBAT.
During the startup phase, if VDD is established in less than
tRSTTEMPO (Refer to the datasheet for the value of tRSTTEMPO)
and VDD > VBAT + 0.6 V, a current may be injected into VBAT
through an internal diode connected between VDD and the
power switch (VBAT).
If the power supply/battery connected to the VBAT pin cannot
support this current injection, it is strongly recommended to
connect an external low-drop diode between this power
supply and the VBAT pin.

tRSTTEMPO Min: 1  Typ: 2.5   MAX: 4.5  ms


Habe eine neue Spur!
OP #2753345
Lesenswert?

A. K. schrieb:

> Mir scheint eher, dass du den verlorenen Schlüssel unter der Laterne
> suchst, weil es dort, wo er tatsächlich verloren ging, zu dunkel ist.

ja, Du hast sicher nicht ganz unrecht. Ich suche natürlich weiter, bis 
die Hardware angepasst wurde. Es kam halt eine Spur Hoffnung auf, das 
Problem gefunden zu haben.

Danke für Deine Unterstützung!
OP #2753775
Lesenswert?

So, habe ein Demoprogramm erstellt ,das auf dem EVAL MCBSTM32C läuft:
1
#include <RTL.h>
2
#include <stdlib.h>
3
#include <stdint.h>
4
#include "stm32f10x.h"
5

6
void init(void)
7
{
8
  /* Enable Backup Register */
9
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
10
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
11
  BKP_TamperPinCmd(DISABLE);  
12
}
13

14
int main (void)
15
{
16
   init();
17
  while(1)
18
  {
19
    PWR_BackupAccessCmd(ENABLE);
20
    BKP_ClearFlag();
21
    BKP_WriteBackupRegister(BKP_DR1, 0x00000005);
22
    PWR_BackupAccessCmd(DISABLE);
23
  };
24
}

Danach ziehe ich den Stecker vom Board. Wenn ich den Stecker wieder 
anschliesse und den Debugger starte, steht der Wert 0x05 im DR1. Ich 
habe noch den Schemaausschnitt des Boards angehängt.

Es scheint also zu funktionieren!

Der Unterschied zum Board, die haben den Tamper auf 3V angeschlossen für 
den Taster meiner hängt in der Luft. Habe ihn jedoch softwaremässig 
ausgeschalten.
Angehängte Dateien:
OP #2753923
Lesenswert?

Folgendes habe ich jetzt probiert. Mein Demoprogramm den uP von meiner 
Hardware geladen, Device angepasst.

Programm laufen gelassen, Wert 5 im BKP. Stecker gezogen und wieder 
angeschlossen. Dann Debugger gestartet und siehe da, wert 5 im BKP.

Jetzt siehts eher wieder nach einem Programmierfehler aus. Was alles 
kann das BKP reseten?

Danke und Gruss!

M.B.
OP #2757262
Lesenswert?

Hi,

ich schreibe per Tastendruck ins Backup RAM Register DR1. Nach einem
Poweron schreibe ich den Wert vom BKP zurückt in die Zählervariable.

Am Vbat, der nach einem Spannungsabfall an Vdd per internem Switch
automatisch zugeschalten wird, hängt ein Kondensator mit einer Diode.
Nach einem Poweroff beträgt die Spannung am Kondensator 2.68V.

Das Problem nun ist, dass nach einem Poweroff die Daten im BKP Ram
verloren gehen.

Ich verwende die StandartLib.

Mein Code:
1
#include <RTL.h>
2
#include <stdlib.h>
3
#include <stdint.h>
4
#include "stm32f10x.h"
5

6
#define PIN_MOT_Enable_BASE  GPIOD_BASE
7
#define PIN_MOT_Enable_PIN   11
8
#define PIN_MOT_Enable_PIN2  12
9

10

11
void init(void)
12
{
13
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
14
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);
15
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE, ENABLE); 
16
}
17

18
int main (void)
19
{
20
  init();
21
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
22
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
23
  PWR_BackupAccessCmd(ENABLE);
24
  BKP_ClearFlag();
25
  
26
  if(RCC_GetFlagStatus(RCC_FLAG_PORRST) != RESET)
27
  {
28
    /* Clear reset flags */
29
    RCC_ClearFlag();
30
    if(BKP_ReadBackupRegister(BKP_DR1) == 0)
31
    {
32
      
33
    }
34
    else
35
    {
36
      PWR_BackupAccessCmd(ENABLE);
37
      BKP_WriteBackupRegister(BKP_DR1, 0x0000000C);
38
      PWR_BackupAccessCmd(DISABLE);
39
    }
40
  }
41
  while(1)
42
  {
43
    if((GPIO_ReadInputDataBit((GPIO_TypeDef *) PIN_MOT_Enable_BASE, (1 << PIN_MOT_Enable_PIN)) == 0))
44
    {
45
      PWR_BackupAccessCmd(ENABLE);
46
      BKP_WriteBackupRegister(BKP_DR1, 0x00000005);
47
      PWR_BackupAccessCmd(DISABLE);
48
    }
49

50
    if((GPIO_ReadInputDataBit((GPIO_TypeDef *) PIN_MOT_Enable_BASE, (1 << PIN_MOT_Enable_PIN2)) == 0))
51
    {
52
      PWR_BackupAccessCmd(ENABLE);
53
      BKP_WriteBackupRegister(BKP_DR1, 0x0000000B);
54
      PWR_BackupAccessCmd(DISABLE);
55
    }
56
      
57
  };
58
}

Hat schon mal Jemand so etwas gemacht, oder sieht Jemand meinen Fehler?

Vielen Dank und freundliche Grüsse!

M.B.
OP #2757384
Lesenswert?

Es nervt mich einfach, weil ich das ganze Power Down Reset und Power On 
reset nicht ganz verstehe und ob ich für den Vbatvom externen zum 
internen Clock wechseln muss?



@ Mechthild: Schwer verständlicher Sarkasmus!

Klar würde ich durchhalten bis zum bitteren Ende! Nur, das Ende wird 
heute sein, denn Morgen muss es laufen! Ich habs versucht!
Um die ganze Materie zu verstehen benötigt man viel mehr Zeit, als ich 
gedacht habe. Das heisst nicht, das ich dachte, es wird einfach! Aber, 
wenn man etwas neues macht, kann man nicht alles immer richtig 
einschätzen. Wer nichts wag gewinnt nichts.

trotzdem war das Forum immer eine grosse Hilfe, vielen Dank!

Grüsse!

M.B.
#2758249
Lesenswert?

Ich verwende die Backupregister auch ohne Probleme regelmäßig. 
Allerdings immer im Zusammenhang mit dem RTC und einen entsprechenden 
Uhren-Quarz. Auch habe ich die PVR Funktion aktiviert.

Ich benutze nach Taktfreigabe für die BKP Unit ein:
BKP_DeInit();                   // Backup-Register auf Standardwerte
um sicher zu stellen, dass die Anfangswerte in den Registern stehen.

Weiterhin lasse ich nach:

PWR_BackupAccessCmd(ENABLE);

die BKP Unit in Ruhe, gebe also niemals ein DISABLE.

Die Backupregister beschreibe und lese ich allerdings nur im 
Zusammenhang mit dem synchronisierten RTC also nach einem 
RTC_WaitForLastTask();
OP #2758283
Lesenswert?

Guten Tag!

Ich möchte mit einer Power Voltage Detection von Vdd auf Vbat
umschalten. Im Referenzmanual Figur 4, ist abgebiltet, dass mit einem
PVD auf Vbat umschalten kann. In der Funktionsbeschreibung steht aber
niergends, dass es umschaltet sobals ein PVD eingeschalten ist?

Danke und Gruss!

M.B.
#2758292
Lesenswert?

Wie Du in dem neuen Beitrag fragst, solltest Du Dich nochmal näher mit 
den Möglichkeiten der STM32 Familie beschäftigen. Ich benutze die PVR 
Funktion so:
1
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,   ENABLE);         // POWER Takt 
2
PWR_PVDCmd(ENABLE);                       // Power Voltage Detector freigeben
3
PWR_PVDLevelConfig(PWR_PVDLevel_2V9);     // auf 2.9V einstellen BSP.
4

5
...
6

7
 // Externer Interruptcontroller EXTI-16 (intern PVD zugeordnet) freigeben
8
  EXTI_ClearITPendingBit(EXTI_Line16 );
9
  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
10
  EXTI_InitStructure.EXTI_Line = EXTI_Line16;
11
  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; // Auslösung VDD < PVD Vergleichsspannung
12
  EXTI_InitStructure.EXTI_LineCmd = ENABLE;
13
  EXTI_Init(&EXTI_InitStructure);
14

15

16
  // PVD Interrupt
17
  NVIC_InitStructure.NVIC_IRQChannel = PVD_IRQn;
18
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
19
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
20
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
21
  NVIC_Init(&NVIC_InitStructure);
22

23
...
24

25
// PVD Interrupt-Handler
26
// Power-Voltage-Detector - löst aus, wenn die VDD/VAA unter die eingestellte Vergleichsspannung
27
// fällt (optional auch darüber/beides). PVD ist EXTI-16 intern zugeordnet. EXTI-16
28
// muss entsprechend konfiguriert werden.
29
//***********************************************************************************************
30
void PVD_IRQHandler (void) {
31
  // PWR_PVDCmd(DISABLE);
32
  EXTI_ClearITPendingBit(EXTI_Line16);  // Bestätigungsbit EXTI
33
  NVIC_ClearPendingIRQ(PVD_IRQn);       // Bestätigungsbit PVD
34
  PVDFunktion();                        // Hier gezielt sichern und System runterfahren
35
}
OP #2758296
Lesenswert?

@ Matthias K.:

Vielen Dank für die Hilfe.

Ich habe den Versuch gestartet, die BKPs auch im Zusammenhang mit dem 
RTC zu verwenden. Ohne grossen Erfolg. Ausserdem versuche ich noch mit 
einem PVD, dass switchen auf Vbat frühzeitig sicher zu stellen.

Meine Init:
1
/* Enable Backup Register */
2
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
3
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
4
   BKP_TamperPinCmd(DISABLE);
5
   BKP_DeInit();
6
   PWR_BackupAccessCmd(ENABLE);
7

8
/* Enable RTC Register */
9
   RCC_LSEConfig(RCC_LSE_ON);
10
  while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET)
11
  {
12
  }
13
  RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
14
  RCC_RTCCLKCmd(ENABLE);
15
  RTC_WaitForSynchro();
16
  RTC_WaitForLastTask();
17
  RTC_ITConfig(RTC_IT_SEC, ENABLE);
18
  RTC_WaitForLastTask();  
19
  RTC_SetPrescaler(32767);
20
  RTC_WaitForLastTask();
21

22
/* Enable PVD Register */
23
  PWR_PVDCmd(ENABLE);
24
  PWR_PVDLevelConfig(PWR_PVDLevel_2V9);

Nach einem erneuten einschalten, ist das BKP resetet und das RTC CNT 
Register 0.
#2758314
Lesenswert?

Markus Müller schrieb:
> Ich glaube den BKP_DeInit(); darf nicht ausgeführt werden, denn der
> resetet alles.

Macht es. Es kommt drauf an, wenn man BKP_DeInit(); aufruft. Am Anfang 
der Initialisierungsphase sorgt es auch dafür, das die Register der Unit 
die richtigen Anfangswerte haben. Bei den vielen AND und OR der FW-Lib 
hatte ich bei anderen Units ohne DeInit()'s schon Probleme. Muss aber 
nicht unbedingt auf die BKP zutreffen.
Gast #2758397
Lesenswert?

M. B. schrieb:
> Tja, es scheint so als ob ein Spannungsabfall an der Batterie beim
> Einschalten auf 1.2V für eine Zeitspanne von 28ns reicht, um das Backup
> Register zu löschen.

Habe ich es überlesen und hast Du dieses Problem denn schon gelöst, oder 
ignorierst Du es einfach?
Sollte es die tatsächliche Fehlerquelle sein, kannst Du an den Registern 
weiterhin erfolglos 'herumspielen'.
OP #2758399
Lesenswert?

Nee, das muss HSE heissen. DANKE. Habe einen externen 25MHz Osz.

main:
1
int main (void) {
2

3
  GP_I_O_Init();                // the function GP_I_O_Init is call
4
  Motor_Init();                 // the function Motor_Init is call 
5
  Timer_Init();
6
  PWR_BackupAccessCmd(ENABLE);
7
  
8
  if(BKP_ReadBackupRegister(BKP_DR42) != 0xFEAF)   
9
  {
10
    RTC_Config();
11
    BKP_WriteBackupRegister(BKP_DR42, 0xFEAF);
12
    
13
  }
14
  else
15
  {
16
    RTC_WaitForSynchro();
17
    RTC_ITConfig(RTC_IT_SEC, ENABLE);
18
    RTC_WaitForLastTask();
19
  }
20

21
  
22
  os_sys_init (tsk_init_bknd);  // Initialize RTX and start init   
23
}


RTC_Config
1
void RTC_Config(void)
2
{
3
  /* Enable Backup Register */
4
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);
5
   RCC_APB1PeriphClockCmd(RCC_APB1Periph_BKP, ENABLE);
6
   BKP_TamperPinCmd(DISABLE);
7
     RCC_HSEConfig(RCC_HSE_ON);
8
   while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET)
9
   {
10
   }
11
   RCC_RTCCLKConfig(RCC_RTCCLKSource_HSE_Div128);
12
   RCC_RTCCLKCmd(ENABLE);
13
   RTC_WaitForSynchro();
14
   RTC_WaitForLastTask();
15
   RTC_ITConfig(RTC_IT_SEC, ENABLE);
16
   RTC_WaitForLastTask();  
17
   RTC_SetPrescaler(25000);
18
   RTC_WaitForLastTask();
19
}
Gast #2758419
Lesenswert?

M. B. schrieb:
> Aus diesem Grund hatte ich ein Testprogramm für das MCBSTM32C Board
> geschrieben, und es funktioniert auch nicht! Ausser es wäre ein Hardware
> und Softwareproblem. wo ja auch nicht unmöglich wäre.

Was willst Du damit sagen?
Ich weiß immer noch nicht, ob bei Dir die Spannung an Vbat nun frei von 
Spannungseinbrüchen ist.
(Firma: EleLa - www.elela.de) #2758445
Lesenswert?

Welche Revision hat Dein Prozessor?

Ich hatte letztens auch enorme Probleme mit einem STM32F417VG.
Die Revision A hatte alle möglichen Probleme, zu viel Stromverbrauch der 
Batterie bis hin zum Datenverlust.

Als ich die Revision Z einlötete waren die Probleme beseitigt.

Im Errata stand nichts.

Wenn das mit dem STM32F103 nicht klappt, empfehle ich den STM32F4xx, den 
bei dem wurde einiges in der Peripherie erweitert und deutlich 
verbessert.
Abgesehen davon hat der auch 4KB Backup-RAM.
#2758451
Lesenswert?

@  Markus Müller (mmvisual)

>Welche Revision hat Dein Prozessor?

>Die Revision A hatte alle möglichen Probleme, zu viel Stromverbrauch der
>Batterie bis hin zum Datenverlust.

>Als ich die Revision Z einlötete waren die Probleme beseitigt.

WOW! ST hat nur 25 Revisionen gebraucht, um das Ding bugfrei zu 
bekommen. RESPEKT! ;-)
Gast #4500789
Lesenswert?

Ich hatte über die letzten Tage ein ähnliches Problem. Ich nutze das 
Olimex P-103 Board.
Ich wollte Daten im Backup-Register halten, sobald die Versorgungsspg. 
weg fällt. Ich habe eine Buffer-Batterie an VBat angeschlossen und zuvor 
die Verbindung (Löt-Jumper) zur restlichen +3V3 getrennt.

Leider war das Backup-Register meistens zurückgesetzt (=0), nachdem ich 
die Versorgungs-Spg. kurz unterbrochen hatte. Leider war dieses Phänomen 
auch nicht immer ersichtlich... Nur ein Reset über den HW-Button zeigte 
ein richtiges Verhalten.

---> Lösung: Ein 100nF Kondensator parallel zur Batterie.
Gast #4553512
Lesenswert?

Simon schrieb:
> ---> Lösung: Ein 100nF Kondensator parallel zur Batterie.

Genau wegen diesem Kondensator bin ich auf den Thread hier gestoßen. In 
den ganzen ANs wird der weggelassen, ich habe hier gerade ein Design, wo 
ich ihn einfach vergessen hab, ohne drüber nachzudenken.
Kann das ein Problem werden? Könnte den notfalls hässlich mit dazulöten. 
Habt ihr da weitere Erfahrung?

Was ist außerdem mit dem Ladestrom? Ich hab ne schnell ansteigende Vdd, 
sicher unter 1ms. An VBat hängt eine CR2032. Laut diverser Datenblätter 
(Ich habe die Panasonic Manganese Dioxide Lithium Coin Batteries) sind 
maximal 10 mA zugelassen, vermutlich damit nichts ausläuft oder so. Und 
man soll im Leben maximal 3% nachladen. Leider finde ich zum 
STM32L476VGT6, den ich einsetze, keine Spezifikation der Höhe des 
möglichen Rückwärtsstroms... Es ist ja davon auszugehen, dass die Diode 
relativ schwach ist. Eine entsprechende Messmöglichkeit fehlt mir hier 
auch. Gibts da Erfahrungswerte?

Danke euch!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren