Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Я попытался адаптировать свой существующий проект сетки Ripple LoRa, чтобы создать автономное устройство для обмена сообщениями, которому не требуется сопутствующее устройство Android.
Это устройство можно использовать либо с другими автономными устройствами обмена сообщениями, либо с устройствами с сеткой Ripple, которые используют приложение Ripple Messenger. Они совместимы и автоматически формируют свою собственную ячеистую сеть со сквозным шифрованием ECC. И, конечно же, все они могут использовать выделенные ретрансляторы для большей дальности / надежности.
Запасы
- ТТГО LoRa32 V2.1
- Модуль DS3231 RTC
- Модуль клавиатуры
- Пьезо-зуммер
- 1S Lipo аккумулятор
Шаг 1. Начало работы
Вам понадобится карта памяти micro SD, на которой будут храниться ваш идентификатор, настройки, контакты и сохраненные разговоры. Вам необходимо подготовить SD-карту с файлом конфигурации, что обычно требуется сделать только один раз.
Людям, с которыми вы хотите создать сеть, необходимо присваивать и назначать уникальные идентификаторы для каждого человека в диапазоне от 1 до 254. Нет ни центрального сервера, ни Интернета, так что вам решать. На компьютере вставьте SD-карту и создайте папку под названием «рябь». В этом каталоге создайте простой текстовый файл с именем 'conf.txt' (формат Unix, а не MS-DOS!). Этот файл должен выглядеть, как указано выше.
Строки могут располагаться в любом порядке, но первые 2 символа - это имя свойства (например, «ID» - это ваш идентификатор), за которым следует значение, заканчивающееся новой строкой. Свойства:
- GR - ID группы (можно оставить 0)
- ID - Ваш уникальный ID (1..254)
- FQ - частота LoRa для использования
- SF - используемый коэффициент распространения LoRa (10..12)
- NM - Ваше отображаемое имя (это видят другие)
- TZ - Ваш часовой пояс в минутах от времени по Гринвичу. (по желанию)
ПРИМЕЧАНИЕ: все в вашей группе должны использовать одинаковые значения GR, SF и FQ !! После того, как вы настроили SD-карту, просто вставьте ее в правый слот и включите устройство. Для навигации используются 4-позиционные клавиши направления. Вверх / Вниз для выбора контакта, Вправо для выбора. (Влево или ESC используются для возврата к предыдущему экрану).
ПРИМЕЧАНИЕ: клавиатура Blackberry
Для этого модуля клавиатуры я выбрал комбинации клавиш для 4-сторонней навигации:
- Вверх: ALT + P (символ "@")
- Вниз: ALT + ENTER
- Назад: ALT + $
- Выбрать: ENTER
Шаг 2: Обмен ключами с другими
Чтобы добавить еще одного пользователя, т.е. контакт, вам необходимо войти в специальную комнату обмена. Для этого чата вам необходимо согласовать 4-значный пароль с другим (-ми), введите его и нажмите ENTER.
Здесь вы выбираете верхний элемент «-Мои подробности-» и нажимаете ENTER, чтобы передать свой идентификатор, имя и открытый ключ шифрования всем остальным в комнате. Когда другие сделают это, вы увидите их ID, имя появится в списке. Используйте клавиши «Вверх» / «Вниз» для выбора, затем клавишу «Вправо» или «ВВОД», чтобы ДОБАВИТЬ этого пользователя в свои контакты (сохраненные на SD-карту).
Вы можете сделать это в любое время, чтобы добавить или обновить пользователей в свой список контактов.
Шаг 3: беседы
На главном экране используйте клавиши «Вверх» / «Вниз» для выбора контакта, а затем «Вправо» для входа в экран беседы.
Просто используйте клавиатуру для ввода сообщений, которые вы хотите отправить, затем нажмите клавишу ENTER. Во время отправки текст будет мигать. В случае успеха сообщение прокручивается вверх в диалоге, в противном случае, если его не удалось доставить, оно перестанет мигать и останется ниже горизонтальной линии.
Шаг 4: оповещения
Экран автоматически отключается через 15 секунд, если не нажимаются никакие клавиши. При поступлении нового сообщения экран включается, показывая полноэкранный предварительный просмотр сообщения и имени отправителя, с мигающим зеленым светодиодом и звуковым сигналом.
Отсюда вы можете нажать клавишу «Влево» или «ESC», чтобы вернуться на главный экран, или клавишу «Вправо» или «ВВОД», чтобы войти в экран разговора.
Шаг 5: Подключение
Выше для справки приведена электрическая схема. Это довольно просто, всего лишь задействованы два подчиненных модуля I2C (часы RTC и клавиатура) и пьезозуммер.
Шаг 6: Прошивка прошивки
Прошивка находится на странице Ripple на github:
ПРИМЕЧАНИЕ: перед попыткой прошивки прошивки извлеките карту micro SD! По какой-то причине это мешает последовательному порту USB. На сайте есть инструкция, как прошить прошивку на плату TTGO ESP32.
Шаг 7: Печать корпуса и сборки
Пожалуйста, перейдите по этой ссылке Thingiverse для файлов STL. Есть две основные части, верхняя и нижняя части корпуса. Есть также две небольшие детали для создания настраиваемого ползунка включения / выключения.
Вам понадобится несколько болтов M2, чтобы прикрепить плату TTGO и клавиатуру к верхней части корпуса.
Прикрепите клавиатуру к верхней части корпуса двумя болтами M2, пропустите ленточный кабель через прорезь, отогните его и защелкните на плате управления, которая прикреплена к нижней стороне (см. Рис. Выше).
Затем вставьте переключатель включения / выключения в прорезь, затем защелкните две части корпуса вместе.
Шаг 8: Установка часов RTC
Чтобы заполнить модуль RTC, вам необходимо создать специальный файл на SD-карте вашего компьютера. В папке «ripple» создайте простой текстовый файл с именем «clock.txt» (формат Unix, а не MS-DOS). Отредактируйте файл и добавьте следующие значения даты в отдельные строки в следующем порядке:
год
месяц (1..12)
день месяца (1..31)
час (0..23).
минут (0..59)
секунды (0..59)
Сохраните файл, извлеките SD-карту и вставьте ее в устройство. Чтобы изменения вступили в силу, вам необходимо перезагрузить устройство. Теперь часы RTC должны быть установлены, и на главном экране должно отображаться правильное время.
Шаг 9: Заключение
Если вы сочтете этот проект полезным и захотите бросить биткойн в мою пользу, я буду очень благодарен:
Мой адрес BTC: 1CspaTKKXZynVUviXQPrppGm45nBaAygmS
Обратная связь
Когда случается SHTF, или наступает зомби-апокалипсис, или астероид, или что-то еще, и вам нужно поговорить с семьей и друзьями, я надеюсь, что этот гаджет пригодится!:-) Не стесняйтесь оставлять комментарии и задавать мне любые вопросы.