Skip to content

EvelRus/LegoTrainPanel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚂 LEGO Train Panel

Веб-приложение для управления поездами LEGO PoweredUP через браузер.
Управляйте несколькими хабами одновременно с любого устройства в локальной сети — ПК, iPad, смартфон.

© Шарапов В.Н., 2026 · MIT License


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

🎮 Управление Ползунок скорости, пресеты, кнопки ±10/±100, гудок
🔗 Составы Синхронное управление несколькими локомотивами
🎬 Сценарии Запись движений в реальном времени и воспроизведение
🕐 Расписание Автозапуск действий по времени и дням недели
🛑 E-STOP Мгновенная остановка всех поездов одной кнопкой
📱 PWA Установка на iPad/iPhone/Android как нативное приложение
🔧 PyBricks Поддержка хабов под управлением прошивки PyBricks

🚀 Быстрый старт

# Требования: Node.js 20+, Bluetooth 5.0 BLE
git clone https://github.com/EvelRus/LegoTrainPanel.git
cd LegoTrainPanel
npm install
node server.js

Открыть браузер: http://localhost:3000

Подробные инструкции для каждой ОС — в Wiki: Установка.


📁 Структура проекта

LegoTrainPanel/
├── server.js              # Точка входа: HTTP + Socket.IO + BLE
├── lib/
│   ├── ramp.js            # Движок плавного разгона
│   ├── logger.js          # Логгер (память + файл + Socket.IO)
│   └── scheduler.js       # Составы, сценарии, расписание
├── public/
│   ├── index.html         # HTML-каркас интерфейса
│   ├── css/style.css      # Все стили
│   ├── js/app.js          # Клиентский JavaScript
│   ├── manifest.json      # PWA-манифест
│   ├── sw.js              # Service Worker
│   ├── photo/             # Фотографии поездов + logo.png
│   └── sound/             # Звуки поездов (.mp3)
├── data/
│   ├── logs/              # Лог-файлы (YYYY-MM-DD.log)
│   ├── scenarios.json     # Сохранённые сценарии
│   ├── schedules.json     # Расписание
│   └── consists.json      # Составы
├── hub-config.json        # Конфигурация хабов (UUID → настройки)
└── package.json

📖 Документация

Полная документация доступна в GitHub Wiki:


📦 Зависимости

node-poweredup ^10.x   — управление хабами по BLE
express        ^4.x    — HTTP-сервер и API
socket.io      ^4.x    — WebSocket для реального времени

🐛 Хотите сообщить об ошибке или предложить улучшение?

→ Пожалуйста прочитайте Как правильно создать issue
Это сильно ускоряет исправление!

About

Браузерный пульт управления LEGO Powered UP: синхронное управление составами, сценарии в реальном времени, расписание и безопасный E-STOP.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors