Беспроводные роутеры имеют несколько неприятных особенностей. Во-первых, они небезопасны, если только не разобраться с установкой OpenWrt. Во-вторых, со временем они перестают выпускаться, а значит, если ваш роутер сломается, вам придется разбираться с установкой OpenWrt на совершенно другой роутер. В-третьих, как правило, они довольно ограничены в ресурсах, а значит возложить на роутер какие-то дополнительные функции может быть проблематично. Между тем, абсолютно любой компьютер под управлением Linux может быть настроен в качестве полноценного Wi-Fi роутера, что решает проблемы безопасности, повторяемости и производительности. Для примера, рассмотрим создание беспроводного роутера на базе одноплатного компьютера Raspberry Pi.

Automatic Packet Reporting System, или APRS — это система, придуманная радиолюбителями в 80-ые годы и чем-то напоминающая современные SMS. Оператор любительского радио посылает в эфир текстовое сообщение с информацией о своем местонахождении, используемых частотах, погодных условиях, и так далее. Благодаря репитерам и гейтвеям, эта информация доступна не только находящимся поблизости операторам. Она пересылается, в том числе через интернет, и может быть снова отправлена в совершенно другой точке Земли.

Как-то раз я прочитал на hackaday.com небольшую заметку об IceRadio. Это проект господина Eric Brombaugh, представляющий собой SDR на базе микроконтроллера STM32, FPGA производства Lattice серии Ultra или Ultra Plus, АЦП AD9203 или более дорогого ADC14C105, ЦАП CS4344 с интерфейсом I2S, а также тюнера R820T2, используемого в донглах RTL-SDR. Помимо прочего, проект интересен своей модульностью. Он состоит из четырех независимых плат, каждую из которых можно использовать повторно в других проектах. Особенно меня заинтересовал модуль на базе тюнера R820T2, о котором и пойдет речь в этом посте.

После прочтения книжки «The Hobbyist’s Guide to the RTL-SDR» мне особенно запомнился эксперимент с RTL-SDR и генератором шума. По сути, эксперимент этот описывает, как можно использовать RTL-SDR в качестве очень дешевого анализатора спектра. В этом режиме устройство может решать задачи вроде проверки фильтров или определения частоты, на которую рассчитана антенна. Соответствующая глава книги доступна онлайн в блоге rtl-sdr.com. Здесь я коротко перескажу идею и поделюсь своими личными впечатлениями от использования RTL-SDR таким образом. Описанные действия с тем же успехом можно повторить для HackRF, LimeSDR и других Software Defined Radio.

OpenWrt (Open Wireless RouTer) — это основанная на Linux открытая прошивка для беспроводных роутеров. В этой заметке будет рассмотрена установка OpenWrt на роутер TP-Link TL-WDR3600, также известный, как TP-Link N600. Роутер этот не новый, но довольно неплохой. К тому же, он числится среди рекомендуемых устройств для установки OpenWrt. Ставить OpenWrt на роутер интересно как минимум из соображений безопасности (в официальных прошивках часто много багов, не говоря уже о бэкдорах). Плюс к этому OpenWrt фактически превращает ваш роутер в маленький VDS, на котором можно выполнять какие-то задачи по cron’у, запустить rtorrent в screen, поднять Nginx, IRC-баунсер, и так далее.

Из этой заметки вы узнаете, как можно подобрать пароль к Wi-Fi сети. Вообще-то говоря, меня лично куда сильнее интересует, как защититься от взлома, а не то, как можно что-то кому-то сломать. Но для построения нормальной защиты нужно понимать, как произвести атаку. Поэтому, об атаке далее и пойдет речь. Совершить же ее нам поможет набор утилит под названием aircrack-ng. Протокол WEP сейчас практически никем не используется, поэтому далее речь пойдет исключительно о протоколах WPA и WPA2.

Вам, конечно же, знакомы карточки и брелки, которые нужно подносить к считывателю, а они при этом пропускают на работу или дают проехать в метро. Такие брелки и карточки используют технологию под названием RFID, Radio Frequency IDentification. Сегодня мы познакомимся с основами этой технологии, а также узнаем, как использовать ее в своих проектах на базе Arduino.

Помните, как мы удаленно мигали светодиодом при помощи NRF24L01, а затем использовали этот же беспроводной модуль для управления гусеничным роботом? В этих заметках модуль мы использовали по принципу «подключаем к таким-то пинам, берем готовую библиотеку, пишем пару строк кода и все работает, магия». Так вот, мне не нравится магия. Я программист, а не колдун, и потому хочу знать точно, что там и в каком виде передается в эфире. К счастью, Software Defined Radio позволяет с легкостью это увидеть.

Из этой заметки вы узнаете, как своими руками сделать пульт для презентаций (a.k.a кликер) из Arduino Leonardo и дешевого радиомодуля на 433 МГц. Помимо прочего, этот проект интересен тем, что в нем реализовано декодирование сигнала с OOK-модуляцией, чему при желании можно найти массу практических применений. Также в проекте утилизируется возможность микроконтроллера ATmega32U4 мастерски притворяться мышью или клавиатурой.

Один из способов развлечения с Software Defined Radio заключается в том, чтобы наблюдать за самолетами. В современных самолетах используется технология ADS-B. Суть ее заключается в том, что самолеты передают номер рейса, скорость, высоту полета, GSP-координаты, и прочую информацию о воздушном судне на частоте 1090 МГц, используя модуляцию DPSK. Передаваемая информация никак не шифруется, и при помощи RTL-SDR принять ее может любой желающий.