Pro kutily: nové senzory do Turrisu změří kvalitu vzduchu, máte zájem?

@Yearling Hotových firmware (bez nutnosti “doprogramování” MCU) udržujeme několik - viz seznam níže.

Tyto předpřipravené firmwares (včetně firmware pro USB Dongle či Senzor) lze flashnout na MCU s pomocí BigClown Firmware Flasher, ten nainstalujete např. s pomocí Python pip pip install bcf (potřebujete Python 2.7 nebo 3.6) nebo je také součástí BigClown Firmware Windows Toolchain.

Utilita bcf umí stáhnout aktuální firmware z Gitu a flashnout do MCU (Dongle, Senzor, Core, …).

Chování firmware je popsán ve vzorových projektech v BigClown dokumentaci.

Pro “hotové řešení” bez “doprogramování” MCU Vám pak stačí bcf (ať instalovaný přes Python pip nebo zabalený do binárky PyInstaller v Toolchainu), kterým si bcf update stáhnete seznam aktuálních firmware, bcf pull stáhnete příslušný firmware a bcf flash flashnete firmware do MCU.

V případě USB Dongle a Senzoru pak máte hotový HW včetně krabiček, v případě komponent stavebnice BigClown HW “skládačku” (navolíte si senzory/aktory dle potřeby) bez krabičky. V obou případech máte hotový přímo použitelný firmware MCU (nemusíte psát kód pro MCU) s textovým sériovým rozhraním typu MQTT topics a datový payload (obecně JSON payload).

Toto textové rozhraní můžete použít v rámci Vašeho aplikačního SW nebo můžete použít HUB SW BigClown (zakončení do MQTT, integrace nad tím). Můžete se tedy věnovat vývoji vlastní aplikace nad textovým sériovým rozhraním nebo nad MQTT rozhraním.

Proč prosím toto řešení nesplňuje Vaše představy ?

bigclownlabs/bcf-climate-station:firmware-142pixel.bin:v1.0.1
bigclownlabs/bcf-climate-station:firmware-144pixel.bin:v1.0.1
bigclownlabs/bcf-climate-station:firmware-72pixel.bin:v1.0.1
bigclownlabs/bcf-generic-node:firmware-battery-mini.bin:v1.3.0
bigclownlabs/bcf-generic-node:firmware-battery.bin:v1.3.0
bigclownlabs/bcf-generic-node:firmware-power-module-RGB-150.bin:v1.3.0
bigclownlabs/bcf-generic-node:firmware-power-module-RGB-300.bin:v1.3.0
bigclownlabs/bcf-generic-node:firmware-power-module-RGBW-144.bin:v1.3.0
bigclownlabs/bcf-generic-node:firmware-power-module-RGBW-72.bin:v1.3.0
bigclownlabs/bcf-lcd-thermostat:firmware.bin:v.1.0.0-beta
bigclownlabs/bcf-ping-pong-table:firmware.bin:v1.0.0
bigclownlabs/bcf-sigfox-climate-monitor:firmware.bin:v1.0.1
bigclownlabs/bcf-sigfox-co2-monitor:firmware.bin:v1.0.0
bigclownlabs/bcf-sigfox-motion-detector:firmware.bin:v1.0.1
bigclownlabs/bcf-sigfox-pulse-counter:firmware.bin:v1.1.0
bigclownlabs/bcf-skeleton-core-module:firmware.bin:v1.0.0
bigclownlabs/bcf-usb-dongle:firmware.bin:v0.0.0-test
bigclownlabs/bcf-usb-gateway:firmware.bin:v1.3.0

Díky za info. Až bude čas na hraní, tak na to mrknu.

Novinka: Senzor (včetně Cloony samozřejmě) obstál při zkoušce odolnosti na elektromagnetické pole v automotive třídě.
To znamená, že HW funguje spolehlivě i v relativně náročném prostředí :wink:

3 Likes

Looks good. But why is this not in the english part of the forum???

+1 do panelaku me ovzdusi moc nezjima, ale detektory pochybu / potopeni, kamera a jeji stream… to by byla jina :slight_smile:

1 Like

It is there as well: Geeky gadgets for Turris: how do you feel about air quality sensors?

Oops. Sorry. Didn’t spot it.

Detektor pohybu na Senzoru může být (Když ho tam Turris Team bude chtít), bílá “čepice” na fotce uprostřed Senzoru je PIR čidlo.

Detektor zatopení podporujeme ve stavebnici BigClown kombinací LD-81 + Sensor Module + Core Module + napájení.

Do této sestavy lze přidat PIR PIR Module či další senzory ze stavebnice BigClown.

@Michal_BigClown
ležím teď s nějakým bacilem, tak jsem začal zkoumat BC. Vypadá to zajímavě. Do košíku jsem naházel komponenty na meteo centrálu za asi tři litry. Snad mně žena nezabije :smiley:

Ten LCD modul a Climate modul asi nejdou nějak jednoduše připojit oba najednou na ten core modul že?
A k tomu základnímu senzoru Climate,Core,MiniBatery by se šikla nějaká krabička, co odolá povětrnostním vlivům a s nějakým držákem na zeď. Ať si můžu udělat venkovní čidlo.

Ne, to nejdou, všechny moduly bez vrchního konektoru (např. LCD, Climate, PIR, Button) lze použít jen jako nejhornější.

Můžete to “kompenzovat” použitím Tag Module na který připojíte až 6 Tag senzorů nebo Encoder Module na který připojíte až 3 Tag senzory a encoder můžete využít jako ovládací prvek pro LCD.

Používám tyto https://www.i4wifi.cz/Krabice-pro-instalaci/venkovni/GentleBOX-JE-200-outdoor-krabice-vc-uchytu-na-stozar.html

Tady se dá také vybrat https://www.krabicky.cz/vodotesne.html?limit=60

Také se divím, že mě to nehrozí, hlavně kvůli času :wink:

Kamery stávající technologie na komoditní baterie (AAA Alkaline) s výdrží 2 roky nedají, na napájení rozumné kamery s kodekem potřebujete ~1W, což se běžně řeší po Ethernet kabelu s PoE.

Obdobně v ISM pásmu není dost místa na video streamy, proto se používá Ethernet či Wifi, což opět není pro bateriové napájení. Na trhu najdete hromadu IP kamer, méně (např. UniFi, …) či více chytrých (Axis, Sony, …).

1 Like

No myslel jsem něco jako je toto:

Stojánek lze oddělit a přišroubovat na zeď a senzor do něj zasunout paralelně se zdí:

Myslím, že sada MiniBattery, Core, Climate, pěkná, funkční krabička by se určitě hodila nejen mi.

Mimochodem, to malé lcd se občas hodí (když třeba vázně komunikace se senzorem)

Krabičky pro stavebnici dávají příliš mnoho možností (výška, šířka, zakončení pro senzory, lcd, tlačítko, PIR, …) než aby bylo za rozumnou cenu možné vyrobit (formy, variabilita). Proto pro venkovní použití zatím používáme univerzální krabičky a pro vnitřní máme tisknutelné modely (ve spolupráci s partnery připravujeme možnost kupovat výtisky krabiček). Možná někdy v budoucnu přidáme jednoúčelové produkty bez variability (jako např. Senzor pro vnitřní prostředí nebo USB Dongle) pro vnější prostředí, zatím se zaměřujeme na stavebnici.

Obdobně u LCD, u segmentových je použití omezeno na určité aplikace, zatímco grafické umožňují cokoli poskládané z jednotlivých bodů.

Tak ony ty Climate a PIR senzory mají v podstatě předem dáno, jaké moduly jsou potřeba (mini battery, core a Climate/PIR) a tím je určena i výška. Takže stačí jedna krabička, maximálně u toho PIR detektoru s nějakou dírou navíc :wink: A dalo by se to prodávat ve výhodném setu :sunglasses:

Ad malé LCD)
Mohlo by být součástí toho climate modulu (případně by tam mohl být jen konektor na jeho připojení). Protože LCD a Climate modul nejdou požít najednou. Ale to je jen takový nápad, třeba mi jeho absence vadit nebude.

Já si zatím objednal základ budoucí centrály, trochu si s tím pohraji a pak doobjednám věci na externí senzor a snad mezitím bude i ten usb dongle. Případně jsem pochopil, že můžu místo něj použít Core modul.

Ještě dotaz. Musím po resetu hlavní jednotky/nahrání nového fw znova párovat všechny senzory? To je totiž hlavní bolest aktuální meteostanice.

Pokud se nemění struktura konfigurace (např. podstatně vyšší verzí SDK), párování zůstává zachováno, protože je uloženo v EEPROM MCU, jejíž obsah se nemění při nahrání nového firmware (ten se ukládá do Flash paměti MCU).

Několik Senzorů s plně osazenými senzory téměř připravených k distribuci:

1 Like

Climate i PIR mohou být ve stacku např. s širším Battery Module s dvojnásobně větší výdrží (větší odstup antény od kovových částí a snižující DC/DC měnič zlepšují také parametry rádiového přenosu) a s CO2 Module, mění se tím šířka i výška.

Smysluplných kombinací modulů a tagů může vzniknout více.

Při takové kombinaci se k senzorům rozumně nedostane měřené médium (problematické mechanické uspořádání), LCD lze se senzory kombinovat s pomocí tagů a Tag Module nebo jiných modulů s tag konektory (Battery, CO2, Power, Encoder).

Díky.
Balíček mi konečně dorazil. Státní svátek dokonale zmátl systém DPD, ten mi poslal špatné info o doručení, takže když mi kurýr volal, byl jsem někde úplně jinde :smiley:

Teď to zkoumám. Možná blbý dotaz, ale když nasadím LCD modul na core - jak se dostanu k těm tlačítkům na core?

A jedna připomínka k SDK dokumentaci. Většina modulů je popsána hodně stručně. V podstatě jen bc_led obsahuje ukázku použití. Jinde jsem to již nenašel. A protože nejsem moc zvyklý číst SDK, je pro mně jediná možnost, jak rychle zjistit co a jak, prozkoumávat vzorové projekty, třeba termostat a climate-station. Jenže tam se občas používají funkce, které nejsou popsány v SDK. Třeba termostat volá funkce bc_module_core_pll_enable a bc_module_core_pll_disable, které nejsou v SDK vůbec popsány a nemám páru, proč se volají a co je PLL.

Bylo by možné doplnit SDK o nějaké detailnější popisy včetně základní ukázky použití? Třeba právě bc_eeprom: napsat k čemu se mi to může hodit a kolik mám té paměti k dispozici.

Nebo jsem hledal jak správně inicializovat a použít encoder module. To v SDK není, našel jsem v projektu termostatu. Případně podobný problém - jak inicializovat tlačítka na LCD modulu.

Žádný dotaz není blbý. K tlačítkům na Core se po nasazení modulu nad Core nedostanete. Dá se to řešit zopakováním tlačítek (příslušné signály jsou na Header konektoru Modulu) nebo používáním tlačítek na LCD Module, které obě ovládají BOOT signál. Obě tlačítka na LCD Module generují stisky BOOT tlačítka - je vidět ze schematu LCD Module nebo jsou čitelná (rozlišitelná) přes expander. RESET tlačítko na LCD Module není (také není v aplikačním použití většinou potřeba), lze suplovat drátěnou propojkou RESET signálu a GND na Header konektoru.

Ano, každá dokumentace má své limity a chyby, když na něco narazíte, můžete poslat opravu (pull request), zaznamenat na GitHubu v podobě issue https://github.com/bigclownlabs/bcf-sdk-core-module/issues nebo jen poslat dotaz na fórum či emailem ask@bigclown.com.

Můžete se také podívat do kódu, tam leží vždy pravda :wink: Pomáhají také komentáře v kódu - je vidět i v tomto případě.

PLL je jednoduše řečeno násobička frekvence hodin (kmitočet hodinového signálu). Použitý MCU má zabudovaný RC oscilátor 16MHz. Když je třeba vyšší frekvenci pro CPU nebo jinou periferii (např. 48MHz pro USB), používá k tomu MCU PLL. Když MCU PLL použije, má to dopad na vyšší spotřebu energie (čím větší frekvence, tím větší spotřeba a nastartování/stabilizování PLL trvá nějaký čas, kdy je třeba MCU napájet zvýšeným přísunem energie). Proto pokud není třeba fekvence hodin větší než 16MHz, je rozumné PLL zakázat a šetřit energii. Když jde o výpočetně náročnější operace, je zase energeticky úspornější PLL zapnout, zpracovat s CPU na 32MHz a ušetřit energii za zkrácení doby, po kterou je nutné CPU dodávat statickou spotřebu. Nebo když má fungovat USB, tak se bez PLL neobejde.

Popis SDK je spíše referenční příručka. Ukázky použití směrujeme do projektů, návodů, code snippets a příkladů přímo v SDK adresář _examples. Chystáme teď novou podobu dokumentace, tak nám držte palce ať se nám podaří vypublikovat co nejdříve. Za náměty ke zlepšení budeme rádi, nejlépe formou GitHub issue k projektu dokumentace nebo emailem na ask@bigclown.com.

Použitý MCU má 6kB EEPROM. Ve vzorových projektech používáme na ukládání perzistentní konfigurace např. vzájemné spárování Core v roli base s Core v roli remote.

Pokud z toho není zřejmé, doporučuji issue k SDK nebo dotaz na ask@bigclown.com.

Díky, jak píši, na čtení SDK nejsem zvyklý - si z toho suchého popisu funkcí a parametru nedokáži sestrojit nějaký funkční základ. Ale jak už je na čem stavět, pak už s tím většinou problém nemám.

Ledku jsem rozblikal, a aktuálně mám problém s “nefunkčním” LCD. A nevím co dělám špatně :frowning: