Vypínač pro RPi
Vypínač pro RPi
Snažím se pokročit s mým robotem a skončil jsem u problému korektního vypínání Raspberry Pi. Prohledal jsem spoustu zdrojů, ale nějak jsem nenarazil na očekávané řešení.
Požadavek:
1. tlačítkem zapnu napájení pro RPi
2. delším stisknutím tlačítka zahájím vypínání RPi, po jeho vypnutí se odpojí zdroj
Dohledal jsem nějaké postupy pro externí spuštění shutdownu a snad i nějakou indikaci, že je vypínaní ukončeno.
Z testů to vypadá, že to vypnutí nějak proběhne (ale na připojeném monitoru to vypadá jinak než shutdown ze systému), ta indikace, že je vypnutí
dokončeno je nějaká "podivná". Ale snad to nějak půjde.
Takže jsem navrhl zapojení (inteligenci zajišťuje STM32 - BluePill), které bude realizovat připojování a odpojování zdroje a generování signálu shutdown pro RPi a kontrolu, zda už může odpojit zdroj. Na prkénku (bez připojení RPi) mi to funguje. Můžete se na to kouknout a případně nahodit nějaké připomínky než budu navrhovat dps?
Díky
Požadavek:
1. tlačítkem zapnu napájení pro RPi
2. delším stisknutím tlačítka zahájím vypínání RPi, po jeho vypnutí se odpojí zdroj
Dohledal jsem nějaké postupy pro externí spuštění shutdownu a snad i nějakou indikaci, že je vypínaní ukončeno.
Z testů to vypadá, že to vypnutí nějak proběhne (ale na připojeném monitoru to vypadá jinak než shutdown ze systému), ta indikace, že je vypnutí
dokončeno je nějaká "podivná". Ale snad to nějak půjde.
Takže jsem navrhl zapojení (inteligenci zajišťuje STM32 - BluePill), které bude realizovat připojování a odpojování zdroje a generování signálu shutdown pro RPi a kontrolu, zda už může odpojit zdroj. Na prkénku (bez připojení RPi) mi to funguje. Můžete se na to kouknout a případně nahodit nějaké připomínky než budu navrhovat dps?
Díky
Naposledy upravil(a) MartinL dne 24 led 2024, 17:47, celkem upraveno 3 x.
Re: Vypínač pro RPi
Jakým způsobem voláš to vypnutí v RPi? Příkaz "shutdown -h now" by měl mít stejný účinek ať už ho napíšeš nebo ho napíše nějaký skript
"all your robots are belong to us"
robodoupe.cz
robodoupe.cz
Re: Vypínač pro RPi
Pro vyvolání vypínání používám něco, co nazývají: Boot Overlay
Popis např. zde: https://gist.github.com/lbussy/9e81cbcc ... 3bd42e7775
Ano je tam i varianta s využitím scriptu, ale já nějak pořád tíhnu k řešení, které není nutné "programovat".
Popis např. zde: https://gist.github.com/lbussy/9e81cbcc ... 3bd42e7775
Ano je tam i varianta s využitím scriptu, ale já nějak pořád tíhnu k řešení, které není nutné "programovat".
Re: Vypínač pro RPi
Já to měl udělané mnohem primitivnější cestou - po startu se v pozadí pustil skript, který ve smyčce kontroloval GPIO pin. Když byl stažen k zemi, tak ještě chviličku počkal a když to stažení nezmizelo, tak zavolal ten shutdown. Fungovalo to hezky
"all your robots are belong to us"
robodoupe.cz
robodoupe.cz
Re: Vypínač pro RPi
Toto funguje i s použitím Boot overlay, ale horší je ta druhá část, vypnutí napájení. To jest detekce, kdy už je možné odpojit napájení.
Re: Vypínač pro RPi
Tohle by Ti mohlo pomoct
https://unix.stackexchange.com/question ... e-shutdown
další service, který na jiný GPIO pošle změnu -> HW časovač s 555? a pak vypnutí.
https://unix.stackexchange.com/question ... e-shutdown
další service, který na jiný GPIO pošle změnu -> HW časovač s 555? a pak vypnutí.
Re: Vypínač pro RPi
Nestačilo by prostě cca minutu počkat a pak odpojit napájení? Pokud je RPi v korektním stavu, tak se za minutu (nebo dvě?) musí stačit vypnout, pokud je RPi zaseklé, tak by se to stejně řešilo odpojením napájení?
Re: Vypínač pro RPi
Záleží na tom, jak moc ostatních service se vypíná, jestli má raspi mountované zdroje a jak tyto zdroje vypadají.
Například síťové disky, ať už CIFS nebo NFS.
Raspi může být v polovině zápisu dat.
Tohle všechno za Tebe OS hlídá a nedovolí přechod do nižšího runlevelu dřív, než to je bezpečné.
Například síťové disky, ať už CIFS nebo NFS.
Raspi může být v polovině zápisu dat.
Tohle všechno za Tebe OS hlídá a nedovolí přechod do nižšího runlevelu dřív, než to je bezpečné.
Re: Vypínač pro RPi
Já bych malinko upozornil na možnosti úkroku stranou. Čínské jednodeskové počítače velmi rády používají power management typu AXP209, což je v plným názvem Enhanced single Cell Li-Battery and Power System Management IC. Takže zahrnuje nabíjení, vybíjení baterky, zapínací tlačítko, APM vypínací tlačítko a tak.
... jo a taky od něj mám datasheet a dělal jsem si do něj nějaké vlastní vychytávky pro management superkondenzátorů (ty jsou také dostupné, zejména pro RTC hodiny teda)
... jo a taky od něj mám datasheet a dělal jsem si do něj nějaké vlastní vychytávky pro management superkondenzátorů (ty jsou také dostupné, zejména pro RTC hodiny teda)
Za pravopisné chyby v této zprávě může moje učitelka češtiny.