Описание

Дисковый телефон как аудиоэкспонат: посетитель снимает трубку — играет трек, набирает цифру на диске — переключается на другой трек, кладёт трубку — воспроизведение останавливается. Контент и список соответствия «цифра → трек» лежат на карте памяти, сеть не нужна.

Состав устройства

СлотАппаратный модульПрограммный модуль
0soundMono — динамик трубкиmp3Player
1SD_card — карта памяти с треками и whitelist.txt—
2button_led — вход bt: рычаг трубкиbutton_led
3in_2ch — дисковый номеронабиратель, перемычки OC на обоих каналахdialer
4— (виртуальный)whitelist — набранная цифра → действие

Питание — USB-адаптер 5 В (артикул 000-004) в разъём USB контроллера.

Схема подключения

Динамик трубки — на spk+/spk-. Рычаг трубки — сухой контакт между bt и gnd модуля button_led. Номеронабиратель: ena — на ch_1, pulse — на ch_0, общий — на gnd модуля in_2ch; контакты сухие, поэтому перемычки обоих каналов — в положении OC (см. OE).

Типовой конфиг

[SYSTEM]
deviceName = retroTelephone
 
[SLOT_0]
mode = mp3Player
;по окончании трека проиграть его снова
crosslink = player_0/event/endOfTrack:#->player_0/action/play:#
 
[SLOT_1]
mode = SD_card
 
[SLOT_2]
mode = button_led
;трубка снята - играть текущий трек, положена - стоп
crosslink = button_2/event/press:1->player_0/action/play:#, button_2/event/press:0->player_0/action/stop:1
 
[SLOT_3]
mode = dialer
;номер из одной цифры
options = numberMaxLenght:1
;набранная цифра уходит на проверку по списку
crosslink = dialer_3/event/val:@->whitelist_4/action/check:@
 
;виртуальный слот: список хранится в корне карты памяти как whitelist.txt
[SLOT_4]
mode = whitelist
  • Сетевые интерфейсы не используются — группы [LAN], [UDP], [OSC], [MQTT] в конфиге отсутствуют, см. структуру конфигурационного файла.
  • [SLOT_0]: трек зациклен — по endOfTrack запускается снова (# — текущий трек, см. специальные символы).
  • [SLOT_2]: рычаг отпущен (трубка снята) — press = 1, играет текущий трек; трубка положена — press = 0, стоп. Если рычаг замкнут при снятой трубке, добавьте опцию buttonInverse.
  • [SLOT_3]: после набора одной цифры номер сразу рапортуется (@ — как есть) и передаётся в whitelist командой check.
  • [SLOT_4]: whitelist ищет набранную цифру в файле и выполняет действие из совпавшей строки.

Файл whitelist.txt в корне карты памяти — по одной записи на строку, слева набранная цифра, справа действие в формате crossLink без имени устройства:

1->player_0/action/shift:0
2->player_0/action/shift:1
3->player_0/action/shift:2

Набор «1» переводит указатель на нулевой трек; если трубка снята и проигрыватель работает, он сразу начинает играть. Цифры, которых нет в списке, игнорируются — whitelist рапортует noMatches.

Подробнее — внутренние связи (crossLink).

Архив

Описание устройства для прошивок до перехода на конституцию — Ретро телефон (архив).