Neue Hardware STM32L151 in AskSin

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Horbi » 25.01.2021, 17:28

Asselhead hat geschrieben:
25.01.2021, 17:19

Bin dran - dauert aber noch etwas.....10 Euro müsste machbar sein - der STM32L151C8T6A kostet bei JLCPCB unter 2€.

Hab nur mal angefangen - Formfaktor muss man noch mal überdenken - wäre so 25,4mm x 25,4mm.
JLCPCB bestückt leider keine Lpl. mit castellated holes :cry:
Sehr cool!!!!
Wir sollten uns bzgl Pinbelegung unterhalten.
Damit wir alle Schnittstellen zur Verfügung haben, aber nicht alle Pins nach draussen legen müssen.
Ich denke Rechteckig wäre besser - sollte ja auch für einen Schalter zwischen zwei AAA Batterien passen :-)

Asselhead
Beiträge: 308
Registriert: 07.02.2019, 17:04
System: CCU
Wohnort: Niederrhein
Hat sich bedankt: 56 Mal
Danksagung erhalten: 147 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Asselhead » 25.01.2021, 17:32

Horbi hat geschrieben:
25.01.2021, 17:28
Asselhead hat geschrieben:
25.01.2021, 17:19

Bin dran - dauert aber noch etwas.....10 Euro müsste machbar sein - der STM32L151C8T6A kostet bei JLCPCB unter 2€.

Hab nur mal angefangen - Formfaktor muss man noch mal überdenken - wäre so 25,4mm x 25,4mm.
JLCPCB bestückt leider keine Lpl. mit castellated holes :cry:
Sehr cool!!!!
Wir sollten uns bzgl Pinbelegung unterhalten.
Damit wir alle Schnittstellen zur Verfügung haben, aber nicht alle Pins nach draussen legen müssen.
Ich denke Rechteckig wäre besser - sollte ja auch für einen Schalter zwischen zwei AAA Batterien passen :-)
Ich hatte mir "so klein wie möglich" abgespeichert.
Anbieten würde sich aber ein "BluePill-STM32L151-RF" - da wäre massig Platz drauf und man könnte die Pinbelegung übernehmen.
Die Pinbelegung von STM32L und STM32F ist auch "sozusagen" kompatibel (im 48er Gehäuse).

Bin für alles offen...
Viele Grüße

Stefan

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Neue Hardware STM32L151 in AskSin

Beitrag von jp112sdl » 25.01.2021, 18:44

Horbi hat geschrieben:
25.01.2021, 16:13
Den letzten Stand der AskSin pullen
Hm... Travis baut jetzt den "Alt-Bestand" der STM32-Projekte von pa-pa nicht mehr.
Soll/muss das so?

Code: Alles auswählen

...
In file included from /home/travis/build/pa-pa/AskSinPP/examples/stm32/HB-DoorBell/HB-DoorBell.ino:14:0:
920/home/travis/.arduino15/packages/stm32duino/hardware/STM32F1/2020.6.20/libraries/EEPROM/EEPROM.h:13:36: error: expected '>' before numeric constant
921   #define EEPROM_PAGE_SIZE (uint16)0x400  /* Page size = 1KByte */
922                                    ^
923/home/travis/Arduino/libraries/AskSinPP/Storage.h:189:54: note: in expansion of macro 'EEPROM_PAGE_SIZE'
924 template <uint8 ID,uint16_t EEPROM_NUM_PAGES,uint8_t EEPROM_PAGE_SIZE>
925                                                      ^
926/home/travis/.arduino15/packages/stm32duino/hardware/STM32F1/2020.6.20/libraries/EEPROM/EEPROM.h:13:36: error: expected '>' before numeric constant
927   #define EEPROM_PAGE_SIZE (uint16)0x400  /* Page size = 1KByte */
928                                    ^
929/home/travis/Arduino/libraries/AskSinPP/Storage.h:335:45: note: in expansion of macro 'EEPROM_PAGE_SIZE'
930 template <uint8_t ID,uint16_t PAGES,uint8_t EEPROM_PAGE_SIZE>
931                                             ^
932In file included from /home/travis/Arduino/libraries/AskSinPP/AskSinPP.h:60:0,
933                 from /home/travis/build/pa-pa/AskSinPP/examples/stm32/HB-DoorBell/HB-DoorBell.ino:15:
934/home/travis/Arduino/libraries/AskSinPP/Storage.h:336:62: error: could not convert template argument '1024u' to 'uint8_t (*)(uint16) {aka unsigned char (*)(short unsigned int)}'
935 class CachedAt24cX : public at24cX<ID,PAGES, EEPROM_PAGE_SIZE> {
...

Offline in der heimischen Arduino IDE kompiliert auch nix mehr mit der "Maple Mini" Boardeinstellung.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Horbi » 25.01.2021, 19:28

Nein, natürlich nicht.
Wobei ich gerade nicht weiß warum. Alle Änderungen habe ich in ifdef's gemacht.
Ich musste nach Absprache nur die Variablennamen ersetzen.

PAGESIZE => EEPROM_PAGE_SIZE

PAGES => EEPROM_NUM_PAGES

RTC => RealTimeClock

Muss gerade noch mit Sohnemann bisschen lernen, ich schau dann später noch rein.

papa
Beiträge: 705
Registriert: 22.05.2018, 10:23
Hat sich bedankt: 24 Mal
Danksagung erhalten: 120 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von papa » 25.01.2021, 22:41

Build ist wieder gefixt. Leider haben die neuen Namen woanders Probleme verursacht.
Für die RTC habe ich ein TypeDef für die Rückwärtskompatibilität gemacht. Somit sollte alles wieder gehen.

Platine finde ich Top. Hab ich auch Interesse.
Anfragen zur AskSin++ werden nur im Forum beantwortet

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Horbi » 27.01.2021, 16:22

Kurzes Update zum Stromverbrauch
Ich habe rudimentär die LowPower.h lib in die AskSin implementiert und einen ersten Test gemacht.

Das Bluepill-Ähnliche Board (hat einen Spannungsregler) mit angeschlossenem Funkmodul und braucht 26ma
Selbes Setup mit savePower<Idle<true> braucht 21ma

Das ist weniger als die Hälfte von einem STM32F103 Setup und bewegt sich auf dem Niveau vom AVR328

Wie gesagt, das ist ein erster Eindruck - more to come...

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Horbi » 02.02.2021, 16:07

Und hier das versprochene Update.

Ich habe die Powersaving Funktionen jetzt soweit implementiert. Diesmal sollte auch das Kompilieren von anderer Hardware nicht betroffen sein, da wirklich alle Änderungen in ifdef's für STM32L1xx sitzen.

Der Stromverbrauch sieht schon ohne weitere Optimierung recht gut aus.
Im deepSleep mit laufendem RTC zum Aufwachen komme ich auf 0,25mA, im SleepForever komme ich auf ~1uA.

Ich mache mich als nächstes an den BatterySensor.

Interessant wird dann auch noch die Funktion des PVD
The device features an embedded programmable voltage detector (PVD) that monitors the
VDD/VDDA power supply and compares it to the VPVD threshold. This PVD offers 7 different
levels between 1.85 V and 3.05 V, chosen by software, with a step around 200 mV. An
interrupt can be generated when VDD/VDDA drops below the VPVD threshold and/or when
VDD/VDDA is higher than the VPVD threshold. The interrupt service routine can then generate
a warning message and/or put the MCU into a safe state.


Damit sollte es keinen BI mehr geben...

TomMajor
Beiträge: 1793
Registriert: 30.08.2017, 23:25
Hat sich bedankt: 175 Mal
Danksagung erhalten: 399 Mal
Kontaktdaten:

Re: Neue Hardware STM32L151 in AskSin

Beitrag von TomMajor » 02.02.2021, 16:29

Horbi hat geschrieben:
02.02.2021, 16:07

Im deepSleep mit laufendem RTC zum Aufwachen komme ich auf 0,25mA, im SleepForever komme ich auf ~1uA.


Interessant wird dann auch noch die Funktion des PVD
The device features an embedded programmable voltage detector (PVD) that monitors the
VDD/VDDA power supply and compares it to the VPVD threshold. This PVD offers 7 different
levels between 1.85 V and 3.05 V, chosen by software, with a step around 200 mV. An
interrupt can be generated when VDD/VDDA drops below the VPVD threshold and/or when
VDD/VDDA is higher than the VPVD threshold. The interrupt service routine can then generate
a warning message and/or put the MCU into a safe state.


Damit sollte es keinen BI mehr geben...
Die 0,25mA wären zu viel und ist ev. ein Schreibfehler? Eine Seite weiter vorne schriebst du von 0,9uA Standby + RTC.

So einfach ist es mit dem BI nicht, siehe meine Beschreibung von Jeromes BI
https://github.com/TomMajor/SmartHome/t ... april-2020
er entsteht dort außerhalb der SW Kontrolle des AVR, also wird dir in diesem Fall die PVD nichts nützen.
Die beste BI Protection ist eine ohne SW, nur in HW.
Viele Grüße,
Tom

Asselhead
Beiträge: 308
Registriert: 07.02.2019, 17:04
System: CCU
Wohnort: Niederrhein
Hat sich bedankt: 56 Mal
Danksagung erhalten: 147 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Asselhead » 02.02.2021, 17:45

Die aktive Babbling Idiot Protektion (Widerstände+FET)
habe ich wieder mit in die Schaltung genommen. Reset Baustein sehe ich auch vor. Kann man ja im Zweifelsfall unbestückt lassen.

Sollte man den CC1101 ggf. über den P-Kanal FET schaltbar machen?

@Horst: Den Uhrenquarz brauchen wir definitiv nicht?
Viele Grüße

Stefan

Horbi
Beiträge: 199
Registriert: 29.05.2019, 12:51
Hat sich bedankt: 19 Mal
Danksagung erhalten: 65 Mal

Re: Neue Hardware STM32L151 in AskSin

Beitrag von Horbi » 02.02.2021, 18:59

TomMajor hat geschrieben:
02.02.2021, 16:29
Die 0,25mA wären zu viel und ist ev. ein Schreibfehler? Eine Seite weiter vorne schriebst du von 0,9uA Standby + RTC.

So einfach ist es mit dem BI nicht, siehe meine Beschreibung von Jeromes BI
https://github.com/TomMajor/SmartHome/t ... april-2020
er entsteht dort außerhalb der SW Kontrolle des AVR, also wird dir in diesem Fall die PVD nichts nützen.
Die beste BI Protection ist eine ohne SW, nur in HW.
Die 9uA sind aus dem Datenblatt, hatte ich auch so geschrieben. Die beziehen sich auf den Chip ohne Funkmodul, etc.
Ich habe in meinem Setup ein Funkmodul an einem Bluepill Board von dem ich den Spannungsregler entfernt habe.
Außerdem ist das ganze noch nicht optimiert, sind halt Standard Einstellungen aus der Arduino Implementation.

Für mich ist es im Moment wichtig, das ganze erst einmal ans Laufen zu bekommen, so das es eine valide Plattform zum optimieren gibt.
Bei meiner Vergleichsmessung - und ich habe kein dolles Messequipment - komme ich bei einem AVR328 in einem HMSensor auf einen ähnlichen Wert (0,22mA)

Sollte man den CC1101 ggf. über den P-Kanal FET schaltbar machen?
Aus meiner Sicht lohnt das nicht, das Funkmodul braucht im Standby so gut wie nichts. Die 1uA im SleepForever sind ja mit Funkmodul gemessen.
@Horst: Den Uhrenquarz brauchen wir definitiv nicht?
Bis jetzt läuft der rtc recht anständig mit dem eingebauten Quarz. Den Teiler habe ich runter setzen müssen, da ich einen Millisekundentakt für die Wakeup Funktion gebraucht habe. Insofern spielt die Genauigkeit eine untergeordnete Rolle.

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“