Рингтоны
Общая информация о рингтонах
Существует несколько устройств, которые поддерживают использование RTTTL-рингтонов. На данный момент доступны два варианта:
- SEEED T1000E
- LilyGo T-Deck
- M5Cardputer + LoraKit
Практически любой узел с buzzer должен поддерживать настройку пользовательских рингтонов, но результат может отличаться в зависимости от устройства.
Немного о RTTTL
RTTTL (Ring Tone Text Transfer Language) — это протокол конфигурации, который позволяет создавать музыкальные сигналы с помощью простой строковой записи. Рингтон по умолчанию для большинства устройств Meshtastic выглядит так:
24:d=32,o=5,b=565:f6,p,f6,4p,p,f6,p,f6,2p,p,b6,p,b6,p,b6,p,b6,p,b,p,b,p,b,p,b,p,b,p,b,p,b,p,b,1p.,2p.,p
Этот рингтон состоит из двух частей: заголовка и списка нот.
Заголовок рингтона
24— имя/идентификатор рингтона (обычно игнорируется)d=32— длительность ноты по умолчанию (тридцать вторая нота)o=5— октава по умолчанию (5-я октава)b=565— темп (ударов в минуту)
Ноты рингтона
После заголовка идёт список нот. Ноты разделяются запятыми и могут содержать 4 параметра:
- длительность
- высота (нота)
- октава
- точка (увеличение длительности)
Разберём первые 6 элементов из рингтона по умолчанию:
f6— нота F в 6-й октаве (длительность по умолчанию — 1/32)4p— пауза длительностью 1/4 от стандартной2p— пауза длительностью 1/21p.— пауза длительностью 1 такт с точкой (×1.5)b6— нота B в 6-й октавеb— нота B в октаве по умолчанию (5-й)
Настройка уведомлений Meshtastic
Чтобы изменить рингтон на устройстве:
- Откройте вкладку External Notification в настройках узла (в приложении или WebUI)
- Внизу найдите поле Ringtone
- Вставьте туда свою строку RTTTL
Обязательно установите параметр Nag Timeout на небольшое значение, иначе устройство будет постоянно повторять сигнал, пока вы не нажмёте кнопку.
- Если установить
0— уведомление проиграется только один раз.
Nokia Composer
Есть удобный сайт, где можно экспериментировать с RTTTL-строками и слушать их прямо в браузере, а также использовать готовые примеры:
Примеры
Legend of Zelda Get Item
24:d=16,o=5,b=120:g,c6,d6,2g6
Super Mario Theme (Shortened)
24:d=4,o=5,b=100:16e6,16e6,32p,8e6,16c6,8e6,8g6,8p,8g
Mario Coin
24:d=8,o=6,b=200:b,e7
Mario Power Up
powerup:d=16,o=5,b=200:g,a,b,c6,d6,e6,f#6,g6,a6,b6,2c7
Nokia Ringtone
24:d=4,o=5,b=180:8e6,8d6,f#,g#,8c#6,8b,d,e,8b,8a,c#,e,2a
Morse Code CQ
24:d=16,o=6,b=120:8c,p,c,p,8c,p,c,4p,8c,p,8c,p,c,p,8c,8p
Примеры использования
Один из удобных способов использования рингтона — это поиск устройства.
Если отправить своему узлу сообщение с эмодзи 🔔, можно запустить рингтон на время, заданное в Nag Timeout.
Это особенно полезно, когда вы не можете найти устройство (например, оно оказалось в корзине с бельём — как это часто бывает 😄).