
Многие десятилетия радиоприемники остаются одними из самых доступных и массовых электронных устройств. За это время их архитектура прошла невероятно длинный путь от традиционных аналоговых до современных на базе DSP. Сейчас это миниатюрные и энергоэффективные устройства, способные работать в широком диапазоне частот.
Стремление к компактности и дешевизне привело к созданию линейки универсальных чипов для построения DIY-радио — Silicon Labs 473X. Китайские инженеры ухитрились полностью запихнуть приемный тракт внутрь единственной недорогой микросхемы, которая прекрасно совместима с различными микроконтроллерами и может управляться по I2C-шине. Она стала центральной частью разных приемников, один из которых мы сегодня детально разберем.
Внешний вид

ATS 20+ представляет собой небольшую коробочку весом 250 граммов и габаритами 90×100×40мм. Корпус сделан довольно интересно: верхняя и нижняя крышка из алюминия, а вот передняя и задняя панели из текстолита. Это одновременно практично и позволяет нанести подписи элементов управления при помощи шелкографии.

Спереди — миниатюрный OLED-дисплей с диагональю 0,96″. Этого, откровенно говоря, мало и годится только для людей с хорошим зрением. Там же расположено 8 отдельных кнопок управления и валкодер (тоже, кстати, являющийся кнопкой):
BAND+ (следующий диапазон).
BAND- (предыдущий диапазон).
VOL+ (увеличить громкость).
VOL- (уменьшить громкость).
STEP (шаг перестроения).
BW (полоса пропускания).
AGC (автоматическое усиление).
MODE (режим приема).

С другой стороны устройства есть целых два USB-порта. MicroUSB служит для перепрошивки, а USB Type-C для зарядки встроенного литиевого аккумулятора 3.6V 500mAh. Там же расположен главный рычажок включения, светодиод, указывающий на процесс зарядки, гнездо для наушников, антенный вход BNC и переключатель FM/AM (SSB).

Верхняя часть корпуса перфорирована и содержит неплохой динамик (8Ω3W) с достаточным запасом громкости. На нижней ничего нет, но удобства ради производитель в комплект положил самоклеящиеся резиновые ножки. Мелочь, но приятно.
Вскрытие
Самое интересное в таких гаджетах находится внутри. Благо их ремонтопригодность в большинстве случаев получила бы высший балл от iFixIt. Достаточно открутить 8 шестигранных болтов — и все.

ATS-20+ по факту состоит из двух плат. Первая содержит чип Si4732A10. Суффикс A10 означает «аппаратная ревизия A», версия прошивки — 1.0:

Главное отличие ATS-20 от ATS-20+ заключается в дополнительном FM-фильтре и УНЧ (усилителе низких частот):

Там же рядом расположена плата стереофонического усилителя для наушников класса AB, представляющая собой аналог популярного TDA1308:

Кстати, многие его меняют на оригинальный TDA1308, благо цоколевка совпадает. Сбоку притаился «2-центовый» усилитель для динамика 8002A. Его выходная мощность невелика, всего лишь 0,6 Вт чистого звука:

Вторая же плата — обычная Arduino Nano на базе микроконтроллера ATmega328. Работая в тандеме, они выполняют все те же самые функции, что и обычный радиоприемник, но исключительно на цифровом уровне.
Если посмотреть на схему Si4732, то многое становится очевидным:

В зависимости от выбранной модуляции (FM или AM), радиосигнал с антенны поступает на соответствующий LNA (Low Noise Amplifier, малошумящий усилитель). Его задача — усилить уровень сигнала без существенного увеличения шумов. В это же время в работу вступает AGC (Automatic Gain Control), автоматическая регулировка усиления.
Далее сигнал попадает в смеситель (Mixer), где его частота преобразуется в пониженную промежуточную (Low-IF), которая обрабатывается DSP-процессором и в таком виде попадает на ADC (Analog-to-Digital Converter). После того как DSP выполнит свою работу в виде демодуляции сигнала, последний отправляется в DAC (Digital-to-Analog Converter) и непосредственно на аудиовыход.
Получается, что чип Si4732 — это супергетеродинный приемник с пониженной промежуточной частотой. Особенность лишь в том, что все операции по обратному преобразованию выполняются непосредственно DSP-чипом в цифровом, а не аналоговом виде. Ну и самое интересное, что все это реализовано внутри одного компактного чипа, способного принимать:
LW (ДВ) — 150–520 кГц;
MW (СВ) — 520–1710 кГц;
SW (КВ) — 1,7–30 МГц;
FM (УКВ) — 64–108 МГц (в зависимости от прошивки).
Цифровая обработка при помощи DSP состоит из следующих операций. Вначале чип производит фильтрацию по выбранной полосе, затем демодулирует AM/FM/SSB и в конечном счете формирует выходной сигнал. Параллельно он управляет функциями AFC, AGC и RDS (Radio Data System). Работает это в целом вполне адекватно, но чудес ждать все равно не приходится. У Si4732, несмотря на всю его универсальность, есть ряд недостатков, о которых стоит сказать.
Основным можно назвать малый запас по входному сигналу. Сильные сигналы легко перегружают приемник, особенно при использовании внешней антенны. Со штатным «телескопом» этот эффект практически не наблюдался. Однако Si4732 чувствителен к высокочастотному шуму на линии питания, так что если вы хотите послушать радио, одновременно заряжая его внутренний аккумулятор, то неизбежно столкнетесь с ухудшением качества приема.
Софт
Поскольку мозгами ATS-20+ является обычная Arduino Nano, сделать бэкап штатной прошивки (или залить кастомную) совсем несложно. Первым и самым очевидным вариантом будет использование Arduino IDE. Но все же я могу порекомендовать иной способ — при помощи утилиты Avrdudess (графическая оболочка консольного avrdude). Она прекрасно работает под Windows и имеет понятный интерфейс:

Пожалуй, единственное, что стоит отметить — если вдруг у вас выдается ошибка вида:
Error: programmer is not responding Warning: attempt 1 of 10: not in sync: resp=0x00
то, вероятно, в приложении выставлена неправильная скорость обмена данными. На разных ревизиях приемника она может отличаться. Мне попадались 9600, 57200 и 115200. Нажав на кнопку Detect, вы получите идентификатор, позволяющий однозначно определить тип MCU.
Штатная прошивка приемника от Рикардо Каратти (Ricardo Caratti) с позывным PU2CLR имеет ряд существенных недостатков: мелкий шрифт, абсолютно неинформативный S-meter и отсутствие меньшего шага настройки. Благо открытый исходный код позволяет доработать прошивку без особых проблем. Это и было сделано радиолюбителем из Екатеринбурга Денисом Кутузовым (R8CEH):

Выложенная им прошивка ATS-20_1.07.1.hex, на мой взгляд, является самой удобной из существующих. Во-первых, он увеличил размер шрифта, и частота нормально считывается даже на крохотном экране:

Во-вторых, добавил для SSB шаг в 50 Гц, и теперь есть возможность более точно настраивать приемник на радиолюбительский обмен. Бесячее шипение (aka soft mute) при перестроении проявляется не каждый 1 кГц, а каждые 16 кГц, и это сильно добавило комфорта.
S-meter за ненадобностью был выпилен, а вместо него появились две крайне полезные опции — SAM-L и SAM-U. Эти хитрые аббревиатуры переводятся как:
SAM-L (Synchronous AM Lower sideband) — демодулируется только нижняя боковая полоса;
SAM-U (Synchronous AM Upper sideband) — демодулируется только верхняя боковая полоса.
Вместе они составляют SAM, или синхродетектор AM. Приемник настраивается на частоту нулевых биений несущей принимаемой АМ-радиостанции, и за счет этого убираются искажения на замираниях при приеме. Также это позволяет отстроиться от мощной станции или помехи «по соседству». Если она на более высокой частоте, выбираете SAM-L, если на низкой — SAM-U.
Что в итоге?
ATS-20+ оставил у меня положительное впечатление. За 2 600 рублей я получил не просто радиоприемник — это отличная DIY-база, которую можно модифицировать добавлением новых модулей (например, Bluetooth) и написанием собственных прошивок. В конце концов можно вместо Arduino поставить туда другой микроконтроллер вроде ESP32 с набором беспроводных интерфейсов и значительно прокачать возможности устройства.
Несмотря на то, что такие «одночиповые» приемники не могут похвастаться выдающейся чувствительностью и избирательностью, их вполне достаточно, чтобы с комфортом послушать вещательные станции или радиолюбителей. Плюс всегда остается вариант аппаратной доработки путем добавления фильтров и сокращения источников шума.
SebastianP
а почему такие разные цены, от 1700 до 3000 ? Есть подводные камни? или это от продавца зависит