![Bitkilərimi xilas etmək üçün FlowerCare və Nymea: 5 addım Bitkilərimi xilas etmək üçün FlowerCare və Nymea: 5 addım](https://i.howwhatproduce.com/images/001/image-1801-43-j.webp)
Mündəricat:
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54
![Bitkilərimi xilas etmək üçün FlowerCare və Nymea Bitkilərimi xilas etmək üçün FlowerCare və Nymea](https://i.howwhatproduce.com/images/001/image-1801-44-j.webp)
Bitki baxımı sensorlarını mövcud açıq mənbəli ağıllı evimə bağlamaqda əllərim çirklənir. Nymea üçün plagin inkişafına dair bir yol.
Hekayə
Bir çox digər işbazlar və hakerlər kimi, məsələlərdən də əziyyət çəkirəm ki, şeylərə müdaxilə etmək o qədər çox vaxtımı alır ki, bəzən bitkilərimi sulamağı unuduram. Monstera Deliciosa bir daha quru torpaqdan əziyyət çəkdikdən sonra susadığını xatırlatmaq üçün bu barədə bir şey edə biləcəyimi görməyə qərar verdim.
İnternetdəki sürətli bir araşdırma, diqqətimi MiCare və ya PlantCare olaraq da bilinən Xiaomi FlowerCare -ə yönəltdi. Bir Bluetooth Aşağı Enerji cihazıdır və bəzi əsas araşdırmalar, protokolunun başa düşülməsi olduqca asan olduğunu ortaya qoydu. Xiaomi hər hansı bir açıqlama verməsə də, bu cihaz üçün hələ də internetdə bir qədər tərs mühəndislik var. Buna görə də onlardan birini sifariş etmək qərarına gəldim.
Bir neçə gün sonra çatdırıldı və təbii ki, dərhal onunla oynamağa başladım. Birlikdə gələn proqramı qısaca yoxladım, amma təxmin edə biləcəyiniz kimi, onu standart quruluşunda istifadə etmək mənim planım olmayıb. Əlbəttə ki, mövcud ağıllı ev quruluşumla inteqrasiya olunmalıdır. Burada da təsvir edildiyi kimi nymea'yı ağıllı ev həllim olaraq istifadə edirəm (Bəli, hətta oradakı şəkillərdən birində Monsteranı görə bilərsiniz:)). Təəssüf ki, nymea bu sensoru dəstəkləmədi, buna görə bəzi IDE -lərin işə salınması qaydasındadır.
Addım 1: Plugin Stub Yüklənir
![Plugin Stub Yükləndi Plugin Stub Yükləndi](https://i.howwhatproduce.com/images/001/image-1801-45-j.webp)
![Plugin Stub Yükləndi Plugin Stub Yükləndi](https://i.howwhatproduce.com/images/001/image-1801-46-j.webp)
![Plugin Stub Yükləndi Plugin Stub Yükləndi](https://i.howwhatproduce.com/images/001/image-1801-47-j.webp)
Etdiyim ilk şey, mövcud Texas Instruments Sensor Tag plaginini kopyalamaq idi, FlowerCare cihazı üçün də işləməli olduğunu düşündüyüm qədər oxşar görünürdü. Plugininfo.json -dakı şeylərin əsas adını dəyişdikdən və sensortag plagininin çox hissəsini şərh etdikdən sonra yeni plugin sapını yükləməyə hazır idim.
Gözlənildiyi kimi, kəşf sensoru dərhal göstərəcək və onu sistemə əlavə etməyimə icazə verərdi. Əlbəttə ki, bu anda heç bir mənalı məlumat verməyəcək.
Addım 2: Sensorda Məlumat Tapın
![Sensor haqqında məlumat tapmaq Sensor haqqında məlumat tapmaq](https://i.howwhatproduce.com/images/001/image-1801-48-j.webp)
Hər hansı bir Bluetooth LE cihazında olduğu kimi, etmək istədiyiniz ilk şey, təklif etdiyi xidmətlər və onların xüsusiyyətləri haqqında öyrənməkdir. Bir yerdə faktiki məlumatlar gizlidir. Kəşf edilən bütün xidmətlərin üstündən keçən və onların xüsusiyyətlərini çap edən sürətli bir debug çapı ilə, İnternetdə tapdığım məlumatları cihazın həqiqətən bildirdikləri ilə müqayisə edə biləcəyim nöqtədə oldum.
boş FlowerCare:: onServiceDiscoveryFinished () {BluetoothLowEnergyDevice *btDev = static_cast (sender ()); qCDebug (dcFlowerCare ()) << "xidmət uuids var"
Firmware versiyası və batareya səviyyəsi asan idi. Məlumatların siyahıya alınmasının bu ilk cəhdində yazılmış dəyərləri artıq görə bilirdim. Həqiqi sensor dəyərləri bir az daha dərinlərdə gizlənir, ancaq onu internetdəki məlumatlar ilə birləşdirərək dərhal haradan tapacağını və xüsusilə necə oxunacağını göstərdi.
void FlowerCare:: onSensorServiceCharacteristicRead (const QLowEnergyCharacteristic & xarakterik, const QByteArray & value) {qCDebug (dcFlowerCare ()) << "Xarakterik oxu" << QString:: sayı (xarakteristik.handle (), 16) temp; qint8 atla; axın >> atla; quint32 lüks; axın >> lux; qint8 nəm; axın >> nəm; qint16 məhsuldarlığı; axın >> məhsuldarlıq; bitmiş buraxın (m_batteryLevel, 1.0 * temp / 10, lux, nəm, məhsuldarlıq); }
Bunu bir araya gətirərək, plagin artıq mənalı məlumatlar istehsal etməyə başladı.
Addım 3: Toxunuşları bitirmək
![Toxunuşları bitirmək Toxunuşları bitirmək](https://i.howwhatproduce.com/images/001/image-1801-49-j.webp)
Beləliklə, əsasən indi işləyir, ancaq bir məsələ hələ də orada qalıb. FlowerCare sensoru, Texas Instruments SensorTag -dan fərqli olaraq, Bluetooth bağlantısını bir neçə saniyə sonra kəsər. İstifadə vəziyyətini nəzərə alsaq, bu, əlaqə cəhdlərinə cavab verməkdə olduqca etibarlı olduğu üçün bir problem kimi görünmür. Normalda bir bitkinin bir neçə dəqiqə ərzində deyil, bir neçə gün ərzində su çəkdiyini nəzərə alsaq, hər zaman bağlı qalmağımız vacib görünmür. Həm də bu batareyanı çox tükəndirəcək. Beləliklə, sensoru hər 20 dəqiqədən bir bağlayacaq və ondan məlumat alacaq bir PluginTimer əlavə etmək qərarına gəldim. Sensor nədənsə qoşulma cəhdinə cavab verməsə, kod o andan etibarən hər an yenidən əlaqə qurmağa çalışan başqa bir zamanlayıcı işə salacaq və məlumatları əldə edə bilməyəcək. Sonra yenidən 20 dəqiqə aralığında məlumat əldə etmək üçün geri dönəcəkdir. Cihaz ardıcıl iki dəfə bağlana bilmirsə (yəni 20 + 1 dəqiqədən sonra), sistemdə oflayn olaraq qeyd ediləcək və istifadəçiyə bu barədə xəbərdarlıq edilə bilər.
void DevicePluginFlowercare:: onPluginTimer () {foreach (FlowerCare *flowerCare, m_list) {if (--m_refreshMinutes [flowerCare] <= 0) {qCDebug (dcFlowerCare ()) << "Yenilənən" ünvan (); flowerCare-> refreshData (); } başqa {qCDebug (dcFlowerCare ()) << "Yenilənmir" ünvanı () << "Növbəti yeniləmə" << m_refreshMinutes [flowerCare] << "dəqiqə"; } // 2 və ya daha çox uğursuz əlaqə cəhdimiz varsa, (m_refreshMinutes [flowerCare] <-2) {qCDebug (dcFlowerCare ()) << "Yenilənmədi" << (m_refreshMinutes [flowerCare] *) -1) <setStateValue (flowerCareConnectedStateTypeId, yalan); }}}
Bu strategiya ilə nymea indi bu sensordan mükəmməl etibarlı məlumatlar çatdırırdı.
Addım 4: Daha Böyük Kontekstdə İstifadə Edin
![Daha Böyük Kontekstdə İstifadə Edilməsi Daha Böyük Kontekstdə İstifadə Edilməsi](https://i.howwhatproduce.com/images/001/image-1801-50-j.webp)
![Daha Böyük Kontekstdə İstifadə Edilməsi Daha Böyük Kontekstdə İstifadə Edilməsi](https://i.howwhatproduce.com/images/001/image-1801-51-j.webp)
Sensordan dəyərlər əldə etmək o qədər də faydalı olmasa da, bunun üçün orijinal tətbiqdən də istifadə edə bilərdim. İndi onunla birlikdə bəzi ağıllı şeylər edək.
Nymea, ya nymea quraşdırılmış telefonlara, ya da PushBullet vasitəsilə push bildirişləri göndərməyi dəstəkləyir. Torpağın rütubəti 15%-dən aşağı düşəndə özümə bir neçə təkan bildirişi göndərmək lazımdır. Bunu tətbiqdə qurmaq olduqca asandır. Ön şərt olaraq ya nymea: cloud və ya PushBullet -də bir hesaba ehtiyacınız var. Nymea: bulud əsaslı təkan bildirişləri üçün nymea: core və nymea: app üzərindəki nymea: buludunu aktiv etmək kifayətdir. Hər ikisi də bağlanan kimi avtomatik olaraq bir bildiriş görünəcək. PushBullet sisteminə yeni bir şey əlavə etmək üçün orada siyahıda PushBullet tapacaqsınız. PushBullet ilə qeydiyyatdan keçərkən əldə etdiyiniz API açarını istəyəcək. Nymea'da təkan bildirişinə sahib olduqdan sonra bir qayda yarada bilərsiniz.
Əlbəttə ki, istədiyiniz hər şeyi edə bilərsiniz … Sensor dəyərlərini əks etdirmək üçün bəzi işıqları yandıra bilərsiniz və ya məsələn HTTP komandiri plaginindən istifadə edərək İnternetdəki bir serverə sensor dəyərlərini göndərə bilərsiniz. Su klapanım yoxdur. rəqəmsal olaraq (hələ) idarə oluna bilər, amma əlbəttə ki, belə bir şeyiniz varsa və hələ nymea tərəfindən dəstəklənmirsə, bunun üçün bir plugin əlavə etmək bundan daha çox oxşardır.
Addım 5: Sözləri bağlayın
![Bağlayan Sözlər Bağlayan Sözlər](https://i.howwhatproduce.com/images/001/image-1801-52-j.webp)
Flowercare plagini indiyə qədər yuxarıya doğru qəbul edildi və onlardan biriniz varsa, indi nymea ilə istifadə etməyə hazırdır. Ancaq ümid edirəm ki, kimsə digər cihazlara dəstək əlavə etmək istəsə bu məqalə maraq doğuracaq. Nymea üçün öz plagininizi necə quracağınıza dair bir yol olmalıdır.
Yalnız bu qurğunu evinizdə qurmaq istəyirsinizsə, sizə lazım olan tək şey FlowerCare sensoru, bir Raspberry Pi, nymea icma görüntüsü (indiyə qədər çiçək baxımı plagini daxildir) və nymea: tətbiq mağazalarında mövcud olan tətbiqdir. Ayrıca, bu günə qədər Monstera Deliciosa yenidən xoşbəxtdir və ekran görüntülərində də gördüyünüz kimi, limon ağacımın sağlamlığını izləmək üçün özüm də bu sensorlardan ikincisini aldım. Bunun üçün xaricdə donanda özümə təkan bildirişi göndərirəm ki, qışdan təhlükəsiz keçim.
Tövsiyə:
OTOMATİK zibil və ya çöp qutusu ola bilər. Planeti xilas etmək üçün: 19 addım (şəkillərlə)
![OTOMATİK zibil və ya çöp qutusu ola bilər. Planeti xilas etmək üçün: 19 addım (şəkillərlə) OTOMATİK zibil və ya çöp qutusu ola bilər. Planeti xilas etmək üçün: 19 addım (şəkillərlə)](https://i.howwhatproduce.com/images/001/image-268-37-j.webp)
OTOMATİK zibil və ya çöp qutusu ola bilər. PLANETİ QORUMAQ: Başlamazdan əvvəl bunu oxumadan əvvəl ilk videonu izləməyi məsləhət görürəm, çünki çox faydalıdır. Salam, mənim adım Jacob və mən İngiltərədə yaşayıram. Geri dönüşüm, yaşadığım böyük bir problemdir, tarlalarda çox zibil görürəm və zərərli ola bilər. Th
Ağıllı Lampa ilə Sıxıcı Həyatı xilas etmək: 3 addım
![Ağıllı Lampa ilə Sıxıcı Həyatı xilas etmək: 3 addım Ağıllı Lampa ilə Sıxıcı Həyatı xilas etmək: 3 addım](https://i.howwhatproduce.com/images/010/image-27426-j.webp)
Sıxıcı Həyatı Ağıllı Lampa ilə xilas etmək: Hamımız ümid edirik ki, evdə daha rahat yaşaya bilərik. Ev lampalarının qaralması kifayət qədər ağıllı olmadığı üçün tez -tez özünüzü narahat hiss edirsinizmi? Yoxsa ev lampasının funksiyasına görə özünüzü monoton hiss edirsiniz? Bu lampa işinizi həll edə bilər
Köhnə Motorola Lapdockunu xilas etmək: 9 addım
![Köhnə Motorola Lapdockunu xilas etmək: 9 addım Köhnə Motorola Lapdockunu xilas etmək: 9 addım](https://i.howwhatproduce.com/images/001/image-2562-40-j.webp)
Köhnə Motorola Lapdock -un saxlanması: Bu yaxınlarda, az istifadə olunan Motorola Laptock -un 10 avroya satıldığını gördüm. Bir lapdockun nə olduğunu bilmədən bir az araşdırdım və öyrəndim ki, xarici monitor, klaviatura, batareya toxunma paneli, dinamiklər və USB hub olmaq üçün hazırlanmışdır
Şəxsi kompüterinizi zərərli proqramlardan və viruslardan xilas etmək: 10 addım
![Şəxsi kompüterinizi zərərli proqramlardan və viruslardan xilas etmək: 10 addım Şəxsi kompüterinizi zərərli proqramlardan və viruslardan xilas etmək: 10 addım](https://i.howwhatproduce.com/images/002/image-5974-70-j.webp)
Şəxsi kompüterinizi zərərli proqramlardan və viruslardan qurtarmaq .: Yavaş Kompüter? Pop-uplar? Kompüteriniz yavaş işləyir və ya brauzerdən istifadə etməsəniz də tez-tez açılan pəncərələr görürsünüzmü? Kompüterinizin virus, zərərli proqram və ya casus proqramla yoluxma ehtimalı yüksəkdir. Təmizləməyə kömək edəcək bir çox vasitə var
Pulsuz DVD hissələrini necə xilas etmək olar: 7 addım (şəkillərlə)
![Pulsuz DVD hissələrini necə xilas etmək olar: 7 addım (şəkillərlə) Pulsuz DVD hissələrini necə xilas etmək olar: 7 addım (şəkillərlə)](https://i.howwhatproduce.com/images/001/image-1510-123-j.webp)
DVD Sürücüsünü Pulsuz hissələr üçün necə xilas etmək olar: Heç istifadə edilə bilən optik sürücülərin içərisində nə olduğunu düşünürsünüzmü? Uşaqlıqda hissələri geri qaytarmaq yollarını bilmək mənim üçün çox maraqlı idi. uşaqlar əyləncəli və maraqlıdır