Не все поймут, немногие вспомнят — фраза как нельзя более точно применимая к пейджерам. Последние пейджинговые операторы на территории СНГ прекратили свое существование минимум 10-15 лет назад, тем временем выросло целое поколение людей, которые не видели пейджеры даже в кино и понятия не имеют, что это такое. В целях расширения кругозора и просто прикола ради я решил детально изучить технологию их работы и попытаться самостоятельно реализовать доставку сообщений. Материал по моим очередным безумным экспериментам получился внушительных размеров, поэтому пришлось разбить его на части. В первой части я предлагаю «вспомнить все» и заглянуть пейджеру под капот, чтобы настроить его и подготовить для приема сообщений, ведь практически 30 лет лежания на полке для электроники не проходят бесследно.
Минутка истории
Для тех, кто забыл или вовсе не знал, пейджеры — это небольшие портативные гаджеты для приема какой-либо информации на расстоянии с помощью радиоволн. Это односторонний вид связи, при котором получатель может только получать сообщения и не может на них ответить, т.е. пейджер представляет собой пассивный цифровой приемник, который умеет только принимать и отображать сообщения. Фактически подобные устройства появились еще вначале 20 века, однако как средство персональной связи они получили наибольшее распространение лишь к концу 80х (на западе), а в СНГ — к середине 90х.
Исторически ранние массовые пейджеры были тональными, они еще назывались биперами и представляли собой примитивную прищепку на батарейках, которая начинала пищать, когда его обладателю отправляли «сообщение». Предполагалось, что получатель при поступлении оного уже заранее знает, что от него хотят и что он должен делать (например, врач — вернуться на пост, полицейский/пожарный — в часть и т.п). Помимо просто пищания некоторые модели таких пейджеров могли воспроизводить голосовые сообщения (работали по типу адресной рации). Типичный пример такого устройства — Motorola Pageboy II:
Следующим этапом развития стали числовые (numeric) пейджеры, которые могли не только пищать и вибрировать, но еще и отображать некие циферки на небольшом дисплее. Это позволяло несколько расширить варианты взаимодействия с получателем, например, отправить ему заранее обговоренный код или номер телефона, куда нужно перезвонить. Типичный представитель — Motorola Bravo:
Алфавитно-числовые (alphanumeric) пейджеры — это собственно то, что всплывает в памяти большинства знакомых с теми временами людей при слове «пейджер», и именно этому типу посвящен мой пост. Как следует из названия, эти пейджеры позволяют отображать не только циферки, а еще и буквы, т.е. полноценные текстовые сообщения. Так выглядит довольно популярный в свое время NEC 21A-Maxima:
Этот тип пейджеров получил наибольшее разнообразие марок, моделей и наибольшее распространение среди народа благодаря своей относительной дешевизне (спасибо прогрессу электроники на закате века). Выпускались эти гаджеты с самыми разными возможностями под любой кошелек, поэтому нередко были поводом для понтов. В зависимости от размеров дисплея самые базовые и дешевые версии могли отображать по 1-2 строки текста, модели на 4 строки считались более крутыми и статусными, а на 8 строк — чем-то невероятно космическим.
Еще на закате эры пейджинга появились твейджеры которые позволяли не только принимать, но и отправлять сообщения. Однако они так и не смогли завоевать большой популярности, ибо появились слишком поздно, когда балом начали править появившиеся мобильники с поддержкой SMS. Лично я вообще не видел эти твейджеры никогда вживую, а выглядели они как-то так:
Принцип работы
Принцип работы пейджеров предельно прост: за каждым пейджером был закреплен специальный номер абонента (число из 4-5-6 цифр), а пейджер в свою очередь был закреплен за каким-либо пейджинговым оператором, которому владелец пейджера ежемесячно должен был платить установленную абонентскую плату (подписку современным языком) за возможность принимать сообщения. У пейджинговых операторов были специальные телефонные номера и call-центры, куда можно было позвонить для отправки кому-либо сообщения. В общих словах для этого нужно было проделать следующие шаги:
- Позвонить на номер пейджингового оператора
- Назвать номер абонента, которому хотим отправить сообщение
- Продиктовать сам текст сообщения
Для отправителей сообщения были бесплатными, за все платил хозяин пейджера. Со стороны оператора отвечал и записывал текст живой человек, служивший к тому же фильтром, не допускавшим передачу мата и всякой похабщины, что было поводом многих приколов в 90х. Ходили легенды, что при должной настойчивости или личном знакомстве иногда их все же было можно уломать отправить неподреб. Чуть позже с появлением интернета появились альтернативные варианты для самостоятельной отправки сообщений через сайт или email оператора, и вот здесь уже цензуры никакой не было. Полученное оператором сообщение отправлялось им в эфир на частоте пейджера клиента, вернее ставилось в очередь на отправку, ибо желающих пообщаться обычно было множество. Отправленное сообщение принималось пейджером абонента, который начинал вибрировать/мигать/пищать в зависимости от модели и настроек, и получатель мог прочитать отправленный ему текст. Или не прочитать, если сообщение не дошло, а такое случалось довольно часто. Как я говорил, пейджинг — односторонняя связь, а значит какого-либо подтверждения приема со стороны получателя оператору не приходит. Если в момент передачи сообщения у получателя был разряжен/выключен пейджер, либо сам получатель находился в гараже/подвале/метро, где не ловит радиосигнал, то сообщение не доходило, и ни оператор, ни отправитель не могли об этом узнать. У оператора зачастую была одна единственная передающая вышка, которая охватывала город и его окрестности, но в помещениях и труднодоступных местах прием никак не мог быть гарантирован. Для борьбы с этим операторы обычно транслировали одно и то же сообщение несколько раз в разное время, но и это не было панацеей. Также сам пользователь пейджера при подозрении на пропущенные сообщения мог позвонить на номер оператора, назвать свой абонентский номер и попросить переслать все сообщения за день или другой период. Однако никакие ухищрения не помогли, и к концу 20 века пейджеры начали активно сдавать позиции перед появившимися мобильными телефонами с поддержкой SMS. Основная причина — как раз ненадежность такого способа доставки и невозможность получателя отправить ответ (и даже узнать, кто отправитель, если тот сам не подписался). Так мир перешел на GSM (2G) связь, а про пейджеры довольно быстро забыли.
Однако несмотря на свое мимолетное шествие, пейджеры наряду с VHS «видаками» и аудиокассетами оставили неизгладимый след в культуре человечества и стали символом эпохи. Их все еще довольно часто можно встретить в старых играх, фильмах и сериалах. Кстати, интересны факт: в Японии последний пейджинговый оператор закрылся сравнительно недавно, в 2019 году. Следует отметить, что несмотря на смерть пейджинга для массового потребителя, в некоторых сферах он до сих пор используется и живее всех живых. Все дело в наличии специфических преимуществ, которые в некоторых сценариях использования перевешивают все недостатки:
- Независимость от базовых станций (по сравнению с телефонами): сообщения доходят без задержек, собственное передающее оборудование работает полностью автономно и не требует оплаты
- Текстовая природа передачи информации (по сравнению с рациями): получателю не нужно воспринимать сообщение на слух и бегать за листком с ручкой, полученное сообщение можно всегда перечитать в памяти пейджера
- Полная пассивность: пейджеры не излучают никаких радиоволн, тем самым никак себя «не палят» и не создают помех в работе какого-либо оборудования
Благодаря этим достоинствам пейджеры (более осовремененные) до сих пор используются во многих больницах по всему миру, на различных режимных объектах и в службах спасения.
Выбор пейджера в 2021
Под абсурдным заголовком скрывается вполне реальная проблема. Начнем с того, что для отправки сообщения на пейджер нужно знать следующие его характеристики:
- Частоту, на которую настроен его приемник (в наших краях она была обычно в пределах 150-170 МГц или реже 460-470 МГц)
- CAP-код (или RIC) пейджера (не путать с номером абонента) — особый 7-значный идентификационный номер пейджера, по которому адресуются сообщения конкретному получателю, поэтому они были уникальными в пределах одного оператора. Когда пейджер «разнюхивает» в эфире передающееся сообщение со своим CAP-кодом, он понимает, что это сообщение адресовано ему, и начинает его принимать. В чем же тогда его отличие от номера абонента? Все довольно просто, CAP-код — это системный код, который использовался только оператором, а номер абонента — просто более короткое и удобное для запоминания число. Абонент зачастую сам не знал свой CAP-код, да и знать его третьим лицам было нежелательно, ибо знание кода чужого пейджера позволяло создать его клон для слежки за всеми входящими сообщениями
- Некоторые параметры передачи: скорость и признак инверсии сигнала. Здесь выбор невелик, в протоколе обмена сообщениями предусмотрено только 3 скорости: 512, 1200 и 2400 бит/с, а инверсия либо есть, либо ее нет.
Исходя из перечисленного, основная беда заключается в том, что большинство продающихся в наши дни на барахолках пейджеров — полный хлам, который не стоит и цента, а просят за них нередко четырехзначные суммы. Дело вот в чем:
- Частота рандомного б/у пейджера неизвестна. Заводская частота обычно нанесена на задней крышке, однако в 99% случаев она не имеет ничего общего с реальностью, так как пейджинговые операторы при заключении договора с клиентом перенастраивали приемник на свои частоты
- Даже если пейджер новый и никогда не подключался к оператору, его частота все равно «уплыла» в неизвестном направлении из-за деградации электронных компонентов. Причем уплыть она могла настолько, что приемник полностью рассогласовался и больше никогда не будет нормально принимать сообщения
- Аналогично неизвестен его CAP-код. Заводской код на задней крышке тут также не помощник, потому что операторы прописывали свои. Некоторые модели пейджеров имеют сервисное меню, в котором этот код можно узнать, но в подавляющем большинстве случаев узнать/поменять код можно только с помощью настройки пейджера при помощи программатора
- Настройки пейджеров в 99% случаев защищены паролем, любезно установленным все тем же самым оператором, чтобы клиент не смог втихаря свалить к другому. Для многих, но далеко не всех моделей пейджеров есть способы обхода или сброса этого пароля, остальные остается только выкинуть
Опираясь на описанные выше проблемы, я прошерстил кучу предлагаемых на барахолках видов пейджеров и пришел к выводу, что Motorola Advisor — практически самый «удобный» для покупки и восстановления в наши дни экземпляр. Для него можно без особых проблем узнать частоту, сбросить пароль и поменять CAP-код, собственно этим мы и займемся чуть позже, пока предлагаю рассмотреть, что он из себя представляет:
Это довольно брутально выглядящий кирпич из толстого ударопрочного пластика, на лицевой панели которого имеется большой дисплей на 4 строки текста и кнопки навигации по интерфейсу. Выпускалось устройство в двух вариантах: обычный Advisor и Advisor Linguist. Как следует из названия, второй поддерживал отображение сообщений на двух языках. Такое разделение модели на 2 разных вида было продиктовано некоторыми ограничениями протокола обмена, о которых я расскажу во второй части.
Пейджер одет в пластиковую кобуру, которая сзади оснащена прищепкой для крепления на ремень:
Таким образом при поступлении сообщения пейджер можно в 2 счета извлечь из кобуры, которая остается висеть на ремне — весьма удобно:
Кобура делает пейджер громоздким, поэтому на его задней крышке предусмотрены пазы для прищепки, которую можно переставить с кобуры и использовать девайс в более компактном виде:
Здесь же справа видно крышку элемента питания — пейджер работает от 1xAAA батарейки, и хватает ее почти 2-3 недели непрерывной работы. На белых наклейках некогда были нанесены серийные номера, коды и частота пейджера. На правом торце имеются отверстия динамика, красный светодиод, который мигает при получении сообщения, и кнопка включения/выключения:
На левом торце нет ничего, кроме 3х отверстий для подключения к COM порту компьютера для программирования:
Данный пейджер относится к одному из первых поколений алфавитно-числовых пейджеров, поэтому имеет весьма примитивный пользовательский интерфейс с минимумом возможностей. Так выглядит домашний экран:
Надпись слева задается программированием с компьютера, операторы обычно прописывали туда свое название и номер абонента. Красная кнопка отвечает за вход в меню, зеленая — за вход в режим просмотра сообщений, если они есть. Стрелки — за навигацию по меню или сообщению. Само меню достаточно примитивное и интуитивно не сразу понятное:
Здесь можно лишь настроить сигналы, задать будильник и включить/выключить беззвучный режим — дешево и сердито. При бездействии пользователя в течение некоторого времени пейджер отключает экран для сбережения энергии, о работе пейджера и режиме сигналов при этом дает знать только пара индикаторов слева:
Если абонент находится вне зоны приема, на домашнем экране появляется соответствующая индикация:
Отсутствие сети пейджер определяет по простому отсутствию сообщений в эфире в течение некоторого времени, поэтому снижение активности посылок (например, в ночное время) могло ошибочно трактоваться как нахождение вне приема. Для борьбы с этим некоторые операторы запускали «считалочку» — периодическую отправку сообщения в никуда (на несуществующий CAP-код), которое содержало в себе значение счетчика или текущего времени.
Еще у дисплея есть приятная сине-зеленая электролюминесцентная подсветка, активируемая длительным нажатием на красную кнопку:
По размерам этот Advisor едва ли не самый большой пейджер того времени, сравните с современной «лопатой»:
К концу 90х появились более компактные и продвинутые пейджеры, например, Truly SuperVisor:
Он умеет отображать все те же 4 строки текста, имеет больше памяти, календарь, кучу будильников, мелодий и прочих настроек. И по размерам он чуть больше спичечного коробка:
Для своих экспериментов я купил целый ворох самых разных пейджеров, да. Своего пейджера у меня никогда не было, ибо во времена их расцвета я был слишком мал, а когда стал велик — на сцену вышли уже телефоны. Зато у меня в достаточном количестве была другая приколюха из 90х — часы в виде пейджера (отсюда):
Как мы можем видеть, соседи из Поднебесной эпатировали мир задолго до появления NOKLA и айфонов с телевизором с тремя симками. Фейковых пейджеров этих выпускалось великое множество видов, были даже со сменными мелодиями, подсветкой дисплея и фонариком, куда ж без него. Воспринимались они как игрушки для детей, но встречались и те, кто пытался выдавать их за реальный пейджер.
Переходим к настройке
Итак, перед нами лежит Motorola Advisor, про который известно только то, что он провалялся где-то в шкафу у предыдущего владельца минимум лет 25. Для возвращения этого великолепия к жизни потребуется выполнить ряд действий.
Узнаем рабочую частоту
Именно у этой модели пейджера узнать частоту проще всего, причем сделать это можно двумя способами: инвазивным и неинвазивным. При инвазивном варианте нужно вскрыть корпус пейджера, делается это очень легко, т.к. в корпусе нет ни единого винтика — все на защелках. В нижней части корпуса имеется пластинка, которую необходимо оттянуть на себя с правого края и сдвинуть вправо, высвободив из пазов:
После этого корпус легко распадается на 2 части:
В глаза в первую очередь бросается олдскульный вид платы с широкими дорожками и большими толстыми микросхемами, которые легко паяются обычным паяльником. Снизу видим модуль приемника, он просто-напросто вставлен в разъем на материнской плате и легко извлекается. Благодаря такой простоте операторы при подключении абонента обычно просто извлекали старый модуль приемника из пейджера и ставили свой, заранее настроенный на нужную частоту. Аккуратно вытягиваем и извлекаем приемник:
И обращаем внимание на кварц, выделенный красным. По его значению можно вычислить рабочую частоту с помощью формулы (все частоты в МГц):
Если примерно известен диапазон рабочих частот (VHF или UHF) и под рукой есть SDR приемник, то частоту можно вычислить неинвазивным способом, не прибегая к разборке корпуса. Подойдет абсолютно любой сканер, даже самый дешевый на R828D. Подключаем сканер к компьютеру/смартфону, подносим его антенну вплотную ко включенному пейджеру и внимательно рассматриваем диапазон 40-50 МГц (для VHF) и 145 — 155 МГц (для UHF) на предмет наличия странного прерывистого сигнала, который трудно с чем-либо перепутать:
Приемник пейджера супергетеродинный, а значит при работе он излучает слабый сигнал на частоте того самого кварца. Найденную таким образом частоту можно подставить в приведенную выше формулу и узнать реальную рабочую частоту. По прерывистому характеру сигнала видно, что приемник работает не всегда, это называется стробированием. Сделано оно для экономии батареи: приемник большую часть времени спит, периодически просыпаясь и проверяя наличие сигнала в эфире. Стоит отметить, что найденная частота не гарантирует успешную работу пейджера, поскольку приемник может быть расстроенным в щи либо вовсе не рабочим. Методы тонкой настройки приемников сохранились и известны, но требуют наличия оборудования и труднореализуемы в домашних условиях. При проблемах с приемом можно попробовать включить какой-нибудь слабенький сигнал на рабочей частоте и, подключив наушники к выходу приемника, добиться максимальной громкости сигнала в них путем вращения тонкой диэлектрической отверткой (заточенной спичкой или зубочисткой) ближайшей к кварцу катушки индуктивности:
Узнаем CAP-код и параметры передачи
Теоретически при известной частоте CAP-код можно найти методом перебора, но на это может уйти несколько лет, поэтому мы пойдем более сложным, но более быстрым путем. Эти коды (а их может быть несколько) можно посмотреть/поменять с помощью специального софта для компьютера, который настолько стар, что проектировался еще для DOS. Поэтому нам понадобится следующее:
- Виртуальная машина со старой доброй 32-разрядной Windows XP SP3
- USB-TTL адаптер
По мере изучения темы я не раз сталкивался с заявлениями на тематических форумах, что, софт для программирования пейджеров работает только на реальном железе с реальным DOS и только через реальный COM порт. Так вот, пройдя весь путь и став своего рода диванным экспертом по пейджинговой связи, я с высоты своего опыта со всей ответственностью могу заявить, что все это полная чухня. Все отлично работает и программируется даже из под эмулятора винды через самый дешевый китайский адаптер на FT232RL:
На нем есть джампер напряжений, который необходимо установить в положение 3.3V, и интересующие нас выходы: Rx, Tx, GND:
В первую очередь подключаем адаптер к Windows XP в виртуалке и устанавливаем драйвера. После этого заходим в диспетчер устройств и убеждаемся, что все установилось, и заодно снижаем скорость до 2400 (хотя это не всегда нужно, т.к. софт некоторых пейджеров сам управляет скоростью):
Далее скачиваем софт для программирования и распаковываем в удобное место:
Подключаем пейджер к TTL адаптеру, сделать это проще всего с помощью Dupont проводов, популярных у ардуинщиков. Не забываем, что Rx адаптера подключаем к Tx пейджера и наоборот. И запускаем ADVISOR.EXE:
Жмём любую кнопку и получаем облом:
Программа не хочет работать без предварительной установки, причем устанавливаться она будет только если инсталлятор лежит на дискете (диски A/B). Окей, создаем в виртуалке образ дискеты, скидываем на нее все потроха из архива, и запускаем софт заново. Теперь он предлагает нам установить себя:
Выбора особо у нас нет — соглашаемся и указываем пути, заодно указываем номер COM порта:
Заходим в папку установки и пытаем счастье в очередной раз:
На этот раз все заработало как нужно, и на экран выводится список доступных действий:
Снова подключаем пейджер к адаптеру и жмем F3 — READ a pager, после чего прога пытается достучаться до него:
Если все подключено верно, то на экране на несколько секунд появляется прогресс загрузки, а затем открывается окно настроек пейджера. Но не в нашем случае. Ожидаемо на интерфейс программирования пейджера установлен пароль, который давно никто не знает, а пытаться угадать его бессмысленно из-за ограничения на количество попыток:
Можно попробовать ввести стандартный пароль ADVISOR, но с вероятностью 99.99% он не подойдет:
В таком случае остается один единственный выход — разбирать пейджер и сбрасывать пароль путем замыкания некоторых контактов. Нас интересует вот эта микруха, расположенная на материнской плате:
Это микросхема EEPROM, в которой хранятся настройки пейджера, в том числе и пароль. Для сброса флага использования пароля нужно нарушить связь пейджера с этой памятью. Аккуратно подпаиваем тонкий провод к четвертому контакту слева:
Второй конец провода замыкаем на минусовой контакт батарейки. Далее скачиваем утилиту green_page и распаковываем в виртуалке. Среди Всех файлов архива нас интересует RSS.EXE. Включаем пейджер (с замкнутым контактом), подключаем его к TTL адаптеру и запускаем RSS:
После запуска утилита предложит нажать на пробел — выполняем, в результате в консоль начинают выводиться некие магические цифры. Если процесс зависает — можно понажимать пробел несколько раз, пока цифры не замрут совсем.
После этого отключаем провод от минусового контакта батареи, перезапускаем пейджер и пытаемся снова подключиться с помощью ADVISOR.EXE. Разблокироваться пейджер может не с первого раза, поэтому спешить и отпаивать контакт от микросхемы не нужно. Если все прошло успешно, то при последующем запуске софта для программирования мы увидим экран настроек пейджера:
В Inventory Control операторы обычно записывали номер абонента, нас он не интересует. Coding Format — это скорость передачи, в данном случае пейджер настроен на 512 бит/с. Больше всего на этой странице настроек нас интересуют коды Code A, B, C, D — это и есть те самые CAP-коды, и как видим, один пейджер может иметь от 1 до 4 таких кодов. Чем больше в пейджере настроено кодов — тем больше абонентская плата (если оператор об этом знает), и тем быстрее садится батарейка, поэтому обычно использовались только 1-2 кода. Внизу экрана есть выбор типа кода (Individual, Group, Mail drop и т.п), первый CAP обычно был личным и служил для приема сообщений, адресованных именно получателю. Второй и последующий коды могли быть групповыми (общими для всех абонентов оператора), и на эти адреса оператор мог рассылать широковещательные сообщения. Например, если оператор зашивал всем своим клиентам одинаковый второй код, то впоследствии он мог отправлять на этот код одно единственное сообщение, и оно одновременно приходило всем его абонентам, находящимся в зоне приема. При помощи этих дополнительных CAP-кодов операторы обычно промышляли торговлей воздухом (новости, погода, котировки, гороскопы всякие) за отдельную плату. Это было именно торговлей воздухом, потому что для оператора эта отправка сообщения на общий адрес не стоила ничего, а сам контент он зачастую брал бесплатно из открытых источников. Хитрые люди с прямыми руками обычно узнавали CAP-коды этих информационных каналов своего оператора и прошивали их в пейджеры самостоятельно, не платя за это никакие абонентские платы.
На второй странице представлены настройки оповещений и отображения сообщений, и они не представляют собой ничего интересного:
На третьей странице нас интересует Data Inversion — признак той самой инверсии данных. Помимо этого здесь есть настройки подключения к принтеру (можно было выводить сообщения на печать), включения режима программирования по воздуху (RF programming Allowed — операторы могли менять настройки удаленно), а еще тут можно поменять пароль. Пункт Synthesizer сбивает с толку своим наличием и в действительности не работает, так как приемник у Advisor не имеет синтезатора и не позволяет программно перестраивать свою частоту. Но синтезаторные пейджеры вполне себе существовали (тот же NEC 21A), у них можно было менять рабочую частоту прямо через интерфейс настроек.
На последней четвертой странице настроек можно задать тексты отображаемых сообщений в меню пейджера, здесь же задается название оператора (пункт MOTOROLA INC):
После правки нужных настроек утилита предлагает нажать F4 и залить изменения в пейджер. Процесс программирования длится 3-4 секунды, после чего пейджер автоматически перезагружается:
Итог
На этом этап настройки пейджера заканчивается, и теперь у нас есть практически вся необходимая информация о нем: рабочая частота, CAP-код(ы), скорость передачи данных и режим инверсии сигнала. В следующей части мы попробуем собрать передающее устройство и достучаться до абонентов, которые были вне зоны доступа больше 20 лет.
Использование пейджера в XXI веке +29
Разработка систем связи, DIY или Сделай сам, Электроника для начинающих, Сотовая связь, Блог компании SkillFactory
Рекомендация: подборка платных и бесплатных курсов Java — https://katalog-kursov.ru/
Пейджеры были очень популярны в 90-е годы. В то время я был студентом, и пейджер для меня был чем-то вроде коммуникатора из Star Trek, частью передовых технологий. Забавно вспоминать об этом, потому что теперь я знаю, что технологически протокол пейджинга очень прост. С точки зрения кодирования, пейджер не так уж отличается от беспроводных дверных звонков, которые сейчас продаются за 5 долларов на Aliexpress.
Несмотря на то, что повсеместно пейджеры уже не используются, они всё ещё есть в доме у некоторых людей. Можно ли протестировать пейджер сейчас? Безусловно, и я покажу вам, как это сделать. Давайте начнём.
POCSAG — протокол обмена сообщениями
Допустим, мы хотим отправить сообщение “TEST” на номер “1234”. В двоичной форме оно будет выглядеть примерно так:
1010101010101010101010101010101010 — Преамбула.
01111100110100100001010101011000 — Код синхронизации кадров.
0111101010100010011100000110111 — Кодовое слово простоя.
00000000000100110101111000111111 — Адрес + Функциональные биты + CRC.
10010101101000111001001111111100 — T E S (7 бит/символ).
11001010100000000000001111100011 — T . .
0111101010100010011100000110010111 — Кодовое слово простоя.
А вот как сообщение выглядит в радиоспектре:
Биты кодируются с помощью модуляции с частотной манипуляцией (FSK), с использованием полосы пропускания 9 кГц и скорости 1200 бит в секунду, все это сообщение передается примерно за 0,5 с.
Выглядит просто, и это действительно так. Я пропущу подробности; те, кому интересно, могут прочитать спецификацию протокола. Все эти биты можно легко написать даже на бумаге — в прошлом эти протоколы были простыми, чего не скажешь о современных GSM или Wi-Fi.
В сообщениях POCSAG нет ни аутентификации, ни ключей безопасности — все сообщения для всех клиентов пейджинговой компании доступны в эфире «как есть» и, кстати, могут быть легко декодированы с помощью программного обеспечения для ПК, такого как PDW.
Как клиенты получают свои сообщения? Каждый пейджер имеет уникальный идентификатор, который называется CAP — протокол доступа к каналу, или RIC — код идентификации приёмника. Все пейджеры от пейджинг-провайдера слушают одну и ту же частоту, скажем, 164 МГц. Если код в сообщении равен коду пейджера, пейджер сохраняет сообщение и издаёт громкий звуковой сигнал. Вот и всё. Связь односторонняя, нет обратной отправки подтверждения, у пейджера есть только приёмник, а передатчика нет вообще. Логика и аппаратное обеспечение предельно просты, благодаря чему пейджер может работать более месяца от одной батарейки AAA. Интересно, что пейджеры всё ещё используются в некоторых странах даже сейчас — в больницах или службах неотложной помощи, где важно иметь портативное и лёгкое устройство с длительным временем автономной работы.
Покупка пейджера
Во многих странах по-прежнему доступны пейджинг-провайдеры, с которыми можно подписать контракт и получить новое устройство, но, скажем так, это не слишком увлекательный способ. Я говорю с точки зрения человека, который хочет протестировать пейджер из-за образовательного или ностальгического желания или, может быть, даже имеет дома старый пейджер, сделанный в 1990-х годах. У меня есть хорошая новость — с большой вероятностью он может быть протестирован ещё раз и действительно будет работать. Конечно, не в масштабах всего города, но можно запустить собственную маломощную пейджинговую сеть, по крайней мере в вашей квартире. Сейчас можно купить новый пейджер, но он стоит недёшево. Это первая ссылка, которую я нашёл в Google:
Как мы видим, купить его просто для удовольствия может быть слишком дорого, и, более того, перед использованием пейджер должен быть настроен, а инструмент программирования и ПО для него также могут стоить очень дорого. Другой вариант — купить китайский пейджер, он дешевле, с кабелем для программирования общая стоимость составляет около $ 80:
И, наконец, на eBay можно купить подержанный пейджер за 20–50 долларов. Он дешёвый, и это старая винтажная модель, что тоже весело. Но, прежде чем совершать покупку, следует иметь в виду две вещи, которые были описаны ранее в разделе POCSAG:
-
Чтобы отправить сообщение на пейджер, нужно знать его частоту. У старых пейджеров она написана на обратной стороне. Если вы не знаете частоту и не можете её узнать, пейджер бесполезен.
-
Чтобы отправить сообщение на пейджер, вам необходимо знать его кэп-код. Это 7-значное число, оно выглядит так: 0001234. Если вы его не знаете, вам понадобится кабель для программирования, чтобы прочитать конфигурацию пейджера.
Рассмотрим практический пример. Я видел этот пейджер Motorola Advisor Gold на eBay (имя продавца скрыто из соображений конфиденциальности):
Цена не такая большая, но стоимость доставки в ЕС составляет почти половину его цены. Ладно, давайте посмотрим на следующее фото:
Мы можем видеть частоту (462,875 МГц) и скорость передачи, но наклейка с кодом доступа была удалена владельцем, возможно, из соображений конфиденциальности, и это не очень хорошо для нас. Можно прочитать кэп-код, но для этого нам нужно купить или изготовить специальный кабель для программирования, а также найти подходящее ПО. Всё это нужно проверять перед покупкой, иначе у нас есть шанс получить «кирпич», который выглядит как пейджер, но не работает. И последняя, необязательная, но важная проверка — мы должны проверить, доступна ли желаемая частота в нашем регионе. Это можно сделать с помощью дешёвого приёмника RTL-SDR и программного обеспечения, такого как HDSDR. Если есть другой сигнал на той же частоте, пейджер также не будет работать. В моём районе частота 462,875 МГц, указанная на обратной стороне пейджера, уже занята, так что в моём случае лучше было найти на рынке другую модель.
Отправка сообщений
Чтобы отправить какие-либо данные на пейджер, мы должны передать сообщение POCSAG, используя соответствующую радиочастоту.
Перед любой передачей, пожалуйста, ознакомьтесь с местными правилами радиосвязи.
Эта статья описывает только техническую возможность, но не юридическую ее сторону, в разных странах правила могут отличаться. Например, в США в соответствии с частью 15 правил FCC, устройства с очень малой мощностью не требуют лицензирования, если излучаемая энергия не превышает 200 мкВ/м на расстоянии 3 метра. Это может обеспечить дальность действия до 30 метров, чего абсолютно достаточно для любых исследовательских или образовательных экспериментов. В других странах правила могут быть иными. Есть 3 простых способа передачи сообщений POCSAG.
Rpitx
Самый простой способ — использовать Raspberry Pi, и, что удивительно, это совершенно бесплатно: с помощью бесплатного opensource ПО rpitx сигнал может быть сгенерирован непосредственно с пина Raspberry Pi. Достаточно надеть на пин GPIO4 короткий провод:
Пейджер достаточно чувствителен, чтобы получить такой сигнал на расстоянии нескольких метров. Чтобы отправить сообщение, нам нужно установить программное обеспечение rpitx и выполнить команду:
echo -e "1000001:MESSAGE TEST" | sudo ./pocsag -f "465198000" -b 0
Здесь 1000001 — это кэп-код, 465198000 — частота, а 0 — тип сообщения (сообщение может быть одного из 4 типов, например, 0 — только числовое, 3 — буквенно-цифровое). Другие параметры, такие как инверсия сигнала или скорость передачи, также могут быть изменены при необходимости. Выходная мощность однозначно невысокая, но её достаточно для проверки пейджера в квартире. Приложение rpitx работает на удивление хорошо для своей (нулевой) цены, но, конечно, Raspberry Pi в целом не является точным радиочастотным генератором. Частота может быть не на 100 % правильной, и может потребоваться небольшая корректировка значения в диапазоне нескольких килогерц (также хорошо иметь RTL-SDR в качестве контрольного приёмника).
Плата MMDVM
Следующий способ — купить специальную плату MMDVM (Multi-Mode Digital Voice Modem), которую можно прикрепить к Raspberry Pi:
Эта плата содержит передатчик ADF7021 с возможным диапазоном частот 80–940 МГц и небольшую антенну. Несмотря на название, плата MMDVM может передавать не только голос, но и сообщения POCSAG. Чтобы использовать плату, нам необходимо установить приложение MMDVMHost и настроить файл MMDVM.ini (установить желаемую частоту и включить модули «POCSAG» и «Remote Control»). После этого мы можем запустить приложение MMDVMHost (его можно разместить в /etc/rc.local для автозапуска или запустить как службу при необходимости). В другом окне терминала мы можем использовать эту команду для отправки сообщения:
./RemoteCommand 7642 page 1000001 "MESSAGE TEST"
Здесь 7642 — это порт дистанционного управления, 1000001 — код доступа. Использование MMDVMHost немного сложнее и требует некоторых знаний Linux, но выходной сигнал лучше по сравнению с использованием пина Raspberry Pi в качестве вывода.
GNU Radio
Людям, у которых нет Raspberry Pi, но есть LimeSDR, HackRF, USRP или любой другой приёмопередатчик SDR, можно отправлять сообщения POCSAG с помощью GNU Radio.
Существует несколько кодировщиков POCSAG, я нашёл модуль gr-pocsag от ON1ARF самым простым в использовании: он даже не требует установки и может работать из любой папки.
Описание блоков GNU Radio выходит далеко за рамки этой статьи, желающие могут самостоятельно проверить страницу gr-pocsag. Все описанные решения маломощные. Те, кто хочет большей дальности, могут использовать специальный радиопередатчик, такой как Motorola GM-350, который может обеспечить дальность действия в несколько километров, но для этого типа передачи, очевидно, потребуется действующая лицензия.
Настройка пейджера
Если вы знаете частоту пейджера и кэп-код, то можете пропустить эту часть. С другой стороны, программирование пейджера может дать вам возможность почувствовать «вкус» того времени, и в целом более гибко изменять настройки пейджера.Увы, общей нормы настройки пейджера нет. Для некоторых моделей пейджеров, таких как Oelmann , станция программирования и ПО могут стоить больше, чем сам пейджер:
Другие модели, такие как Alphapoc, можно настроить вручную, даже без программного обеспечения, или с помощью относительно дешевого инструмента программирования через USB. Старые, выпущенные в 1990-х годах пейджеры Motorola Advisor, имеют 3 контакта последовательного порта (можно использовать USB-Serial):
Программное обеспечение для этих пейджеров требует среды MS-DOS, но может запускаться с помощью DOSBox. У более новых (около 1997 г. выпуска) пейджеров Motorola Advisor Gold есть двухконтактный интерфейс. Я нашел эту схему подключения в Интернете, но сам не проверял:
Пейджеры Motorola требуют старого программного обеспечения, написанного для MS-DOS, его можно найти в Интернете. Увы, многие страницы и ссылки, созданные 20 лет назад, сейчас недоступны — когда речь идёт о вещах, созданных 20 лет назад, возникает хорошо известная проблема «вымирания ссылок». Другая проблема, которая может возникнуть, — многие операторы пейджинга использовали пароль для предотвращения изменения конфигурации пейджера. Возможно, это было сделано из соображений безопасности: после изменения кэп-кода владелец пейджера может читать сообщения, предназначенные для другого клиента. Если конфигурация пейджера защищена паролем, при чтении настроек появится запрос:
Этот пароль можно прочитать из EEPROM пейджера с помощью созданных энтузиастами сторонних инструментов, но для этого потребуются некоторые навыки пайки.
Заключение
Было весело протестировать пейджинг и исследовать, как он работает.
Также интересно отметить, что винтажные устройства интересно тестировать, и они на первый взгляд выглядят дешевле. Но на самом деле это не так. Для разных тестов я купил 3 пейджера по $ 20–30 каждый. Но первый пейджер имел несовместимую частоту, второй был защищён паролем, и я не могу изменить его настройки, и только третий работает. Вместо этих трех б/у пейджеров можно было купить один новый.
Также очевидно, что нет никакой гарантии, когда вы покупаете вещи 20-летней давности — даже если продавец пишет «проверено» в описании, максимум, что он сделал, — это поставил батарею и проверил логотип на экране. Я не ожидаю, что продавцы знают о частотах или кодах доступа. Но в моём случае это было сделано для развлечения и самообразования, так что проблем с этим нет, даже если что-то не работает.
Ещё одна проблема, с которой я столкнулся при тестировании пейджеров, — это «вымирание ссылок». Раньше все думали, что «Google знает всё» и «информация в Интернете бесплатна», но на самом деле это не так. Хранение файлов и размещение сайтов стоят денег, через некоторое время веб-страницы становятся недоступными. Многие старые сообщения на форуме имеют мёртвые ссылки и содержат пустые квадраты вместо изображений. При попытке найти информацию о старых вещах всё это стало очевидным. Мне удалось найти полезное программное обеспечение на некоторых старых и заброшенных веб-страницах, но нет гарантии, что эти ссылки будут живы в течение длительного времени.
Могут быть и юридические причины, например, я не уверен, что Motorola официально разрешила кому-то публиковать программное обеспечение для программирования своих пейджеров, даже если публикация сделана 25 лет назад. Но для сохранения технического наследия может быть важно сохранить такие вещи. Наконец, пейджеры можно протестировать, и это весело.
Для тех, кто хочет провести больше тестов в более крупном масштабе, также можно использовать POCSAG на любительских радиочастотах и присоединиться к
сети
любительского радио
DAPNET
(децентрализованная любительская пейджинговая сеть). Для этого потребуется лицензия любительского радио, но для тех, кто интересуется цифровой связью, она может оказаться достойной её получения. Желаю всем читателям удачи и интересных экспериментов!
Несмотря на возраст этого вида связи, пейджерам до сих пор находится применение. Но если для технологии, 20 лет — это уже солидный возраст, то для языков программирования это еще даже не юность. Например С++, созданный Бьёрном Страуструпом аж в 1983 — до сих пор в топе самых популярных языков в мире благодаря своей чистой и красивой логике и гибкости. Если вы хотите разнообразить свой набор скилов этим языком — обратите внимание на наш курс по разработке на С++, ведь этот язык для миллионов программистов был и остаётся не менее важным, чем английский.
Узнайте, как прокачаться и в других специальностях или освоить их с нуля:
-
Профессия Data Scientist
-
Профессия Data Analyst
-
Курс по Data Engineering
Другие профессии и курсы
Вызов пейджера
Удаление номера пейджера
1. Нажмите [FUNCTION], и выберите
«Pager setting», нажимая [/] или [/],
затем нажмите [>].
2. Когда стрелка указывает на
«Pager number», нажмите [>].
3. Нажмите [CLEAR].
4. Нажмите [ENTER],
• Режим звонка на пейджер автомати
чески установится на OFF (ВЫКЛ).
Удаления номера выво
димого на пейджер
1. Нажмите [FUNCTION], и выберите
«Pager setting», нажимая [/] или [/],
затем нажмите [>].
2. Нажимайте [/] или [/], пока стрелка
не укажет на «Pager dispaly #», затем
нажмите [>].
3. Нажмите [CLEAR],
4. Нажмите [ENTER],
Установка звонка на пейджер
1 Haжмитe[FUNCTION].
2 Нажимайте [/] или [/], пока стрелка
не укажет на «Pager dispaly #», затем
нажмите [>].
3 Нажимайте [/] или [/], пока стрелка
не укажет на «Pager dispaly #», затем
нажмите [>].
• «Off » (заводская) установка
отображается
4 Нажимая [/] или [/], выберите
«On» (ВКЛ).
P a g e r o n / o f f ,
,
: р п
E N T E ^ = ^ a v e
5
Нажмите [ENTER],
• Звучит сигнал.
• Для возврата в режим ожидания,
нажмите [EXIT],
• При работе с базовым блоком,
на дисплее появится «Pager».
Для выключения функции звонка
на пейджер на 4 шаге, выберите
«Off».
Если Вы не подписаны на услугу
Caller ID, номер абонента не будет
выводится на Ваш пейджер.
□Если перед тем как аппарат позвонил
на пейджер пришло еще одно сообще
ние, информация о предыдущем або
ненте не будет посылаться на пей
джер. Будет передана информация
только о последнем сообщении.
□Если кто-либо стал звонить или отве
чать на вызов с Вашего аппарата,
после приема сообщения, но перед
звонком на пейджер, аппарат не станет
информировать об этом сообщении
Если Вы приняли сообщение на
пейджер, но не можете узнать
звонившего абонента, перезвоните
на аппарат, что бы проверить это
сообщение.
84