2 Kanal Dimmer auf STM32 Basis zur Diskussion
Moderator: Co-Administratoren
-
- Beiträge: 129
- Registriert: 01.02.2017, 17:08
- Hat sich bedankt: 50 Mal
- Danksagung erhalten: 10 Mal
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
So, habe das EEPROM gewechselt. Hat aber nichts geändert.
Ich habe dann mal das Beispiel Sketch aus der Arduino IDE für das EEPROM geflasht. Ich bin damit aber nicht vertraut und weiß nicht, was da für Meldungen im Falle eines Fehlers kommen. Auf jeden Fall kamen keine Errors und es ließen sich alle Befehle mit entsprechenden Rückmeldungen aufrufen (habe leider keine Screenshots gemacht).
Ich werde das Gerät jetzt erstmal in die Schublade packen und die Gartengeräte winterfest machen.
Gruß
Hans-Jürgen
Ich habe dann mal das Beispiel Sketch aus der Arduino IDE für das EEPROM geflasht. Ich bin damit aber nicht vertraut und weiß nicht, was da für Meldungen im Falle eines Fehlers kommen. Auf jeden Fall kamen keine Errors und es ließen sich alle Befehle mit entsprechenden Rückmeldungen aufrufen (habe leider keine Screenshots gemacht).
Ich werde das Gerät jetzt erstmal in die Schublade packen und die Gartengeräte winterfest machen.
Gruß
Hans-Jürgen
Raspberrymatic als VM auf Proxmox (Fujitsu Esprimo) mit HB-RF-USB und 34 Geräte (18 x Eigenbau)
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox
-
- Beiträge: 435
- Registriert: 26.01.2019, 13:39
- Wohnort: Wolfenbüttel
- Hat sich bedankt: 126 Mal
- Danksagung erhalten: 100 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Installiere mal bitte die Version 2019.7.28 für die STMduino Boardpakete.
Damit läuft es bei mir jedenfalls.
Damit läuft es bei mir jedenfalls.
-
- Beiträge: 12115
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2150 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Mit der Version läuft es auch bei mir!
ABER:
Unmittelbar nach dem Flashen mittel STLink startet der Sketch automatisch.
Danach findet weder der I2C Scanner den EEPROM, noch klappt das Speichern der Config beim FreqTest.
Erst wenn ich den STM 1x abziehe (kpl. stromlos machen), dann geht alles.
Auf jeden Fall belasse ich meine IDE erstmal auf Boardversion 2019.7.28.
ABER:
Unmittelbar nach dem Flashen mittel STLink startet der Sketch automatisch.
Danach findet weder der I2C Scanner den EEPROM, noch klappt das Speichern der Config beim FreqTest.
Erst wenn ich den STM 1x abziehe (kpl. stromlos machen), dann geht alles.
Auf jeden Fall belasse ich meine IDE erstmal auf Boardversion 2019.7.28.
-
- Beiträge: 705
- Registriert: 22.05.2018, 10:23
- Hat sich bedankt: 24 Mal
- Danksagung erhalten: 120 Mal
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Den STM-Kram habe ich mit STM32F1:2017.9.5 entwickelt. Da hat eigentlich alles gut funktioniert.
Anfragen zur AskSin++ werden nur im Forum beantwortet
-
- Beiträge: 12115
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2150 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
2017 sogar.
Mag sein, dass das alte Zeug gut stabil ist.
Wenn man die Boardunterstützung neu installiert, bekommt man zwangsläufig erstmal die neueste Version.
Mag sein, dass das alte Zeug gut stabil ist.
Wenn man die Boardunterstützung neu installiert, bekommt man zwangsläufig erstmal die neueste Version.
-
- Beiträge: 129
- Registriert: 01.02.2017, 17:08
- Hat sich bedankt: 50 Mal
- Danksagung erhalten: 10 Mal
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Habe mich doch nochmals aufgerafft und ein wenig weiter experimentiert.
Folgendes habe ich gemacht:
Einen neuen STM32 geflasht, die vorgeschlagenen Boardversionen getestet (vorher hatte ich ja schon mal das EEPROM gewechselt).
Alle Komponenten auf der Platine sowie die Verbindungen kontrolliert und durchgemessen.
Habe aber nach wie vor keine Funktion.
Dann habe ich das Beispiel Skript aus der Arduino IDE geflasht. Der Screenshot hängt dran. Ich ihn aber leider nicht interpretieren (habe keine Ahnung davon ) als nächstes dann nochmal den Freq. Test laufen lassen. Was bedeute die Meldung "ERROR EPROM WAIT" mit anschließendem "stored!"? Ist der Wert dann doch gespeichert worden? Und hier ein Screenshot des Logfiles von der CCU: Aber wie ich schon sagte, ich erwarte kein Brainstorming. Das ist wirklich nur aus reinem Interesse .
Gruß
Hans-Jürgen
Folgendes habe ich gemacht:
Einen neuen STM32 geflasht, die vorgeschlagenen Boardversionen getestet (vorher hatte ich ja schon mal das EEPROM gewechselt).
Alle Komponenten auf der Platine sowie die Verbindungen kontrolliert und durchgemessen.
Habe aber nach wie vor keine Funktion.
Dann habe ich das Beispiel Skript aus der Arduino IDE geflasht. Der Screenshot hängt dran. Ich ihn aber leider nicht interpretieren (habe keine Ahnung davon ) als nächstes dann nochmal den Freq. Test laufen lassen. Was bedeute die Meldung "ERROR EPROM WAIT" mit anschließendem "stored!"? Ist der Wert dann doch gespeichert worden? Und hier ein Screenshot des Logfiles von der CCU: Aber wie ich schon sagte, ich erwarte kein Brainstorming. Das ist wirklich nur aus reinem Interesse .
Gruß
Hans-Jürgen
- Dateianhänge
-
- History.csv
- (16.7 KiB) 34-mal heruntergeladen
Raspberrymatic als VM auf Proxmox (Fujitsu Esprimo) mit HB-RF-USB und 34 Geräte (18 x Eigenbau)
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox
4 x Amazon Alexa, ioBroker
Remote Control via TinyMatic und VPN
Motion Eye und ioBroker auf Proxmox
-
- Beiträge: 12115
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2150 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Probier bitte mal den I2C-Scanner, ob der EEPROM überhaupt erkannt wird.
Ggf. musst du Serial3 noch ändern... weiß nicht, welchen seriellen Port du nutzt.
Wenn der nix findet... 1x den STM32 stromlos machen.
Wenn dann immer noch nix kommt... evtl. doch ein HW-Problem? Die Pullup Widerstände am I2C hast du verbaut?
Ggf. musst du Serial3 noch ändern... weiß nicht, welchen seriellen Port du nutzt.
Code: Alles auswählen
#include <Wire.h>
void setup()
{
Wire.begin();
Serial3.begin(57600);
while (!Serial3);
Serial3.println("\nI2C Scanner");
}
void loop()
{
byte error, address;
int nDevices;
Serial3.println("Scanning... ");
nDevices = 0;
for(address = 1; address < 127; address++ )
{
// The i2c_scanner uses the return value of
// the Write.endTransmisstion to see if
// a device did acknowledge to the address.
Wire.beginTransmission(address);
error = Wire.endTransmission();
if (error == 0)
{
Serial3.print("I2C device found at address 0x");
if (address<16)
Serial3.print("0");
Serial3.print(address,HEX);
Serial3.println(" !");
nDevices++;
}
else if (error==4)
{
Serial3.print("Unknown error at address 0x");
if (address<16)
Serial3.print("0");
Serial3.println(address,HEX);
}
}
if (nDevices == 0)
Serial3.println("No I2C devices found\n");
else
Serial3.println("done\n");
delay(5000); // wait 5 seconds for next scan
}
Wenn dann immer noch nix kommt... evtl. doch ein HW-Problem? Die Pullup Widerstände am I2C hast du verbaut?
- stan23
- Beiträge: 2038
- Registriert: 13.12.2016, 21:14
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Altmühltal
- Hat sich bedankt: 585 Mal
- Danksagung erhalten: 336 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Das "stored" kommt in Zeile 167 sofern sich die Zugriffe in den Zeilen davor nicht aufhängen.
Leider bieten die Funktionen clear(), setByte() und validate() keine Fehlerbehandlung an, sonst könnte man auswerten ob das Speichern erfolgreich war.
Viele Grüße
Marco
RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)
Marco
RaspberryMatic als VM auf einem NUC mit Proxmox und USB-Funkmodul
~80 Geräte (HM, HmIP, HMW, HBW, AskSin)
-
- Beiträge: 1793
- Registriert: 30.08.2017, 23:25
- Hat sich bedankt: 175 Mal
- Danksagung erhalten: 399 Mal
- Kontaktdaten:
Re: 2 Kanal Dimmer auf STM32 Basis zur Diskussion
Wenn es so viele Probleme beim STM32 mit dem EEPROM gibt, vielleicht anschließend (nur im STM32 Fall) sc.getByte für beide Bytes durchführen um im Log auszugeben ob das Schreiben erfolgreich war?
Dann weiß man woran man ist.
Dann weiß man woran man ist.
Viele Grüße,
Tom
Tom