30 мая 2017 года в Котласе, что в Архангельской области, была отключена последняя в мире базовая станция NMT-450. Вместе с этим навсегда ушёл в историю не только этот стандарт, но и аналоговая сотовая связь общего пользования в принципе.
И вот, шесть с лишним лет спустя мне стало интересно: а реально ли попробовать оживить такую сеть, увидеть в работе раритетные телефоны и попробовать с них позвонить?
Итак, в сегодняшней статье разберёмся, как в домашних условиях запустить базовую станцию NMT-450. Узнаем, как работают такие сети и как сделать так, чтобы оно точно заработало.
❯ О чём я?
Многие из нас всё ещё помнят антикварные сотовые телефоны такого стандарта. Трубки были аналоговыми, SIM-карт не было, данные программировались оператором.
Сеть эту очень любили в дальних районах нашей необъятной: NMTшные трубки ловили сеть даже там, где более поздний GSM не мог совершить даже экстренный вызов. Можно было спокойно звонить где-то с опушки леса, причём сигнал был весьма и весьма уверенным. Тем не менее, система обладала целой кучей недостатков, присущих всем аналоговым сотовым сетям, так что в итоге данный стандарт навсегда ушёл в историю.
Ну что же, сегодня постараемся вернуться в те годы и попробовать запустить те самые телефоны. Причём для этого вам не понадобится ни SDR, ни другое дорогое оборудование.
❯ Как так-то?
Самое время разобраться, как же возможно запустить такую сеть без специфического оборудования.
Есть такой проект как Osmocom-analog. Его автор реализовал целый ряд аналоговых сотовых сетей (а также ряд других интересных штук типа эмуляции акустического модема), включая и предмет нашего обзора. Причём для их запуска достаточно иметь только аналоговый передатчик и такой же приёмник, ничего больше не понадобится.
Вообще, стоит учитывать, что автор данного проекта немец, так что большая часть проекта посвящена их национальным немецким сотовым сетям — A-Netz, B-Netz и C-Netz, так что в реализации других стандартов могут быть баги. Тем не менее, стоит отдать должное, что в плане работы с аналоговой сотовой связью этот софт, пожалуй, лучшее, что существует на момент создания данного поста. Так что будем использовать именно его.
Теперь очередь трансивера. И по сути именно его частотами и обусловлен мой выбор сети NMT-450. Всё дело в том, что на такой частоте умеют вещать рации диапазона UHF. Достаточно даже дешёвых китайских бубнилок, чтобы сеть успешно заработала. Конечно, есть некоторые ограничения (например, из-за того, что у нас всего один канал, можно будет единовременно подключить всего один аппарат), но для опытов этого хватит сполна.
А вот и рации. Это Joker TK-450S, одна из самых популярных моделей радиостанций такого диапазона наравне с аппаратами от Kenwood. Они как раз поддерживают нужные нам частоты.
А вот пример тех, какие не подойдут. Эти рации имеют стандарт PMR и на нужных нам частотах вещать не умеет.
❯ Обзор оборудования
Итак, посмотрим на телефоны, которые сегодня будем пытаться оживлять.
Первым у нас на очереди Nokia 640, он же THF-13. Из всех телефонов NMT-450 он был едва ли не самым популярным. По виду это типичный древний телефон тех времён.
Увы, аккумулятор его сдох, а от зарядки он не работает, так что в статье он фигурировать не будет. Предвосхищая вопросы некоторых: от ЛБП стартовать он тоже отказался, хотя я некогда запускал его от живого аккумулятора, и он работал.
Следом идёт Benefon Spica. Аппараты этой фирмы были не менее крутыми, хорошо ловили сеть и тоже пользовались большим успехом. Хотя, конечно, самым легендарным аппаратом этой фирмы был Benefon Delta с семисегментным ЖКИ, которого у меня, правда, нет.
Кстати, уже в те годы у некоторых телефонов были импульсные блоки питания вместо трансформаторных.
Не менее отличительной чертой тех трубок были вот такие чехлы, позволяющие носить аппарат на поясе.
И, наконец, самый интересный из сегодняшних девайсов, Nokia 720, он же TMF-4SP. Это так называемый автомобильный телефон, предназначенный главным образом для использования в машине. Тем не менее, у него был аккумулятор, а заодно и ручка для переноски, так что можно было пользоваться им и так.
Существовала также его версия без трубки, с гнездом для телефонной линии. Так можно было подключить стационарный телефон там, где нет линии, а GSM не ловит. Причём передача была чисто аналоговой, так что, например, там могли без серьёзных проблем работать модемы. Для аппарата на фото также был адаптер линии, втыкающийся в гнездо трубки.
Сам аппарат состоит из базового блока TMF-4SP и трубки HSN-5K (отчего некоторые путают этот девайс, называя его Nokia HSN-5K. На деле же эта трубка используется не только в этой модели телефона). Сбоку имеется антенна, которая при установке в автомобиле заменялась на внешнюю, установленную на крыше и подключенную к аппарату коаксиальным кабелем.
А вот обратная сторона базового блока. Весь девайс сделан из металла и весит пару килограммов. Даже сейчас он выглядит и ощущается очень круто. Сложно найти атрибут аутентичнее для создания атмосферы девяностых с крутыми парнями в пиджаках, серьёзным бизнесом и тому подобными атрибутами.
Никелевый аккумулятор тоже заслуживает уважения: он составляет треть массы всего аппарата.
А вот и внутренности. Трубку разбирать я не стал, а вот базовый блок весьма интересен. На плате куча ВЧ-элементов, усилитель мощности, релюшка (что именно коммутируется, мне неведомо), кварцевые генераторы, микропроцессор. Сама труба общается с базой по проприетарному протоколу MBUS, по сути это полудуплексный UART с пятивольтовыми уровнями. На том же протоколе работали старые дата-кабели Nokia.
Половинки корпуса. Помимо защиты от разных жизненных потрясений он служит также радиатором и экраном.
❯ Как работает NMT-450
Перед началом опытов поговорим об устройстве данного стандарта.
NMT расшифровывается как Nordic Mobile Telephone ввиду его изобретения в скандинавских странах. Позже он разошёлся по миру и широко использовался в Европе, России и на Ближнем Востоке.
По своей структуре NMT сильно похож на более поздние системы связи — он состоит из центра коммутации, БС и самих телефонов. Существовало две полосы частот — NMT-450 и NMT-900. Наибольшее распространение получил первый, так что именно его мы и будем рассматривать.
Как ясно из названия, рабочая его частота лежит в районе 450 МГЦ. Стандарт имеет 181 канал (462,500 — 467,500 МГц) с частотной модуляцией, при этом частота приёма на 10 МГц меньше частоты передачи. Каждый из каналов может быть как голосовым, так и управляющим, именно поэтому для минимальной БС требуется всего один трансивер.
NMT был первым стандартом сотовой связи с автоматическим роумингом, работало это за счёт того, что телефон при регистрации в сети сразу сообщал центру коммутации о своём новом местоположении.
❯ Программирование трубок
Мне всегда было интересно узнать, как же заносились данные об абоненте в телефон, ведь там не было ни SIM, ни каких-то других модулей. Запросы в духе «nmt-450 mobiles dealer configuration» ничего интересного не выдали.
В итоге поиск по тематическим группам вывел меня на некий сайт "Unofficial NMT". Сам сайт уже давно умер, но осталась его почти полная копия в Web Archive. Именно там удалось найти уйму информации по теме, включая сервис-мануалы, распиновки разъёмов, некоторую информацию по ПО.
В сервис-мануалах нашлись и скриншоты используемого для этих целей софта. В случае с Nokia это WinTesla, применяющаяся для конфигурации целого модельного ряда старых телефонов, нужно только добавить DLLку с поддержкой нужного аппарата. Именно там и задаются все нужные коды.
Сам софт, разумеется, был с защитой от копирования в виде аппаратного ключа (PKD), а телефон подрубался к компьютеру кабелем MBUS->RS-232, схема которого тоже имеется на сайте. Увы, самой WinTesla там нет, но её вполне реально найти на просторах вместе с патчем.
В случае с некоторыми другими телефонами, например, Motorola, всё было сложнее, так как для подключения к ПК использовались специальные адаптеры для проприетарного интерфейса (уже с МК внутри, а не просто схемы на нескольких транзисторах).
❯ Безопасность
Настоящим бичом операторов стало клонирование трубок. Всё дело в том, что данные об абоненте передаются в открытом виде, так что их реально перехватить в эфире, а затем записать в свою трубку и звонить за чужой счёт.
Позже это дело прикрыли, введя так называемые SIS-коды, использовавшиеся в стандарте NMT-450i. Тем не менее, фрикинг сотовых телефонов всё равно не умер, так как появилась возможность считать код, получив ненадолго доступ к самому аппарату. Впрочем, количество взломов всё же упало до вполне приемлемых уровней.
❯ Ставим софт
Ну что же, время приступать к экспериментам. Начнём с софта. Для его запуска понадобится компьютер с Linux или виртуальная машина с ним же. Использовать Live CD не рекомендую, так как могут быть проблемы с записью или воспроизведением звука. Если будете ставить на ВМ, лучше выбрать Virtualbox.
Всё, что показано дальше, актуально для Linux Mint, впрочем, на других версиях делается аналогично.
Итак, для начала надо накатить все компоненты для сборки (если они у вас уже есть, этот этап пропускаем):
sudo apt-get update
sudo apt-get install libasound2-dev
sudo apt-get install libuhd-dev
sudo apt-get install libsoapysdr-dev
sudo apt-get install autoconf
sudo apt-get install git
sudo apt-get install gcc
sudo apt-get install make
Теперь надо скачать и собрать сам osmocom-analog:
git clone git://git.osmocom.org/osmocom-analog
cd osmocom-analog
autoreconf -if
./configure
make clean
make
sudo make install
На всякий случай я выложу уже готовый софт в конце статьи.
❯ Первый запуск
Итак, открываем папку src/nmt и там запускаем нашу БС:
./nmt -k 1 -Y SE,2
О параметрах поговорим чуть позже, сначала же убедимся, что софт корректно работает.
Если всё было сделано правильно, то на экране появятся флаги скандинавских стран в ASCII-графике, а из динамиков компьютера послышится нечто вроде «У-лю-лю-лю-лю». Если это так, то с запуском софта у вас всё получилось.
❯ Подключаем рации
Хотя некоторые утверждают обратное, подключать рации напрямую ко входу компьютера нельзя: он весьма чувствительный, отчего сигнал с рации может его перегрузить или вовсе сжечь. Аналогично и для входа радиостанции.
Чтобы подключить приёмник и передатчик к компьютеру, необходимо согласовать уровни. Я использовал простейшую схему на двух потенциометрах.
Всё крайне просто: на один крайний контакт потенциометра подаётся сигнал, на другой подключается земля, с подвижного контакта снимается сигнал.
Далее включаем на компьютере музыку, настраиваем обе рации на один канал и крутим потенциометр для передатчика, добиваясь того, чтобы звук был хорошо слышен. Аналогично и для приёмника: запускаем какое-то приложение для звукозаписи типа Audacity и таким же образом регулируем уровень сигнала, говоря в рацию.
❯ Код региона
Отдельно стоит упомянуть код страны сети. Если он выбран неправильно, то БС исправно заработает, но телефон видеть эту сеть не будет.
Необходимо поковыряться в настройках и узнать, какой код стоит, после чего либо указать его при запуске софта, либо поменять его на тот, который поддерживает Osmocom. Некоторые телефоны поддерживают автоматический выбор страны.
❯ Запуск
Итак, самое время пробовать.
Включаем телефон и рации, втыкаем провода. Само собой, на компьютере необходимо отрубить все системные уведомления, слушать музыку на этой машине во время экспериментов тоже нельзя (сами представляете, что будет твориться в эфире). Передающую рацию настраиваем на 463,000 МГц, принимающую — на 453,000 МГц. Запускаем софт всё той же командой. Параметр k — канал (в данном случае первый, на который и настроены рации, если выбрать другой, то придётся выставить иную частоту). Параметр Y — как раз тот самый региональный код. Две латинские буквы — код страны, цифра после запятой — идентификатор соты.
Теперь начинаем на рации передачу, и спустя непродолжительное время телефон увидит сеть. Набираем какой-то номер и пробуем звонить, при этом на компьютере должны будут посыпаться логи, а в трубке заиграет музыка. В окне программы в это время можно будет увидеть номер, под которым зарегистрирован наш телефон. Набираем его на компьютере (можно просто нажать клавишу d, чтобы вызов начался), и трубка зазвонит.
На видео я пробовал подрубить внешние антенны, но, как видно, помогло это мало.
А вот и та самая Nokia. На ней это всё тоже отлично работает.
❯ Звонки
Чтобы при вызове слушать не музыку, а попробовать поговорить, надо подключить вторую звуковую карту.
Для начала выполним следующую команду:
arecord -l
Будет выведен список звуковых карт в системе.
Далее запускаем сеть следующей командой:
nmt -k 1 -Y SE,2 -c hw:XXX,YYY
Здесь XXX — номер звуковой карты, а YYY — номер устройства. Скорее всего, у вас будет нечто вроде hw:2,0. После этого можно будет подрубить к компьютеру наушники и микрофон и принимать звонки на ПК.
Звуковая карта 0,0 используется при этом для самой связи с рациями, так что задействовать для звонков её нельзя.
❯ SMS
Некоторые модели телефонов имеют возможность принимать и отправлять SMS. Реализовано это следующим образом. При отправке сообщения телефон совершает звонок на номер SMS-центра и обменивается с ним информацией. При получении — наоборот, вызов поступает на сам аппарат. Таким образом, можно запустить SMS-центр хоть на обычном компьютере с модемом и, например, отправлять e-mail с телефона, даже если оператор SMS в принципе не поддерживает.
Данный софт тоже имеет возможность отправлять сообщения. Для работы с ними необходимо указать номер SMS-центра 767, а если это невозможно, то запустить софт с параметром S, где указать нужный номер. Узнать его можно отправкой произвольного сообщение на произвольный номер и наблюдением, куда совершается звонок.
Далее необходимо выполнить следующую команду:
echo "1234,1234567,SMSTestSMS" >/tmp/nmt_sms_deliver
Первое число — номер отправителя, второе — номер получателя, далее идёт сам текст сообщения.
❯ Вот как-то так
Вот так вот, с помощью не самого сложного оборудования можно запустить сотовую сеть давно ушедшего в историю стандарта и увидеть в работе телефоны, которые в обычных условиях не смогли бы зазвонить уже никогда.
Тем не менее, желающим повторить всё это советую готовиться к нестандартным глюкам, всё же это аналоговая связь и соответствующее оборудование.
Такие дела.
❯ Ссылки
- Osmocom-analog. По ссылке подробная инструкция по сборке, установке и запуску софта, а также архив документации.
- Unofficial NMT.
- Обзор на Nokia Talkman 720.
- Описание стандарта на сайте Radioscanner.
- Группа ВКонтакте по NMT-450 (не моя).
- Пост в другой группе про отключение сети.
- Собранный софт.
Автор: Лев