LINUX.ORG.RU

Homescript — новый открытый движок для умного дома

 , homescript, , smarthome,


3

2

Вышла первая версия Homescript — движка для автоматизации умного дома на Lua

Проект ориентирован на простоту и гибкость: интеграция через MQTT, поддержка Zigbee (Zigbee2MQTT), Frigate и других устройств.

Ключевые возможности:

  • Автоматическое обнаружение устройств.
  • Наглядность. Основа всего — каталог со скриптами, создаваемый при поиске устройств.
  • Скрипты на Lua — легко даже для новичков.
  • Событийная логика: реакция на изменения в реальном времени.
  • Минимальное потребление ресурсов — работает на Raspberry Pi. И не просто работает, а потребляет очень скромную долю памяти и ресурсов CPU.

Homescript — открытая альтернатива сложным системам вроде Home Assistant, без привязки к облакам.

>>> Исходный код

>>> Homescript



Проверено: dataman ()
Последнее исправление: CrX (всего исправлений: 9)
Ответ на: комментарий от alash

То что питается от сети лучше исп. wifi (esphome)

Батарейные датчики – zigbee нормально

futurama ★★★★★
()
Ответ на: комментарий от Loki13

Думаю, от Hub придется избавиться, все облачные подключения там.

kid
() автор топика
Ответ на: комментарий от hobbit

Что-то не открывается.

Github-то открывается, а вот сайтик — да, не открывается. В смысле, нет, не открывается. :)

Somebody ★★★★
()
Ответ на: комментарий от sergej

Господи, да это простейший способ запуска для многих людей. Хочешь - собери сам, это простейшая go программа, там никаких зависимостей страшных нет.

kid
() автор топика
Ответ на: комментарий от Somebody

Сайтик точно открывается из любых мест вне России и, во всяком случае, открывается через мой московский VPN. Если у тебя не открывается, буду рад, если разберешься почему, тогда можно будет починить.

kid
() автор топика
Ответ на: комментарий от kid

из любых мест вне России

А на кой хрен нам «вне»?? И ты же не дал нам доступ через твой московский VPN"... :))

Если у тебя не открывается

Нет, не открывается.

буду рад, если разберешься почему

И на какую именно сумму на мой счёт ты «будешь рад»?? ;))

Иначе мне незачем «разбираться, почему». :)

Somebody ★★★★
()
Ответ на: комментарий от kid

Впрочем, «экспердам» виднее, когда ничего, кроме лампочки над унитазом, умного в их доме нет…

А смотришь на вас, дарующих «экспертам» свои поделия то на питоне, то на qt, то теперь на модно-стильно-молодёжной goшечке и думаешь - а вы хоть чем-то сложнее лампочки над унитазом то управлять умеете? То, что документацию писать с примерам - это и по github’у видо, что нет. И без докера собираться тоже нет.

LynxChaus
()
Ответ на: комментарий от kid

Так проходи мимо, пиши на Си по Кернигану и Ричи, если сдюжишь.

Вообще такие штуки и принято писать на Си.

Хотя если у вас из «минимальных требований» - малина и докер, тогда все понятно, и это лучше обходить стороной.

windows10 ★★★★★
()
Ответ на: комментарий от windows10

Ты это все сам придумал и сам же с этим споришь. Нигде не написано, что rpi и docker - минимальные требования. Есть мануал по установке, который подходит для большинства. Если тебе не подходит - делай иначе или вообще не делай. Что за привычка тем, кто делает, на голову срать? Сделай лучше, а не делаешь - не свисти.

kid
() автор топика
Ответ на: комментарий от kid

Так чем твоё лучше HA? HA на rpi прекрасно работает, имеет норм. интерфейс, ни от каких облаков не зависит, не требует (за искл. редких случаев исп. темплейтов) знания программирования, … плюс esphome, множество плагинов и прочих плюшек, а главное большое сообщество, базу знаний и …

futurama ★★★★★
()
Ответ на: комментарий от kid

Сделай лучше, а не делаешь - не свисти

Мне что, пол-говнософта нужно переписать?)

Нигде не написано, что rpi и docker - минимальные требования

Сабж пролистай и почитай. Ты сам привел Малину в качестве примера минимального потребления ресурсов, а теперь агришься что тебя тыкнули.

Если тебе не подходит - делай иначе или вообще не делай.

Так оно не работает. Если ты выкладываешь говнософт в публичное пространство - будь готов к критике. А как ты знаешь из реальности - не нужно быть поваром, чтобы критиковать вкус пиццы ;)

windows10 ★★★★★
()
Ответ на: комментарий от kid

пиши на Си по Кернигану и Ричи, если сдюжишь.

Так я и пишу, родной. И собрать поделку на C - не надо скачать сначала докер, потом пол интернета с shithub с исходничками нескушной гошечки оперделённых версий. Воистину, гошники мутрировали в питонистов усоленных.

И да, почему lua то? Самый всратый из языков? Есть всратее - berry там или ещё какой ucode.

Или не осилил интегрировать duktape/quickjs? Так их есть на shithub’е.

LynxChaus
()
Ответ на: комментарий от CrX

Просто насчёт жильцов уже отчаялись, а насчёт дома пока не успели — может хоть его удастся сделать умным.

У меня из умного дома есть одна Wi-Fi розетка с веб-мордой, которой я могу с работы отключать жене телевизор. :)
Конечно, розетка, кроме Wi-Fi, больше ни к чему не привязана.

hbars ★★★★★
()
Ответ на: комментарий от windows10

У тебя не критика, ты просто, как макака в зоопарке, говном в посетителей кидаешься. Я нигде не говорил, что rpi это минимально необходимая платформа, ты просто жопой читаешь. На этом всё, больше тебе не отвечаю.

kid
() автор топика
Ответ на: комментарий от kid

ну хорошо если это так и останется, потому что на sentry и home-assistant я вижу майнтайнеры просто забили, т.к. вероятно слишком сложно без докера

хотя home-assistant в ауре пока вроде жив, а sentry скорее нет

sergej ★★★★★
()
Ответ на: комментарий от futurama

HA имеет ужасный интерфейс, задачей которого является сокрытие того факта, что HA требуется алгоритмическое описание реакций на события, то есть код. Графический интерфейс неизбежно справляется с описанием хуже, чем код. Я уже не говорю, что поднять HA на rpi можно, но он все ресурсы там пожрет. Что до сообщества - это, разумеется, правда и никакое новое решение не может на старте сразу откуда-то раздобыть это самое сообщество. Люди будут приходить постепенно - те, кому это нужно. Вряд ли это будут те же люди, которые тут изливают из себя потоки желчи, но они будут.

kid
() автор топика
Ответ на: комментарий от sergej

В моем случае я дома поднимаю frigate, который основным способом деплоя предлагает докер и Zigbee2MQTT, который предлагает докер вторым способом. Нафига бы мне усложнять себе и людям жизнь, если можно тоже собрать образ в докер и все, что надо будет сделать - скачать docker-compose.yml и сделать docker compose up -d?

kid
() автор топика
Ответ на: комментарий от kid

Нафига бы мне усложнять себе и людям жизнь, если можно тоже собрать образ в докер и все, что надо будет сделать

И тем не менее никто ничего не будет делать, по причинам описанным выше.

windows10 ★★★★★
()
Ответ на: комментарий от kid

Люди будут приходить постепенно - те, кому это нужно. Вряд ли это будут те же люди, которые тут изливают из себя потоки желчи, но они будут.

Не будет. Вот увидишь.

Просто потому что ты не в состоянии описать зачем это нужно, и почему именно твое решение, а не уже существующие и работающие.

За технические нюансы, которые я увидел прочитав код - деликатно промолчу, но после увиденного - только дебил на полном серьезе доверит дом этому васяноподелию наколеночному.

windows10 ★★★★★
()
Ответ на: комментарий от kid

Я нигде не говорил, что rpi это минимально необходимая платформа

Минимальное потребление ресурсов — работает на Raspberry Pi.

Если ты упоминаешь минимализм в контексте RPI, значит семантически твоя фраза означает аргументацию через пример. Вот только масштаб ты выбрал неправильный, поскольку RPI - мощный, полноценный компьютер. А раз так, значит твоя программа жирная.

Я уже не говорю, что поднять HA на rpi можно, но он все ресурсы там пожрет

И твоя пожрет, как только достигнет хотя бы половины функциональности HA, если даже на стартовом этапе с ней такие сложности, что ей аж докер нужен.

- - -

Я бы тебе показал на примере как работает «plug n play» в мире IoT, когда ты первый раз подключаешь устройство. Но не буду, хочу чтоб ты сам подключил их хотя бы 50 штук и увидел ошибки в говнокоде. Я их уже увидел.

windows10 ★★★★★
()
Ответ на: комментарий от kid

HA интерфейс создает yaml. Движок его обрабатывает.

Графический интерфейс со своей задачей справляется и позволяет перейти от гуи к тексту.

Ресурсы rpi 4 2gb заняты незначительно, есть большой запас.

Так что непонятно зачем менять НА на твоё, тем более у НА кроме zigbee есть и esphome

futurama ★★★★★
()

Homescript — новый открытый движок для умного дома

DOOM на нем уже запустили?

slackwarrior ★★★★★
()
Ответ на: комментарий от kid

HA имеет ужасный интерфейс, задачей которого является сокрытие того факта, что HA требуется алгоритмическое описание реакций на события, то есть код.

Нормальный, настраиваемый интерфейс. Даже вполне симпатичный.
Еще и расширяемый плагинами\интеграциями.

Умный дом - это все-таки не только автоматизации. Иногда надо камеру посмотреть, руками лампочку включить\выключить, etc.

Nightwing
()
Ответ на: комментарий от kid

А можно делать pacman -S homescript и обновлять всю систему pacman -Syu - гораздо удобнее докеров. Пакеты удобнее, хорошо когда разработчики не забывают про удобство майнтайнеров дистрибутивов.

sergej ★★★★★
()
Ответ на: комментарий от sergej

Всё в твоих руках, можешь мейнтейнить пакет для любимого дистрибутива. Странно ожидать, что я в одного буду этим заниматься же?

kid
() автор топика
Ответ на: комментарий от kid

Не, мне хочется ожидать вменяемой системы сборки, которая вроде есть.

Я как-то напердолился со сборкой сентри без докера, у меня теперь травма :)

sergej ★★★★★
()
Ответ на: комментарий от futurama

на сайте РКН в блокировках нет homescript.dev

но есть его ip-адрес, 155 записей в реестре, 113 из них на полную блокировку

yandrey ★★
()
Ответ на: комментарий от sergej

Собирается все в одну строчку: go build -o homescript-server cmd/server/main.go

kid
() автор топика
Ответ на: комментарий от windows10

докер нужен

Упомянут в разделе quickstart как best option to get started.

В readme docker support идёт после стандартного билда для go.

Чего ты так стриггерился?

Я их уже увидел.

Расскажи покажи.

pisemsky
()
Ответ на: комментарий от pisemsky

Чего ты так стриггерился?

Я всегда триггерюсь на ненужные васянские поделки, в которых нет творчества и новых идей, тем более когда они на моем ЛОРчике.

Понимаю если бы чувак посидел с паяльником, и изобрел новый фичастый протокол связи, который дальше бьет, меньше жрет, больше передает, и тд. Ну или хотя бы показал референсную реализацию этого на примере собственного дома, где у него на 10 сек включается свет в комнате №3 по достижению на уличном датчике температуры 15.5 градусов цельсия и влажности воздуха от 80% до 81%.

Но здесь предлагается непонятное нечто, под которое еще и скрипты нужно писать, еще и на языке который ... скажем так, не очень популярен даже среди айтишников.

Ясен хер что этого никто не будет делать, потому что те кто не могут в скрипты - поставят нормальный HA, а те кто могут в скрипты - напишут на своем ЯП реализацию каждого ответного чиха на любой пердеж.

Расскажи покажи.

Я уже нашел 4 потенциальных глюка. Но автор должен либо сам к этому придти (а для этого этим нужно пользоваться ровно так как оно заявляется), либо ждать ишшуев на гитхабе. Либо заплатить мне денег ;)

windows10 ★★★★★
()
Ответ на: комментарий от windows10

@#$%, и это всё пишет человек, который делает DE на PHP и даже свой собственный дистрибутив линукса (тм). Вася, уж по всем понятиям более васянской ненужной поделки и придумать невозможно. Обои то хоть нескучные?

kid
() автор топика
Ответ на: комментарий от kid

@#$%, и это всё пишет человек, который делает DE на PHP и даже свой собственный дистрибутив линукса (тм). Вася, уж по всем понятиям более васянской ненужной поделки и придумать невозможно. Обои то хоть нескучные?

DE - это инструментарий для моей собственной работы, точнее улучшения ее производительности, что приносит мне деньги. Я бы в жизни не догадался выкладывать это в новости на серьезных щщах. Представляю: «Вышла первая версия ГовноDE на пыхе — ДЕ для демонстрации того что PHP не сдох». Аж ржанул, пока набирал это.

Но даже в случае с DE я предпочитаю демонстрацию как это работает вживую, и что с этим делать.

Это кстати говоря не единственный мой наколенный проект, и как я уже упоминал, многие из этих проектов тянутся с 2013-2015 года, включая туподомные поделки, которые не ограничиваются морганием светом, как у тебя.

Так что да, чтобы я и подобные мне злые бородатые линуксятники не ухмылялись с тебя - тебе нужно было предоставить примеры работы всего что ты нарекламировал.

Автоматическое обнаружение устройств? Окей, снял видос как ты вкручиваешь купленную лампочку, а твоя система пишет «обнаружено новое устройство, вставьте диск с драйвером»

Наглядность? Отлично, вкрутил новую лампочку, и появились новые доступные для нее скрипты-темплейты. При чем интерактивные, а не «повысить температуру на устройстве на один градус». Лампочка активирует лампочковые скрипты, кондиционер температурные, кран литровые, счетчик воды input'овые, туалетный бачок output'ные. Все как в компьютере: ты ж не отправляешь документ на печать на мышку.

Скрипты на Lua? Отлично. Примеры ! Ну там «если появляется мужик в синем свитере - моргнуть 5 раз лампочкой».

Событийная логика? Реакция на изменения в реальном времени? Отлично, пусть твоя система включает лампочку как только увидит включенный свет на камере, ты перед камерой поморгаешь светом 25 раз в секунду (с фреймрейтом камеры, чтоб не читерить) - и лампочка будет моргать 25 раз в секунду, синхронно. Слабо?

Минимальное потребление ресурсов? Вообще шикарно. Берешь VoCore (могу поспорить ты и платы-то такой не знаешь, она не для докерников) на RT5350, там целых 32 мегабайта ОЗУ и 8-ми-мегабайтная фуфлешка, и демонстрируешь работу на этом. В реальном времени, да-да.

- - -

Но ты почему-то думаешь что если нагородил наколенных скриптов, которые «могут», а не «делают», то люди ломанутся это ставить и этим пользоваться. Херак-херак и в продакшон.

Впрочем «docker» это слово-маркер, поэтому мне кажется я слишком многого жду.

windows10 ★★★★★
()
Последнее исправление: windows10 (всего исправлений: 1)
Ответ на: комментарий от kid

Собрал без проблем go-1.25.3 под FreeBSD 14.3. Запускать планирую как время позволит, если что закину тикет в гитхабе.

dsl ★★
()
Ответ на: комментарий от windows10

Не сильно ли дохрена ты всего требуешь бесплатно, когда сам даже issue открыть не можешь даром на якобы найденный баг? Я тебе ничего не должен. Я поделился тем, что делаю для себя в первую очередь и что считаю полезным другим. Не нравится тебе — иди мимо, не для тебя значит это сделано. Тоже мне, пуп земли, старый бородатый линуксоид…

Примеры скриптов кое-какие есть на сайте. Их достаточно для понимания того как можно управлять устройствами и сохранять/восстанавливать состояние. Все скрипты для всех на все случаи жизни не напишешь и задачи такой нет. Ещё раз тебе говорю: не нравится что-то, просто проходишь мимо и идешь, идешь, пока не дойдешь куда надо.

kid
() автор топика
Ответ на: комментарий от kid

Трепло.

Приятно познакомиться.

Ты так и не ответил на вопрос - почему LUA который «широко известен в узких кругах» а не js на duktape/quickjs которые знает любая макака, спавшая на книжке «js для чайников» после сейшена в общаге.

LynxChaus
()

Ох, жесть. Вроде же просто еще одна штука для автоматизации со своей нишей. Откуда тут столько хейта?

dsl ★★
()
Ответ на: комментарий от LynxChaus

Потому что lua это отсутствие GC и event loop. Логика домашней автоматизации на lua описывается отлично, никаких подводных камней там нет, в том числе потому что он создавался именно для встраивания. Ducktape не особо совместим с nodejs или браузером - это надо будет каждому хейтеру объяснять, почему 99% всего с npm не работает? Плюсов у js в этом случае нет никаких.

kid
() автор топика
Ответ на: комментарий от dsl

Видимо, сублимация. По причине того что в автоматизации вообще довольно плохо и запутано всё стало (предполагаю).

alash
()
Ответ на: комментарий от LynxChaus

Ты так и не ответил на вопрос - почему LUA который «широко известен в узких кругах» а не js на duktape/quickjs которые знает любая макака, спавшая на книжке «js для чайников» после сейшена в общаге.

Да потому что автор банально не умеет в анализ рынка, и предпочитает оперировать в рамках собственных умений, а не в рамках необходимости.

Короче пишет что знает, а не как нужно.

windows10 ★★★★★
()
Ответ на: комментарий от windows10

в рамках собственных умений, а не в рамках необходимости.

Короче пишет что знает, а не как нужно.

А к твоему de это не относится?

Tanger ★★★★★
()
Ответ на: комментарий от Tanger

А к твоему de это не относится?

Нет конечно.

Потому что DE - это законченный ГУЙ, там вообще никакой ЯП знать не нужно, там тыкать кнопочки.

Потому что DE имеет кучу демонстраций работы на практике.

Потому что DE вообще не создавалось для работы, оно создавалось как proof of concept, соревновательный ответ на вброс «PHP может только в веб», о чем и говорит диалог «about»: https://phpsupreme.de/wp-content/uploads/2025/10/screenshot_2025-10-05-203835...

Это уже по ходу написания стало понятно, что оно даже на этапе ранней альфы приятнее гнома и кед, и я стал этим пользоваться. Но не планировалось.

А главное, потому что мое находится в скриншотах, а ссылка на VDI втыкнута чтобы люди могли убедиться, что это не фотошоп или ИИ, а реально написанный код. Здесь же как бы новость с посылом «качайте и пользуйтесь» - а с таких продуктов спрос уже другой.

При всем при этом, я отлично отношусь к критике, и к троллингу, а не включаю истерику, предлагаю всем несогласным написать свое DE, и вообще уйти нафиг если что-то не нравится.

windows10 ★★★★★
()
Последнее исправление: windows10 (всего исправлений: 1)
Ответ на: комментарий от urxvt

Лучше бы свободный водяной сторож сделали.

Я в каком-то виде очень вяло поделываю.

Сейчас есть параметрическая модель (freecad) адаптера в меру мощного китайского привода под произвольный кран.

Контроллер пока не делал.

Tanger ★★★★★
()
Ответ на: комментарий от windows10

Да потому что автор банально не умеет в анализ рынка, и предпочитает оперировать в рамках собственных умений

Как и большинство других людей. И это нормально.

Somebody ★★★★
()
Ответ на: комментарий от Somebody

Как и большинство других людей. И это нормально.

Я бы не сказал. Хотя конечно же все зависит от конечных целей автора или производителя.

Ты же не будешь выпускать сетевухи с RS232-разъемом, только потому что у тебя других нет в наличии, не правда ли?

Точнее выпускать-то ты можешь, но у тебя их просто никто не будет брать, ибо людям привычнее RJ45, каким бы при этом классным не был другой разъем.

Программирование ничем не отличается от реальности. Человек всегда предпочтет популярное хорошему, хотя бы из-за поддержки сообществом. Ну а нитакусики ... нитакусики скорее просто напишут свое, им-то зачем очередной васянский скрипт для примитивной оркестровки? Тем более что Васян из темы даже протокол не удосужился перебрать, а тянет чужую библиотеку.

Дело как бы его, но дом этой штуке я не доверю.

windows10 ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.