HoverHelm — сетевые диски для тех, у кого нет жёсткого: дронов, микроконтроллеров.
Вставляем диск в сервер — через модемы клиенты получают к нему доступ. И пару вкусных фич вдобавок.
Фичи и преимущества по сравнению с голым EEPROM
Сетевой жесткий диск:
можно забыть про ограничение в 4кБ
можно делать программы модульными
легко обновить программу, не нужно перешивать каждого дрона
за всю игру может понадобиться скрафтить только один жесткий диск
Удаленный терминал:
не нужны клава и моник, больше слотов в роботах
централизованное управление всех ваших дронов
Обратная совместимость:
старые eeprom-программы работают без изменений
Какие-то другие очевидные плюсы, про которые я забыл
Прогресс разработки
Система запускается и работает
Виртуальный диск с доступом к папке на жестком диске сервера
Удаленный терминал для запуска программ на устройствах
Конфигурация
Логирование
Связь через сетевую и связанную карту
Инсталлятор
Виртуальный гпу
Связь через интернет-карту (Stem)
Сохранение имен устройств
Удаленные терминалы
Минимальные системные требования
Конечное устройство
Сервер
Инструкция по установке
Установка сервера:
Установите OpenOS
Выполнить команду pastebin run xh61Yx8a
Отредактируйте открывшийся конфиг
Добавьте желаемые к использования сетевые и связанные карты по образцу
Можно настроить пути расположения пользовательских папок и папки клиентского ядра
Установка клиента:
Запустите HoverHelm server hoverhelm/main.lua
Выполните команду prepare_eeprom <имя устройства> <адрес серверного модема> <порт> <адрес клиентского модема>
Если на сервере одна сетевая карта, вместо адреса её можно вписать тип (modem или tunnel).
Адрес клиентского модема можно убрать вообще, если на клиенте только одна сетевая карта.
Инструкция по использованию
Запустите сервер HoverHelm командой hoverhelm/main.lua
Запустите устройства, просто включив их
при первом запуске каждого устройства будет создана его пользовательская папка в /home/hoverhelm/devices/<deviceName>/
можно смонтировать по этому пути отдельный диск средствами OpenOS
в терминале сервера и в файле лога устройства повится строка <deviceName> started, сигнализирующая о готовности устройства
файлы, общие для всех устройств лежат в /home/hoverhelm/device_core/ (coreRootFolder в конфиге)
файлы, специфичные для конкретного устройства лежат в /home/hoverhelm/devices/<deviceName>/ (userRootFolder в конфиге)
В терминале сервера выполните deviceName>device-program-name args, чтобы выполнить на устройстве deviceName программу device-program-name с аргументом args
программа с именем test будет искаться по пути /test.lua и /programs/test.lua, относительно виртуальной фс устройства
Из коробки пока доступна только программы reboot и lua
В терминале сервера выполните hide, чтобы свернуть HoverHelm server не прерывая его работу
можно будет открыть его той же командой для продолжения работы с терминалом
Ссылки
Гитхаб: https://github.com/hohserg1/HoverHelm