Van nekem egy szoba-automatizálási projektem (https://github.com/gaborauth/RoomAutomation), ami ugye nyílt forrású meg ilyesmi, tud néhány dolgot, mér ezt-azt és a mérés eredményét elküldi a saját felhőmbe:
A kérdésem az lenne, hogy van-e érdeklődés szerintetek egy olyan "felhős" megoldásra, ahova egyszerűen be lehet küldeni adatokat, amelyek ott megőrződnek és grafikonon ábrázolódnak? Tehát (egyelőre) semmi komplexitás, csak annyi, hogy beküldött mérési eredményeket tárol és azokból rajzol grafikont?
Update
Na, kiraktam publikusan elérhetően, hogy miről is van szó nagyjából: https://iothub.live/
Elvileg működik a lehető legegyszerűbb workflow:
- signup -> kapsz egy azonosítót és egy jelszót
- login -> be tudsz lépni
- nodes -> az IoT mérőeszközök listája
- field -> egy tetszőleges mérés
-> measurement -> a kiválasztott mérés grafikonja
A grafikonokon 5 percenként aggregálva jelennek meg az adatok.
Hozzászólások
Ha SaaS-ban gondolkodsz, akkor van ilyen. Ha otthoni, self-hosted megoldást értünk felhő alatt, olyat nem ismerek (de ettől még létezhet).
SaaS-ban gondolkodom. Igen, van ilyen, de mindegyik (el)rettentően komplex szolgáltatás.
Szerintem ha rendkívüli egyszerűség a cél, akkor jó ötlet. Valami faék API és kész. Minél kevesebb kapcsoló meg paraméter. Találja ki a szerver oldal hogyan jó megjeleníteni, ne kelljen az adat küldőnek ezzel foglalkozni.
Adat bányász technológiával és tanuló algoritmusokkal is megtoldhatod.
Amúgy nem foglalkoztam a kérdéssel, tehát nem tudom hogy van-e hasonló.
Amit jelenleg használok, az egyszerű, mint a faék: REST interfészen megy be a mért érték és ebből rajzolok grafikont vagy grafikonokat. És ennyi... :)
Azt nem tudom, hogy van-e igény ilyen faék egyszerű megoldásra, mert akkor beleteszek egy kis munkát és kinyitom, hogy akárki használhassa.
Nem tudom hogy van-e széles körben igény. Mi lenne ha csinálnál egy szavazást erről, vagy megkérdeznéd az embedded topikban? Vagy esetleg ezek mellett még reddit vagy SO vagy egyéb helyen. Bár kérdés hogy ott mennyire engedik az ilyen jellegű piackutatást.
-1, csinalni kell egy mvp-t, aztan hadd szoljon: reklamozni, promotalni, minel tobb embert ravenni, hogy probaljak ki, aztan remenykedni, hogy X%-uk marad, es fizet.
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
Ja, errefelé hajlok... találtam néhány hasonló szolgáltatás, de azok is körülményesek. Megpróbálom faék egyszerűen. :)
az https://xkcd.com/927/ .
van sok jo monitoring rendszer (nagios, icinga, zabbix, grafana, stbstb), valamelyik mar most is fut sokaknal. na azokhoz csinalni valami konnyu kapcsolodasi lehetoseget. pl zabbix agent/trapperkent nyomna be az adatot. ha van valami rele/vezerlo cucc, akkor azt tudna iranyitani (magas a paratartalom -> nyissa ki a szeloztetot)
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
Értem. A probléma az, hogy azok, amiket felsoroltál, teljesen másra valók és egyébként kurvára nem skálázhatóak... :/
marmint hogy a zabbix ami monitorozza a cpu homersekletet nemvalo arra hogy monitorozza a szobam homersekletet? :o
lehet en allok furcsan, de ahhoz hogy figyeljem a szoba/garazs/utca homerleklet adatait, nem akarok felrakni megegy rendszert, hanem a meglevo infraba akarom illeszteni. home automatizalasra meg van millio-es-egy rendszer, itt a hupos is volt egy arc aki egesz jot rakott ossze.
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
"marmint hogy a zabbix ami monitorozza a cpu homersekletet nemvalo arra hogy monitorozza a szobam homersekletet? :o"
Így van. Teljesen más use-case, más szempontokkal. Van valamennyi átfedés közöttük, de az általában kevés.
"lehet en allok furcsan, de ahhoz hogy figyeljem a szoba/garazs/utca homerleklet adatait, nem akarok felrakni megegy rendszert, hanem a meglevo infraba akarom illeszteni."
Meglepő dolog, de az IoT próbálgató embereknek általában nincs meglévő infrastruktúrája és nem is akarnak olyat. Szóval egy apró kisebbség vagy azzal, hogy te ezt így oldanád meg.
Pár hónapja egy időre megszakadt otthon az internet. Gondoltam, ez egy jó alkalom a Home Assistant pátyolgatására. Egy darab grafikont nem tudott kirajzolni. Ugyan nem nyomoztam a dolog után, de arra tippelek, hogy az is felhősen oldja meg. Azóta időnként arra gondolok, hogy kell-e nekem ez a Home Assistant.
Nem tudom mi a meglepő ebben: ezek a feketedobozok nem mások, mint egy mikrofon + buta kliens felhőbe adat továbbításhoz. Internet nélkül a saját nevét se tudja.
--
most csinalom a weboldalt, meg a csomagokat egy hasonlo projekthez :-) Mondjuk en nem iot-ben utazom, hanem kifejezetten a piler-hez dobtam ossze egy dashboard-ot: https://tick01.mailpiler.com/dashboard/snapshot/x87j4NnGhHp6yND14DUQVTw…
Btw. ez itt a reklam helye: ~3 het mulva a konferencian arrol is beszelek majd, hogy raktam ossze :-)
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
Jól néz ki. A weboldalad is jó hogy ilyen egyszerű. Nincs millió bizbasz, csak görgetni kell lefelé. Hosszúnak se hosszú.
Miért nem csinálsz email szolgáltatást is mellé?
kosz, bar epp azon gondolkozom, hogy atteszem wordpress ala, csak kene valami utos grafika hozza.
Btw. archivalas szolgaltatasban (ha erre gondoltal) egyelore nem gondolkozom, mert egyreszt en a vendor vagyok, es a programot arulom, masreszt ehhez azert nagy infrastruktura kell (bar elindulni kicsiben is lehet).
(Egy kis insider info zarojelben: van egy arc (kulfoldi), akivel ugy volt, hogy csinalunk valami joint venture-t, aminek kereteben archivalas szolgaltatast nyujtunk. O a hw-t/infrastrukturat adja bele, en meg a szoftvert, aztan felezunk. Viszont az enterprise verzio nem open source, es a jelek szerint besertodott, hogy nem kapott hozzaferest a forrasahoz, igy semmi nem lett belole)
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
Azt hittem archiválást is nyújtasz, de persze így már világos, tényleg nagy infrastruktúra kellene hozzá.
Paktálj le egy VPS szolgáltatóval viszonteladói kedvezményhez (vagy még az sem kell) megírva egy jó ÁSZF-et meg adatvédelmi nyilatkozatot ennek fényében, és ügyfelenként foglalj a cégnek egy VPS-t és azt annyi kapacitással veszi meg amennyivel akarja.
Így nem a te gondod az infrastruktúra meg redundancia. Illetve a kód is nálad marad.
lehet igy is, de lehet egyszerubb azt mondani az ugyfelnek, hogy vegyen kedvenc random felhoszolgaltatojatol egy vps-t / vagy bereljen vasat, en meg leveszek az sla-jukbol 1 db 9-est (vagy meg 1-et, ha annyira jok).
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
En csinaltam egy pont ilyet:) Igaz nem homerseklet, hanem watchdog es ip cimre (lan discovery, url redirect, ilyesmi).
De az api kb. ugyanilyen rest api.
Par 5let:
- legyen eldobhato id amire postolhat. Mar eleve kelloen random, szoval nem kell "regisztralni". Ami nalad egy random id + jelszo + node id.
Ezt barki elerheti, aki tudja az id-t.
- legyen olyan account, ahol tobb node-ot (id-ket) lehet egy csoportba fogni, es elnevezni. Baratno lakasa (5 sensor), Ausztriai baratno lakasa (6 sensor). ilyesmi
- ha egy id-t levedtel jelszoval, akkor arra ne lehessen postolni (auth error). Ha veletlenul ugyanarra az cimre postolgatnanak a kliensek. (ugye akkor az api ugy modosulna, hogy a node id lenne random)
- nem tudom, hogy barmilyen key-value part lehet-e postolni
Kicsit pilotavizsgas, a login-nal nem enged belepni.
Szerintem tul hosszu az id. Marmint a kotojelek nem kellenenek bele. Rossz masolgatni.
Lehet a post nem sikerult, es azert nem enged belepni.
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
A regisztráció egy random UUID és egy random jelszó és bárki elérheti, ha tudja ezt az UUID-t (és amíg nincs private flag), például: https://iothub.live/nodes/4ca6ff41-4408-11e8-94bd-3dd310e71935
Össze lehet fogni több node-ot, van combined nézet, csak nincs még hozzá UI: https://iothub.live/combined/4ca6ff41-4408-11e8-94bd-3dd310e71935
Csak jelszavas ID-re lehet adatot beküldeni.
"Kicsit pilotavizsgas, a login-nal nem enged belepni. Szerintem tul hosszu az id. Marmint a kotojelek nem kellenenek bele. Rossz masolgatni."
Jelenleg épp reszeltem, de most elvileg kell menjen. :)
nem rosszak a grafikonok, de erdemes lenne megnezned, mit tud a grafana...
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
Mennyire heavy weight a script picit nagyobb adatnál? Végeztél méréseket?
Ez alatt mit értesz?
Régebben néztem JS lib-eket grafikon rajzolásra, de megették a CPU-t.
Ja, az legyen az user problémája... de szerintem ez nem nagyon eszik vagy nem vettem észre, hogy enne. :)
Itt mit látsz, mennyire eszi a CPU-t?
https://iothub.live/measurement/4a9f0280-00cd-11e7-832f-2b6139351b1b/te…
Nyilván nem minden esetben probléma ha pörgeti a kliens oldalt egy lib, én személy szerint szeretek erre figyelni, mert csak összeadódik a folyamatos használat közben az erőforrás és számítani fog hogy mennyi idő alatt szívja le az aksit mobilon vagy notin.
Direkt van az hogy látszódik hogy lassan rajzolja ki? Ha direkt animáció, akkor ok.
Amúgy a betöltés relatíve sok idő, olyan 5-6 másodperc mire minden betölt és kirajzolódik. Ez szerintem pörgeti a kliens oldalt és mobilon szerintem főleg számít, mert ott a CPU még gyengébb. Lásd a bal oldali kimenetet, kb. a második bejegyzéstől tölt a cuccod, és látszik hogy addig megy amíg a terhelés 0-1 közötti nem lesz, ezt megelőzően a te kódod dolgozik. És ez 4 mag levetítve a 100%-ra vagyis 4-gyel felszorozhatjuk és akkor látjuk hogy 1 magon kb mennyit eszik.
http://log69.com/temp/s1.png
Animáció miatt rajzolja így ki. A betöltés nem tudom miért ennyi idő nálad. :/
Futtass profiling-ot a kódodra akár szerver akár kliens oldalon és egyből kiderül hol eszik a legtöbbet.
Szerver oldalon pontosan tudom, hogy mi mennyi idő, kliens oldalon meg használok egy kész grafikonrajzolót, amivel nem tudok semmit kezdeni.
Ebből a sztoriból a grafikon a legkisebb meló... :)
valoszinuleg meg nem lattad a grafanat akcioban :-)
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
Vagy pont ezért használok HighChart-ot, mert faék egyszerű.
nem akarlak minden aron a grafana fele terelni :-) Btw. az adatokat miben tarolod?
--
'Amikor az embernek rossz szerencséje van, az rossz szerencse' - Best of Leekens, a foci feltamasztoja (muhahaha)
"nem akarlak minden aron a grafana fele terelni"
Megnéztem, nem látom hasznát, túl összetett.
A HighCharts az ennyi:
https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/mas…
"Btw. az adatokat miben tarolod?"
Cassandra cluster-ben.
Par metrikat huzok be egy prometheus-sal esp-krol (homerseklet, COx szintek), az elegge egyszeru tortenet. Grafana-t meg nem kell bemutatnom, mint vizualis output-ot.
(Csak gondolatebresztokent mondom, mert nem ertem ezeket a bonyolult api torekveseket. :D (Latom, hogy kicsit mas a cel, nekem meg minden kalapacs.))
Ahja. Nem mindenki akar vagy tud ilyen rendszert összetenni.
Mondom, ertem. Csak azt nem, hogy miert kell az api.
Az esp-im szolgaltatnak egy /metrics-et http-n, amibe belerakjak ezt:
temperature 22
co1 4e-3
co2 4e-3
Oszt ennyi. :)
Prometheus meg pullozza ezeket korbe-korbe, tarol, grafikont is rajzol - de grafikonban a grafana sokkal-sokkal jobb.
Szoval az api reszt tenyleg nem vagom... :( Nem esik le a 20filler. (Ugy ertem ubidots, freeboard, adafruit stb. mellett.)
"Az esp-im szolgaltatnak egy /metrics-et http-n, amibe belerakjak ezt:"
Ez egészen addig jó, amíg mondjuk nem akkuról mennek hónapokat és az idejük nagy részében mélyen alszanak, így nem igazán tudsz semmit lekérdezni róluk, így csak push-t tudnak.
"Prometheus meg pullozza ezeket korbe-korbe, tarol, grafikont is rajzol - de grafikonban a grafana sokkal-sokkal jobb."
Ehhez neked kell egy Prometheus, kell alá egy hardver és kell valami, ahol tárolod, az eltárolt dolgokat mented és aztán kell valami, mivel rajzolsz. Értem, hogy neked ez mind megvan, nekem is megvan, de nagyon sok IoT felhasználónak ennek töredéke sincs meg.
Aaaa..! Koszi! Sejtettem en, hogy egy masik iranyba mozgo lovon ulok. Valoban fix tapjuk van az esp-knek. :DDD
Mondjuk kicsit tartok az ilyenfele IoT felhasznaloktol, akik nem tudnak egy leharcolt netbooknyi infrat a projekt moge tenni... Vajon ok kepesek rendes API kezelesre..? ;)
"Sejtettem en, hogy egy masik iranyba mozgo lovon ulok. Valoban fix tapjuk van az esp-knek."
Úgy könnyű... :)
"Mondjuk kicsit tartok az ilyenfele IoT felhasznaloktol, akik nem tudnak egy leharcolt netbooknyi infrat a projekt moge tenni..."
Miért kellene értenie mindenkinek egy komplett rendszergazdasághoz? Szerintem neked is bőven előbb volt üzemeltetési tapasztalatod, mint IoT és ezért gondolod, hogy mindenkinek van, aki megrendel egy ESP8266-ot és feltesz rá egy példaprogramot.
"...Szerintem neked is bőven előbb volt üzemeltetési tapasztalatod, mint IoT..."
Nabazzeg, micsoda kormonfont leoregezes..! :DDD
Igazabol az motoszkal a fejemben, hogy egy ESP*-ra egy peldaprogram letoltese szvsz pilotavizsgasabb tortenet, mint egy random IoT szerver vm letoltese akarhonnan.
(Ha meg nincs ilyen vm, akkor surgosen csinalni kell. vbox vmware docker verziot ;) )
"Nabazzeg, micsoda kormonfont leoregezes..!"
:)
Egyébként van néhány plusz funkció is ebben a saját cuccban, mint például az ESP OTA frissítés, de ez egyelőre nincs publikálva:
https://eu.iothub.live/status/4ca6ff41-4408-11e8-94bd-3dd310e71935
Ez jo cucc, kovetlek! :D
Javasolnám hogy megvizsgálás után ha nincs adott random UUID-éknek nagy szerepe biztonságilag, akkor generálj egyszerűbbet, mert kevésbé lesz fárasztó befogadni az oldalon megjelenő információt mikor ránéz az ember - akár csak számokkal, azok is ha nem kell sok, akkor rövidek stb. - illetve ha nincs szüksége rá a user-nek, akkor ne is jelenjen meg.
Magyarul dobj ki mindent (és mindent) a felületről ami nem kell a user-nek, vagy kell de csak 100-ból egyszer.
Csak javaslat.
Ahja, ezen lassan változtatni fogok, csak egyelőre így látom, hogy jól működik-e... :)
Nyilván lesz majd szerkesztés, meg majd javul az UI/UX is, ahogy van időm, illetve ahogy látom, hogy van értelme, mert mondjuk használják... :)
Egyszerűsítettem a beküldést is, mert ez volt:
http://iothub.live/rest/measurement/create/18738750-493c-11e8-81d7-31e8…
És most már ennyi:
https://api.iothub.live/measurement/create/gy8rYTk1GxtKoLAwAM0R5w/tempe…
Szóval persze, fog evolválódni a dolog, az utóbbi egy évben is sokat javult, de magamnak csiszolgattam, most már majd jobban oda kell figyelnem... :)
kis-nagybetut is kukazhatnad;)
Egyebkent nalam ugy van, hogy random es nem kell jelszo, vagy te valasztasz id-t, es akkor kell jelszo, mert kvazi lefoglaltad azt a namespace-t.
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
"kis-nagybetut is kukazhatnad;)"
Copy-paste esetén nem teljesen mindegy?
nem;)
---
Saying a programming language is good because it works on all platforms is like saying anal sex is good because it works on all genders....
"van-e érdeklődés szerintetek egy olyan "felhős" megoldásra, ahova egyszerűen be lehet küldeni adatokat, amelyek ott megőrződnek és grafikonon ábrázolódnak?"
Ezirányú igényeimet eddig kielégítette a ThingSpeak.
Tudom, ismerem... :)
Három bajom van vele:
1, mocskosul drága lesz nagyon hamar: nekem van 20 eszközöm, amelyek percenként küldenek adatokat, összesen 54 metrikát, ez naponta ~ 77760 mérés, ez évente 600 euró lenne, ~15 ezer forint havonta. 5 metrika lenne még ingyenes.
2, a grafikonjai eléggé "sajátosak": ilyesmiről beszélünk, ugye (szerintem ez nagyon gyér): https://thingspeak.com/channels/38675
3, nem is erre van igazából kihegyezve, hanem inkább az elemzésre, én csak ábrázolni szeretném az adatokat, online és real time, ahhoz túl sokat tud a ThingSpeak.
sub
Azure IoT Hub B1 (napi 400.000 message)
PowerBI Free
Ez így havi ~8 euró.
-- a Microsoftnál dolgozom
Ja. Ágyúval verébre... és egyébként is: mutatnál például grafikonrajzolást? :)
Mert egyelőre ezt találtam: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-live-data-visual…
> Ágyúval verébre...
Talán igen, talán nem. Szerintem amíg nagyságrendileg annyiba kerül, mint egy random filléres VPS, addig nem vészes.
> mutatnál például grafikonrajzolást?
Erre van a free-tier PowerBI, vagy tetszőleges alternatív megoldás.
Errefelé lehet példákat találni: https://powerbi.microsoft.com/en-us/features/
"Talán igen, talán nem. Szerintem amíg nagyságrendileg annyiba kerül, mint egy random filléres VPS, addig nem vészes."
Nem arról van szó, hogy vészes-e, hanem arról, hogy pilótavizsgás-e, illetve arról, hogy amíg eljutok egy grafikonig, addig mit kell tennem.
"Erre van a free-tier PowerBI, vagy tetszőleges alternatív megoldás."
Ja, csak ez teljesen másra való. Én ebben azt látom, hogy nem az IoT oldalról közelítik meg a problémát, hanem van egy nagyvállalati eszközkészletük és azt próbálják meg "eladni" az IoT felé is.
"Na igen, ha real-time kell (ti. nyitva van a dashboard, és látod ahogy változik), azt manuálisan összerakni is nehezebb, mint az épp aktuális snapshotot kirajzolni egy grafikonra."
És persze nem is nagyon tudom kitenni publikusan elérhetően. Meg ilyesmi.
> pilótavizsgás-e
Nem jobban, mint sajátot építeni. Mindkettőnek van előnye és hátránya.
> teljesen másra való
A PowerBI csak egy frontend, mindegy neki, hogy IoT szenzor adja az infót vagy egy SharePoint formot töltöget valaki.
"Nem jobban, mint sajátot építeni. Mindkettőnek van előnye és hátránya."
Itt most pont nem saját építéséről van szó.
"A PowerBI csak egy frontend, mindegy neki, hogy IoT szenzor adja az infót vagy egy SharePoint formot töltöget valaki."
Erre írtam, hogy én ebben azt látom, hogy nem az IoT oldalról közelítik meg a problémát, hanem van egy nagyvállalati eszközkészletük és azt próbálják meg "eladni" az IoT felé is.
szerk:
> Mert egyelőre ezt találtam: https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-live-data-visual…
Na igen, ha real-time kell (ti. nyitva van a dashboard, és látod ahogy változik), azt manuálisan összerakni is nehezebb, mint az épp aktuális snapshotot kirajzolni egy grafikonra.
Na, kapott a főoldal egy kicsit pofásabb landing page szerű dolgot... :)
https://iothub.live/
Illetve részletkérdés, de lett egy EU és egy US aloldal, mert két DC van két kontinensen:
https://eu.iothub.live/
https://us.iothub.live/
Fejlemények az utóbbi fél évből... :)
Váltottam nevet és logót... lehet a dologgal vitázni, de egyelőre így marad.
Lett Android alkalmazás: https://play.google.com/store/apps/details?id=live.iotguru
Lett új weboldal: https://iotguru.live
Lett MQTT támogatás: https://github.com/IoTGuruLive/mqtt_example
Lett push notification: https://github.com/IoTGuruLive/free_text_push_example
Javítottam egy csomó apró hibát, illetve belekerült egy csomó apró újítás. Van még pár dolog, ami csak privátban érhető el, de ezeket is nyitom kifelé, ahogy átnéztem, illetve megkapta az Android támogatást és a weboldal a facelift-et, ilyenek például az OTA firmware frissítés, az offline alert, a battery alert, a range alert.
Akit érdekel, lehet játszani vele. Aki korábban regisztrált és nem használta, annak valószínűleg újra kell regisztrálnia, mert 30 nap az ingyenes adatmegőrzési idő és ha minden tárolt adata kipörög, akkor törlődik az account is.
--
https://iotguru.live
Na, volt egy kis facelift: https://iotguru.live/
Lett MQTT: https://iotguru.live/tutorials/mqtt
Meg minden egyéb Tutorial: https://iotguru.live/tutorials
Arduino library: https://www.arduinolibraries.info/libraries/the-io-t-guru-integration
Néhány egyéb Arduino példa: https://github.com/IoTGuruLive/
Friss feature: OTA frissítés, firmware store. :)
Az Android alkalmazással lehet készíteni saját dashboard-ot, grafikonokkal, egyebekkel.
szép lett