Ой, что это?!
Это микрокомпьютер системы полива домашних растений. Он решает проблему полива домашних цветов при длительном отсутствии хозяев или их рассеянности. Система поливает домашние цветы по заданному расписанию (изначально в 8 утра и 7 вечера полив по 1 минуте), может управляться удаленно, также умеет слать отчеты в Telegram об успешном поливе и предупреждать от том, что закончилась вода. Система существует пока в двух исполнениях: в виде грецкого ореха (Эко) и в виде прозрачного кубика (Техно). К ней, помимо насоса и блока питания, прилагаются трубки, набор капельниц и пластиковых разветвителей, которые надо соединить и повтыкать в цветочные горшки (чем больше горшок, тем больше капельниц, а система одна). Вот немного фоток, кликайте:
Ой, где такое взять?
К сожалению, пока нигде. Этих устройств я пока спаял своими руками всего десяток и раздал друзьям. Нужно ли это кому-то, и как устроить их производство и продажу, чтобы это приносило больше денег, чем проблем и расходов — я пока не знаю. Здесь пока больше потенциал разработки — благодаря внутреннему фреймворку с языком команд у системы, помимо работы с насосом по расписанию, существует богатые возможности для моментального создания самых разных устройств и задач. Изначально система делалать под разные другие задачи, и я использую эти же самые штуки у себя в самых разных областях — управляемые розетки, дистанционные датчики, системы СКУД с бесконтактными картами, промышленные исполняемые устройства и датчики на MQTT и Modbus-TCP — все эти возможности есть на борту, железо и прошивка одна, любая задача решается правкой текстовых конфигов прямо с веба на чипе. Но это уже совсем другая история. Устройство полива — просто частный случай приминения, когда к пину 5 припаян насос.
Ты мне дал эту систему! Как мне ее запустить?
Вот! Сейчас расскажу. Включи блок питания в розетку. Через несколько секунд система возмущенно запищит, что у нее нет вайфая, и начнет дерзко мигать. При этом она создаст собственную сетку WiFi, которая будет называться
И коннектимся к нему:
Если все хорошо, прогрессивные смартфоны сами открывают титульную страницу. Если этого по какой-то причине не произошло — откройте в браузере страницу http://192.168.4.1 (убедитесь, что именно http, а не https). Страница выглядит так:
Это страницу может увидеть любой, у кого есть доступ к твоему вайфаю, но ты — не любой. Поэтому нажимай большую кнопку LOGIN и вводи пароль «gluki». Потом ты его, разумеется, сменишь в /config.txt на свой (желательно без пробелов и латинскими, я с остальными не тестировал):
Если пароль подошел, то тебе откроется примерно такая же страница, только админка:
Здесь есть консоль для исполнения команд и разные полезные ссылки на внутренние системы, большинство которых тебе, надеюсь, не понадобится. Но первым делом тебе понадобится секретный код чипа: нажми Info и узнай код своего устройства в первых строках: ID: a62d3b-32152E Этот код секретный, он будет нужен для подписки в Telegram. Затем тебе понадобится кликнуть Wifi, чтобы дать устройству домашний интернет. Система задумается на много секунд:
Затем выдаст список сетей. Выбери свою, введи пароль:
Если все хорошо, чип перегрузится, высвистит свой адрес и начнет уже не мигать огоньком, а плавно менять его яркость. Теперь есть проблема, по какому адресу на него зайти из своей домашней сети, потому что свою сеть он больше не раздает. В принципе, при включении он пищит последние цифры своего IP (ну, ноль пропускает). Если ты знаешь, что твой домашний роутер выдает IP в диапазоне 192.168.1.xxx, а чип пропишал два гудка, через паузу еще три, затем еще восемь, то его адрес будет http://192.168.1.238 Но если что, можно подписаться в Telegram на оповещения своего чипа, и там он при включении сообщит, какой адрес получил.
Не надо пугаться таракана и херачить молотком по экрану, он там ползает, просто не обращай внимания. На титульном экране есть еще настроечные параметры, если нет, перегрузи страницу. Выглядит так:
Можешь, например, ткнуть в /Settings.txt и открыть на редактирование файл настроек:
В настройках тебя скорее всего интересует только poliv.time=60 — полив включается на 60 секунд. Всякие там act.pin и poliv.pin — это куда подключен насос, к пину 5, скорее всего. sound.pin — куда распаян динамик, в последних моделях к пину 3, и так далее. Интересен параметр motor.stop — при какой нагрузке считать воду окончившейся. Ты можешь запустить полив и вынуть насос из воды — он сразу остановится. В принципе мои симстемы настроены и работают из коробки. Но этот параметр ты можешь подобрать сам, запустив мотор вручную. Например, положить насос в воду, в разделе test потыкать пин 5, а в другом окне открыть раздел a0m и понаблюдать, что показывает график, когда насос вынимаешь из воды, по сравнению с тем, что он показывал в воде... Но надеюсь, что эта калибровка тебе не понадобится.
А вот что понадобится — это файл расписаний /Shedule.txt:
Понятно, все, что начинается с # — это комментарий, который не работает. В моем случае в 12:00 система пищит До-Ре-Ми-До-Ре-До, а в 8:00 запускает полив. Можно его запускать несколько раз в сутки. Можно и раз в несколько дней, но тут надо как-то быдлокодить в скриптах, один парень себе сделал, но я пока не.
Как мне настроить оповещения в Telegram?
1. Подпишись на бота @LLeoBot
2. Узнай код своего чипа и введи команду: /unit add a62d3b-32152E all
Теперь ты будешь получать в телеграм все события (all) со своего устройства.
Как мне получить дистанционный доступ?
Зайди на https://lleo.me/bot/, обнови страницу на всякий случай и залогинься (фитюлька справа вверху). После этого добавь устройство. Там можно еще настраивать всякие голосовые команды с Яндекс-Алисы, управление из бота Telegram, но, по большому счету, нахер оно надо?
Меня волнует безопасность
1. Смени пароль: ткни на главной странице кнопку Files, выбери файл /config.txt, ткни на него, найди строчку set password = gluki и замени. Будь осторожен: перед и после знака равно должен быть ровно один пробел. Фича всего фреймфорка — все отделяется одним пробелом.
2. Если тебе не нравится мысль, что система отчитывается на какой-то левый сайт lleo.me, то закомментируй в том же /config.txt строчку с Яндекс-Алисой, а если вообще нервирует, что она пользуется твоим файфаем — сотри пароль в файле /last_wifi.txt. Полив по расписанию вполне может работать без вайфая и точного времени.
Что я могу еще сделать с этой штукой?
Да все, что угодно. Все файлы тебе доступны на редактирование, это текстовые скрипты фреймворка, а также страницы веба, где можно менять дизайн и логику работы. Посмотри, как они устроены. Можно соединяться с другими сайтами, принимать и отправлять команды, подключаться к любым другим системам с помощью MQTT и Modbus, и так далее. Если вопросы — всегда пиши мне, расскажу, помогу.