7 Commits

Author SHA1 Message Date
UA3REO
74c1b71267 12.2.0 Release 2025-03-29 21:02:14 +03:00
UA3REO
148c126a3c Update Info.txt 2025-03-11 17:33:47 +03:00
UA3REO
dedae3ffdb 12.0.0 Release 2025-03-10 15:10:17 +03:00
UA3REO
7705ae9d83 11.5.0 Release 2025-02-26 19:30:27 +03:00
UA3REO
a151106c2f 11.4.0 Release 2025-02-24 19:51:06 +03:00
UA3REO
81cead5e9e 11.3.0 Release 2025-02-16 21:34:14 +03:00
UA3REO
044cce6dc8 Release 11.2.0 2025-01-28 22:08:11 +03:00
26 changed files with 3036 additions and 7 deletions

View File

@@ -1,3 +1,138 @@
----Version 12.2.0----
+HARDW: Wolf-2-VHF-v3f: Исправления в схеме: изменены драйверы усилителей, питание 1.2G, номиналы фильтров 433MHz. Плата осталась прежней, Thx UN7JMM, Sergey Klimov
+HARDW: Wolf-DK102: Добавлена инструкция по сборке, Tnx BH7FFB
+STM32: Wolf-DK102: Добавлена отдельная прошивка с предустановленными настройками, улучшена инициализация аудио-кодека
+STM32: Добавлена возможность отображения названий станций на водопаде из файла на SD карте. Пример файла station_names.txt размещён в папке Stuff. Автор BD6MM
+STM32: Wolf-2: Улучшен процесс инициализации УКВ платы
+STM32: Wolf-2: Запрещен переход по диапазонам во время передачи с помощью кнопок на лицевой панели, Tnx RM0A
+STM32: Коэффициент сглаживания значений с-метра вынесен в настройку "S-Meter smooth", Tnx ats52
+STM32: DNR Threshold снижен по умолчанию
+STM32: Wolf-Mini: В настраиваемые функциональные кнопки добавлен Autograiner, Tnx R3TKS
+STM32: Улучшена отзывчивость второстепенных энкодеров, увеличен Debounce по умолчанию
+STM32: Добавлены калибровки "SD Recording power" и "SD Macros power" для регулировки коэффициента мощности воспроизведения с SD карты в эфир
+STM32: Исправлено переключение диапазонов при активной FFT Lens
+STM32: FT8 логи сохраняются раздельно по указанному в настройках позывному, Tnx UN7LAS
+STM32: Добавлена калибровка "Min Voltage protect", экстренно выключающая трансивер при низком значении питающего напряжения на INA226, Tnx p m
+STM32: Улучшена поддержка CAT команд и работа Ham Radio Deluxe
+STM32: Консоль отладки перемещена в меню TRX, рядом с выбором типа отладочной информации
+STM32: Добавлена пагинация для выборка спутника по TLE файлу
+STM32: Добавлена возможность запретить передачу на одну из антенн, выбрав её исключительно для RX, Tnx RM0A
----Version 12.1.0----
+STM32: Исправлена проблема с CAT PTT в JTDX и подобных программах, Tnx Сергей
+STM32: Исправлена проблема при использовании Free Tune + Split DX, Tnx SP7MFR
+STM32: Исправлена проблема при использовании Split DX за пределами диапазонов (не срабатывала блокировка передачи), Tnx SP7MFR
+STM32: Исправлено отображение полоски сигнала АЦП после перехода с трансвертерного диапазона, Tnx RT3W
+STM32: Улучшена работа сдвиговых регистров, Tnx R1CDZ
+STM32: W-Mini: оптимизировано обновление экрана при работе AutoGainer, Tnx RV9CT
+STM32: W-Mini: исправлено сохранение IF Gain по бендам, Tnx Dispatcher
----Version 12.0.0----
+FPGA: Попытка устранить периодические проблемы с фантомными сигналами (пока только 22к версия, временно будет работать и 11.1.0 в случае проблем)
+FPGA: В System Info теперь отображаются MIN/MAX значения на входе ЦАП во время передачи, Tnx R6DLC
+STM32: Добавлена экспериментальная поддержка внешнего интерфейсного устройства на базе ESP32, программируемого под нужды пользователя (см папку Stuff для информации)
+STM32: При отключенном Autogainer отображается уровень сигнала на входе АЦП (CN темы), Tnx Dire Wolf
+STM32: Улучшение алгоритма импорта настроек, Tnx SP7MFR
+STM32: Увеличен порядок фильтров IQ потока для 384кГц обзора, Tnx SP7MFR
+STM32: Добавлен DC-фильтр для SAM демодулятора, Tnx Jaz
+STM32: Доработки FM демодулятора "Diff" типа
+STM32: Wolf-1: В настраиваемые функциональные кнопки добавлена функция "TX", Tnx UT8EU
+STM32: Перемещена кнопка "EQ" на главной панели, Tnx ats52
+STM32: Улучшена работа CW макросов при задержке передачи, Tnx SP7MFR
+STM32: Wolf-Lite: Остановлено развитие кодовой базы из-за закончившейся ROM, далее только выпуск баг-фиксов к стабильному релизу
+STM32: Новый алгоритм шумоподавления DNR, в настройках задаются 2 порога срабатывания под предпочтения пользователя для быстрого переключения между режимами
+STM32: Экранные диапазонные кнопки в CN темах теперь работают аналогично аппаратным (короткое нажатие прыгает по ячейкам памяти, долгое - записывает в память), Tnx RT3W
+STM32: Ячейки памяти диапазонов сохраняют не только частоту, но и моду, Tnx UT8EU
+STM32: Добавлены предзаписанные пары ячеек памяти для основных диапазонов (SSB+CW)
+STM32: Wolf-Mini: Удалена опция "FUNC" с вторичного энкодера, Tnx R7KBI
+STM32: Wolf-Mini: Во время регулировки SSB HPF вторичным энкодером отображается текущее значение полосы фильтра, Tnx R7KBI
+STM32: Wolf-Mini: Улучшена система синхронизации параметров кодека NAU8822 по I2C, Tnx R7KBI
+STM32: Улучшен механизм определения перегрузки АЦП
+STM32: Усилена вычисляемая контрольная сумма, которая защищает настройки и калибровки от случайного повреждения
+STM32: Добавлена поддержка формата моно-16 бит для USB аудио-устройства, Tnx RN3KK, R3TLI
+STM32: Улучшение поддержки части CAT-команд, Tnx RN3KK
+STM32: В списке WiFi сетей выводится RSSI сигнала каждой из точек доступа, Tnx R7KBI
+STM32: Реализована поддержка удалёнки через Bi4Remote, https://t.me/bi4remote_team https://habr.com/ru/articles/797625/ , Tnx RN3KK, R3TLI
+STM32: Улучшена работа TOT в CW, Tnx SP7MFR
+STM32: Макросы выделены в отдельное меню
+STM32: Долгое нажатие на макрос в нижнем меню открывает страницу его редактирования
+STM32: Добавлено 5 макросов SSB, активируется на те же кнопки, что и макросы CW но в голосовых модах, им можно прописать свои имена на кнопках, Tnx RT3W
+STM32: Увеличено ускорение перестройки частоты при быстром вращении энкодера и активной настройке "TRX Settings -> Encoder Accelerate" (само ускорение настраивается в калибровках под энкодер), Tnx ats52
----Version 11.5.0----
+STM32: Улучшение работы связки CAT+CW+Секвенсор
+STM32: Улучшение работы CW самоконтроля, Tnx UT8EU
+STM32: Обновлено название классической 7 дюймовой версии первого волка на странице System Info, Tnx Андрей
+STM32: Вращение энкодера не портит изображение в консоли отладки, Tnx R8CDB
+STM32: Исправлена проверка Self Test -> FPGA Clocks во время передачи, Tnx R5ZX
----Version 11.4.0----
+STM32: Исправлено звучание WFM при активном стерео-режиме, но отсутствии приёма стерео дорожки, Tnx SP7MFR, UA9YHI, R1BFJ, PY2MDA
+STM32: В AM-демодулятор добавлен DC фильтр для предотвращения перегрузки, Tnx Jaz, R3TKS
+STM32: DX-кластер корректно возвращает пустой список, если запрашивается информация по бенду, который кластер не поддерживает (например 70см с RBN), Tnx RT3W
+STM32: Уменьшены переходные щелчки звука при переключении TX-RX, Tnx Геннадий
+STM32: Для экспериментов возвращена калибровка "ADC Offset", Tnx Геннадий
+STM32: Уменьшены артефакты на спектре при переключении TX-RX, Tnx SP7MFR
+STM32: Self Test теперь проводится на текущем выбранном диапазоне, а не только 14\144мГц, Tnx RU3KV
+STM32: Обновлены цвета отладочной консоли, Tnx RU3KV
+STM32: Добавлено напоминание о необходимости точной калибровки по приборам после проведения авто-калибровки
+STM32: Увеличено время отображения тултипа о доступном обновлении прошивки, Tnx UN7LAS, R8CDB
+STM32: В сервис "Self Test" добавлена страница проверки тюнера, Tnx DG3VG
----Version 11.3.2----
+STM32: Wolf-2: Улучшена работа УКВ смесителя в QO-100, Tnx E72W
+STM32: Wolf-2: На УКВ плате отключаются неиспользуемые смесители при переходе RX/TX что должно немного уменьшить лишний шум
+STM32: Улучшена работа ключа в режиме поддержки внешнего секвенсора
+STM32: Wolf-1: добавлена поддержка калибровки "TX End Delay", Tnx R6TW
----Version 11.3.1----
+STM32: Переставлены пункты в меню TX, чтобы КСВ было рядом с настройками тюнера, Tnx SP7MFR
+STM32: Исправлена работа АРУ и передача в Wolf-Lite, Tnx RL6MR, Андрей
----Version 11.3.0----
+STM32: Исправление работы CW и макросов в режиме поддержки внешнего секвенсора, Tnx RT3W
+STM32: На странице System Info теперь отображается ревизия процессора
+STM32: В калибровках названия LHF/MHF/HHF заменены на границы в мегагерцах, Tnx ats52
+STM32: При регулировке пункта калибровок "Tr QO100 RX If kHz" вторичным энкодером, шаг регулировки становится по 1 МГц, Tnx RT3W
+STM32: В меню добавлена регулировка добротности каждого из каналов эквалайзера
+STM32: Добавлена настройка "TX AGC Clipping", определяющая, будет ли АРУ резко ограничивать усиление сигнала при больших всплесках амплитуды
+STM32: В CN темах долгое нажатие на иконку CW моды главного VFO приводит к переключению режимов CW-LSB/CW-USB, Tnx SP7MFR
+STM32: Улучшена работа FFT Lens, Tnx SP7MFR
+STM32: Добавлено отображение статуса использования трансвертера, Tnx RT3W
+STM32: Добавлена функциональная кнопка "Sleep", переключающая режим отключения экрана по таймауту, Tnx SP7MFR
+STM32: В меню сервисов добавлен пункт "Debug Console", который отображает отладочную информацию на экран (копия того, что выводится в отладочный COM-порт), Tnx RU4PN
+STM32: Долгое нажатие на кнопку MENU полностью закрывает меню независимо от открытого подменю, Tnx SP7MFR
+STM32: Обновлены параметры Autogainer
+STM32: Устранены паразитные моргания фона водопада
+STM32: Исправлена работа встроенного FT8 с включенной поддержкой секвенсора
+STM32: Исправлен выход из FT8 во время передачи, Tnx RT3W
+STM32: При отключении Channel Mode автоматически отключается Split (включается для каналов с разносом частот), Tnx R9FDL
+STM32: В моде RTTY частота VFO отображается по частоте верхней несущей сигнала (RTTY Freq + половина RTTY Shift), Tnx UT8EU
+STM32: Устранена проблема с TOT Time в макросах, Tnx RT3W, R3YA, UA9YHI
+STM32: Добавлена калибровка "TX End Delay", позволяющая задать задержку между переходом TX->RX и переключением реле, Tnx R6TW
+STM32: Добавлен сервис "Efficiency", позволяющий примерно рассчитать эффективность антенно-фидерного устройства и каскадов TX, Tnx R4HID, R7KBI
----Version 11.2.2----
+STM32: Исправления работы SD карты
----Version 11.2.1----
+STM32: Исправлены отсутствующие знаки * на пользователях волк-кластера, Tnx SP7MFR
+STM32: Чтобы предотвратить зависания, WFM Stereo активируется только на частоте дискретизации 192кГц, Tnx RT3W
----Version 11.2.0----
+HARDW: Wolf-2: Добавлена блок-диаграмма лицевой панели, автор OH2GZK
+HARDW: Wolf-2-VHF-v3e: добавлены дополнительные фильтрующие конденсаторы по питанию модулей и изменены номиналы текущих
+STM32: Настройка ADC Randomizer включена по умолчанию
+STM32: В настройки добавлен режим псевдо-стерефонии в наушниках (не активен в DIGI модах). Для Wolf-Lite реализована упрощённая версия
+STM32: Добавлена возможность указать, какой отчёт о используемой мощности передатчика отправит WSPR маяк, Tnx ES1RCG
+STM32: Wolf-7Inch: Долгое нажатие на функциональные клавиши XIT, RIT отклонение сбрасывается до нуля, Tnx SP7MFR
+STM32: Исправление ошибки с сохранением частоты на бенде, Tnx SP7MFR
+STM32: После отключения от WiFi точки удаляются имя сети и IP из меню, Tnx And
+STM32: Исправлено воспроизведение файлов в эфир при выключенной SSB AGC, Tnx UZ5DM
+STM32: Добавлена функция "CW Mode", позволяющая выбрать тип боковой полосы LSB/USB при прослушивании телеграфа
+STM32: Добавлена функция "CW Stereo", позволяющая разделить полосу пропускания телеграфа по каналам наушников (аудио-панорама)
+STM32: На бендмапе отмечается 5 последних частот, на которых пользователь провёл более 30 секунд времени (для упрощения отслеживания сработанных станций)
----Version 11.1.1----
+STM32: Wolf-Lite: Исправлена ошибка в SelfTest "RF Gain ERROR", Tnx RA3RBE
+STM32: Добавлен выход из FT8 по функциональной кнопке, Tnx R3WCU

View File

@@ -148,12 +148,14 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
### TRX Settings
* **ANT type** - Select antenna type (TX/RX or RX only)
* **Band Map** - Band Map, automatically switches mode depending on the frequency
* **Beeper** - Beep on key press
* **Callsign** - User callsign
* **Channel Mode** - Channel frequency mode (for LPD/PMR and etc.)
* **Custom Transverter** - Enable external transverter on non-ham band (just offset display frequency)
* **DEBUG Type** - Output of debug and service information to USB / UART ports
* **Debug Type** - Output of debug and service information to USB / UART ports
* **Debug Console** - Display console with system debug information (copy of what is sent to debug COM port)
* **Encoder Accelerate** - Accelerate encoder on fast rates
* **Fine RIT Tune** - Fine or coarse tuning for RIT/XIT (encoder or resistor)
* **Freq Step xxx** - Frequency step by main encoder in each mode, Hz
@@ -168,7 +170,7 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **Transverter XXcm** - Enable external ham band transverter support
* **URSI Code** - Ionogram URSI Code https://digisonde.com/index.html#stationmap-section
* **Tropo Region** - Region for tropospheric forecast https://www.dxinfocentre.com/tropo.html
* **Wolf Cluster** - Display Wolf TRX users on spectrum and send self data
* **Wolf Interface I2C** - Connect TRX to external I2C interface device (See STUFF folder for example)
### FILTERS Settings
@@ -206,6 +208,7 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **Free tune** - Allows you to move the reception frequency across the spectrum without changing the center frequency of the spectrum itself
* **Center After Idle** - Center the spectrum with Free Tune active after 20 seconds of inactivity
* **Noise Blanker** - Activating the Surge Suppressor
* **Pseudo stereo** - RX path pseudo-stereophony mode
* **RX AUDIO Mode** - Audio lines control: Stereo\Left\Right
* **RX AGC Hold time** - Time before release of AGC gain in signal peaks, ms
* **RX AGC Hold limit** - Burst limit for AGC delay time
@@ -227,6 +230,7 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **ADC Shutdown** - Turn off the ADC while TX
* **AGC MaxGain** - Maximum AGC gain
* **AGC Speed** - TX compressor response speed for transmission (more-faster)
* **TX AGC Clipping** - Determines whether the AGC will sharply limit the signal gain during large amplitude spikes
* **ATU Cap** - Tuner Capacitance Combination
* **ATU Enabled** - Turning on the automatic antenna tuner
* **ATU Ind** - Combination of tuner inductances
@@ -272,11 +276,13 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **Iambic Type** - Type of Iambic keyer (A/B)
* **Key Invert** - Invert dash/dot on key
* **Key timeout** - Time before stopping the transmission mode after releasing the key
* **Keyer WPM** - Key Speed, WPM
* **Keyer** - Automatic Key
* **Keyer WPM** - Key Speed, WPM
* **Mode** - Sideband Type CW-LSB / CW-USB
* **One symbol memory** - Keyer memory for one symbol for transmit
* **PTT Type** - RX/TX switch type for CW: by key or external PTT (tangent, etc.)
* **Pitch** - Detuning the receiver generator from the transmit frequency
* **Stereo** - Splitting the CW bandwidth into headphone channels (audio panorama)
* **Self Hear** - Self-control CW (key press is heard)
* **Macros x** - Setting up macros for CW transmission
* **Macros x name** - Setting the macro name to be displayed in the interface
@@ -285,6 +291,7 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **RX EQ xxx** - Receiver equalizer levels
* **MIC EQ xxx** - Microphone equalizer levels
* **EQ Q xxx** - The quality factor of each equalizer channel
### SCREEN Settings
@@ -319,9 +326,11 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **LCD Brightness** - Set LCD brightness (not all lcd support)
* **LCD Sleep Timeout** - Idle time before the screen brightness decreases, sec (0 - disabled)
* **S-Meter style** - Selecting layout of the analog S-Meter
* **S-Meter smooth** - Smoothing coefficient of the S-meter value
* **Show Sec VFO** - Show secondary VFO position on spectrum
* **WTF Color** - Waterfall colors: 1(blue -> yellow -> red), 2(black -> yellow -> red), 3(black -> yellow -> green), 4(black -> red), 5(black -> green), 6(black -> blue), 7(black -> white)
* **WTF Moving** - Mowe waterfall with frequency changing
* **Wolf Cluster** - Display Wolf TRX users on spectrum and send self data
### Decoders
* **CW Decoder** - Software CW receive decoder
@@ -378,10 +387,12 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **FAN Medium PWM** - Adjusting the duty cycle of a PWM fan in Medium mode
* **FAN Motherboard** - Starting the fan not only by the sensor, but also by the temperature of the STM32 processor
* **IF Gain MIN/MAX** - IF Gain adjusting limits
* **Min Voltage protect** - Minimum supply voltage threshold, below which the protection will be triggered and the transceiver will be switched off (INA226)
* **OTA Update** - Enable OTA firmware update over WiFi
### Calibration Hardware
* **RF-Unit Type** - RF-Unit Type (QRP / BIG)
* **ADC Offset** - Additional virtual offset to ADC signal
* **ALC Port Enabled** - Activation of transceiver power control by an external amplifier via the ALC line: up to 1 volt - ALC is disabled and the power set in the transceiver is used. from 1.0v to 3.0v - power adjustment from 0 to 100%
* **ALC Inverted** - Invert ALC logic (3.0v - 0%, 1.0v - 100%)
* **BPF x** - Bandpass filter parameters
@@ -442,11 +453,14 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **MAX SWR** - Maximum VSWR before protection operation
* **Max Current, Amp** - Current protection, turns off transmission when the threshold is reached
* **RF GAIN xxx** - Calibration of the maximum TX output power for each range
* **SD Macros power** - Signal gain when playing SSB macros
* **SD Recording power** - Signal gain coefficient when playing live recordings
* **SSB Power addition** - Addition of RF power in SSB power, %
* **SWR FWD/BWD RATE** - Adjustment of the transformation ratio of the SWR meter (forward / return)
* **SWR Protector** - SWR protection mode selection: Off, low power, transmission off
* **TSignal Balance** - Sets the power balance between signals in Two signal tune mode
* **TX Start Delay** - Delay before the RF signal is applied (ms), so that the relay has time to trigger
* **TX End Delay** - Delay when switching from TX to RX (stopping the signal until the relay turns off)
### Calibration Reset
* **Settings reset** - Reset all settings to defaults
@@ -487,8 +501,15 @@ WiFi module ESP-01 must have fresh firmware with SDK 3.0.4 and higher, and AT co
* **WSPR Beacon START** - Start WSPR beacon
* **Freq offset** - Offset from center of WSPR band
* **WSPR Power, dBm** - Sets the power report sent in the beacon message
* **WSPR Band xxx** - Select bands to WSPR beacon
### Efficiency
* **Cable Type** - Selecting the cable used in the antenna-feeder device
* **Cable Length** - Cable length from transceiver to antenna
* **Calc Efficiency** - Starting the efficiency calculation. To calculate, you need to turn off the tuner (to know the SWR of the antenna-feeder device) and apply the RF carrier
### DX Cluster
* Show DX Cluster info by current band (from internet)

View File

@@ -147,12 +147,14 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
### TRX Settings
* **ANT type** - Выбор типа антенны (TX/RX или исключительно RX)
* **Band Map** - Карта диапазонов, автоматически переключает моду в зависимости от частоты
* **Beeper** - Звук нажатия клавиш
* **Callsign** - Позывной пользователя
* **Channel Mode** - Канальный режим работы (для LPD/PMR и подобных)
* **Custom Transverter** - Включить управление внешним трансвертером для пользовательского смещения на любые частоты (просто сдвигает отображаемую частоту)
* **DEBUG Type** - Вывод отладочной и служебной информации в USB/UART порты
* **Debug Type** - Вывод отладочной и служебной информации в USB/UART порты
* **Debug Console** - Отображение консоли с системной отладочной информацией (копия того, что отправляется в отладочный COM-порт)
* **Encoder Accelerate** - Ускорение энкодера на больших оборотах
* **Fine RIT Tune** - Грубая или точная настройка для RIT/XIT (энкодером или резистором)
* **Freq Step xxx** - Шаг перестройки основным энкодером для каждой из моды, Гц
@@ -167,7 +169,7 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **Transverter XXcm** - Поддержка внешнего трансвертера для радиолюбительских бэндов
* **URSI Code** - URSI код для вывода ионограмм https://digisonde.com/index.html#stationmap-section
* **Tropo Region** - Регион для прогноза тропо https://www.dxinfocentre.com/tropo.html
* **Wolf Cluster** - Отображать других пользователей трансивера Волк на спектре и передавать свои данные
* **Wolf Interface I2C** - Подключение трансивера к внешнему I2C интерфейсному устройству, см папку STUFF для получения примера
### FILTERS Settings
@@ -205,6 +207,7 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **Free tune** - Позволяет перемещать полосу приёма по спектру не меняя центральную частоту самого спектра
* **Center After Idle** - Центровать спектр при активном режиме Free Tune после 20 секунд неактивности
* **Noise Blanker** - Активация подавителя импульсных помех
* **Pseudo stereo** - Режим псевдо-стереофонии RX тракта
* **RX AUDIO Mode** - Управление каналами аудио: Стерео\Левый\Правый
* **RX AGC Hold time** - Время перед отпусканием усиления АРУ в пиках сигнала, мс
* **RX AGC Hold limit** - Ограничение на резкие всплески для времени задержки АРУ
@@ -226,6 +229,7 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **ADC Shutdown** - Отключение АЦП во время передачи
* **TX AGC MaxGain** - Максимальное усиление для АРУ
* **TX AGC Speed** - Скорость срабатывания АРУ/компрессора на передачу (больше-быстрее)
* **TX AGC Clipping** - Определяет, будет ли АРУ резко ограничивать усиление сигнала при больших всплесках амплитуды
* **ATU Cap** - Комбинация ёмкостей тюнера
* **ATU Enabled** - Включение автоматического антенного тюнера
* **ATU Ind** - Комбинация индуктивностей тюнера
@@ -271,11 +275,13 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **Iambic Type** - Тип ямбического ключа (A/B)
* **Key Invert** - Инвертировать точку/тире на ключе
* **Key timeout** - Время до остановки режима передачи после отпускания ключа
* **Keyer WPM** - Скорость ключа, WPM
* **Keyer** - Автоматический ключ
* **Keyer WPM** - Скорость ключа, WPM
* **Mode** - Тип боковой полосы CW-LSB / CW-USB
* **One symbol memory** - Режим памяти на один символ
* **PTT Type** - Режим перехода на передачу CW: от ключа или от сигнала PTT
* **Pitch** - Отстройка генератора приёма от частоты передачи
* **Stereo** - Разделение полосы пропускания телеграфа по каналам наушников (аудио-панорама)
* **Self Hear** - Самоконтроль CW (слышно нажатие ключа)
* **Macros x** - Настройка макросов для передачи телеграфом
* **Macros x name** - Настройка имени макросов для отображения в интерфейсе
@@ -284,6 +290,7 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **RX EQ xxx** - Уровни эквалайзера приёмника
* **MIC EQ xxx** - Уровни эквалайзера микрофона
* **EQ Q xxx** - Добротность каждого из каналов эквалайзера
### SCREEN Settings
@@ -318,9 +325,11 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **LCD Brightness** - Управление яркостью экрана (не для всех дисплеев)
* **LCD Sleep Timeout** - Время бездействия, перед тем как снизится яркость экрана, сек (0 - функция отключена)
* **S-Meter style** - Выбор внешнего вида аналогового S-Метра
* **S-Meter smooth** - Коэффициент сглаживания значения S-метра
* **Show Sec VFO** - Отображать положение второго VFO на спектре
* **WTF Color** - Цвета водопада: 1(синий -> желтый -> красный), 2(чёрный -> желтый -> красный), 3(чёрный -> желтый -> зеленый), 4(чёрный -> красный), 5(чёрный -> зеленый), 6(чёрный -> синий), 7(чёрный -> белый)
* **WTF Moving** - Смещение водопада вместе с изменением частоты
* **Wolf Cluster** - Отображать других пользователей трансивера Волк на спектре и передавать свои данные
### Decoders
@@ -378,10 +387,12 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **FAN Medium PWM** - Регулировка скважности ШИМ вентилятора в Medium режиме
* **FAN Motherboard** - Запуск вентилятора не только по датчику, но и по температуре STM32 процессора
* **IF Gain MIN/MAX** - Пределы регулировки усиления ПЧ
* **Min Voltage protect** - Минимальный порог питающего напряжения, ниже сработает защита и трансивер отключится (INA226)
* **OTA Update** - Включение обновления прошивки через WiFi
### Calibration Hardware
* **RF-Unit Type** - Тип RF-Unit платы (QRP / BIG)
* **ADC Offset** - Добавление виртуального смещения к сигналу АЦП
* **ALC Port Enabled** - Активация управления мощностью трансивера внешним усилителем по линии ALC: до 1 вольта - ALC отключен и используется мощность выставленная в трансивере. с 1.0v до 3.0v - регулировка мощности от 0 до 100 %
* **ALC Inverted** - Инвертирование логики ALC (3.0v - 0%, 1.0v - 100%)
* **BPF x** - Параметры полосовых фильтров
@@ -434,7 +445,6 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
### Calibration TX
* **AM Modulation Index** - Глубина модуляции TX AM
* **ATU Averaging** - Количество шагов усреднений значений КСВ при замерах в работе автоматического тюнера
* **TX Start Delay** - Задержка при переходе на TX для срабатывания реле
* **FM Deviation Scale** - Усиление девиации в TX FM режиме
* **Linear Pwr Control** - Задаёт линейный способ изменения амплитуды сигнала при регулировке мощности (если отключен - логарифмический)
* **MAX PWR on Meter** - Максимальная выходная мощность (для индикации)
@@ -443,10 +453,14 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **MAX SWR** - Максимальное КСВ перед срабатыванием защиты
* **Max Current, Amp** - Защита по току, отключает передачу по достижению порога
* **RF GAIN xxx** - Калибровка максимальной выходной мощности TX на каждый диапазон (раскачка с ЦАП)
* **SD Macros power** - Коэффициент усиления сигнала при проигрывании SSB макросов
* **SD Recording power** - Коэффициент усиления сигнала при проигрывании записей эфира
* **SSB Power addition** - Прибавка к выходной мощности в режиме SSB, %
* **SWR FWD/BWD RATE** - Подстройка коэффициента трансформации SWR-метра для падающей и отраженной волны
* **SWR Protector** - Выбор режима защиты по КСВ: Выключена, сброс мощности, отключение передачи
* **TSignal Balance** - Задаёт баланс мощности между сигналами в режиме Two signal tune
* **TX Start Delay** - Задержка при переходе на TX для срабатывания реле
* **TX End Delay** - Задержка при переходе с TX на RX (остановка сигнала до выключения реле)
### Calibration Reset
* **Settings reset** - Сброс настроек по умолчанию
@@ -487,8 +501,15 @@ WiFi модуль ESP-01 должен иметь свежую прошивку
* **WSPR Beacon START** - Запуск маячка WSPR
* **Freq offset** - Смещение относительно центра диапазона WSPR
* **WSPR Power, dBm** - Установка показателя мощности, отправляемого в сообщении маяка
* **WSPR Band xxx** - Выбор диапазонов для работы маячка
### Efficiency
* **Cable Type** - Выбор используемого кабеля в антенно-фидерном устройстве
* **Cable Length** - Длина кабеля от трансивера до антенны
* **Calc Efficiency** - Запуск расчёта эффективности. Для расчёта необходимо отключить тюнер (чтобы знать КСВ антенно-фидерного устройства) и подать несущую
### DX Cluster
* Отображение данных по текущему диапазону из DX кластера (требуется подключение к интернету)

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,10 @@
Интерфейс предназначен для создания пользовательских устройств,
имеющих высокую степень интеграции с трансивером "Волк" Интерфейс подключается к общей I2C шине трансивера.
В данном примере используется плата ESP32, подсоединенная к 21 ноге(сигнал SDA) и 22(сигнал SCK) со стороны ESP32
Со стороны трансивера требуется включение опции Menu->TRX Settings->Wolf Interface I2C
В данный момент поддерживается:
1. Синхронизация основных параметров трансивера(частота, мода, TX / RX)
2. Выполнение и получение ответа по любой поддерживаемой CAT комманде
3. Вывод сообщения на экран трансивера

View File

@@ -0,0 +1,38 @@
/*
Wolf Interface Example Project
This sketch demonstrates basic functionality for develop user-space devices, which communicates with TRX Wolf
https://github.com/XGudron/UA3REO-DDC-Transceiver
*/
#include "Wolf.h"
// the setup function runs once when you press reset or power the board
void setup() {
Serial.begin(115200); // enable serial port for debugging
WOLF_init(); // init TRX Wolf communication
}
// the loop function runs over and over again forever
void loop() {
Serial.println("TRX Info:");
Serial.println("Current VFO: " + String(TRX_WOLF.CurrentVFO == TRX_SELECTED_VFO_A ? "A" : "B"));
Serial.println("VFO A Frequency: " + String(TRX_WOLF.VFO_A_Frequency));
Serial.println("VFO A Mode: " + WOLF_modeToString(TRX_WOLF.VFO_A_Mode));
Serial.println("VFO A Mode is CW? " + String(TRX_WOLF.VFO_A_Mode == TRX_MODE_CW ? "Yes" : "No"));
Serial.println("VFO B Frequency: " + String(TRX_WOLF.VFO_B_Frequency));
Serial.println("VFO B Mode: " + WOLF_modeToString(TRX_WOLF.VFO_B_Mode));
Serial.println("In TX? " + String(TRX_WOLF.TX ? "Yes" : "No"));
Serial.println("In Tune? " + String(TRX_WOLF.Tune ? "Yes" : "No"));
String CAT_Answer = WOLF_catCommand("SM2"); // run CAT command and get answer
Serial.println("CAT Answer (S-Meter dBm RX1): " + CAT_Answer);
WOLF_setMessage("Hello World! " + String(millis())); // set message over FFT, may be disabled if not set
Serial.println("---");
delay(1000);
}

View File

@@ -0,0 +1,51 @@
#ifndef WOLF_h
#define WOLF_h
typedef enum {
TRX_MODE_LSB,
TRX_MODE_USB,
TRX_MODE_CW,
TRX_MODE_NFM,
TRX_MODE_WFM,
TRX_MODE_AM,
TRX_MODE_SAM_STEREO,
TRX_MODE_SAM_LSB,
TRX_MODE_SAM_USB,
TRX_MODE_DIGI_L,
TRX_MODE_DIGI_U,
TRX_MODE_IQ,
TRX_MODE_LOOPBACK,
TRX_MODE_RTTY,
TRX_MODE_DSB,
} TRX_MODE;
typedef enum {
TRX_SELECTED_VFO_A,
TRX_SELECTED_VFO_B,
} TRX_SELECTED_VFO;
typedef struct { // TRX information structure
uint8_t CurrentVFO;
uint64_t VFO_A_Frequency;
uint64_t VFO_B_Frequency;
uint8_t VFO_A_Mode;
uint8_t VFO_B_Mode;
char CAT_Answer[64];
bool TX;
bool Tune;
} tWOLF;
typedef struct { // Interface information structure
bool hasDataChanges;
char Message[64];
char CAT_Command[64];
} tWOLFInterface;
extern tWOLF TRX_WOLF;
extern void WOLF_init(void);
extern String WOLF_modeToString(uint8_t mode);
extern void WOLF_setMessage(String message);
extern String WOLF_catCommand(String command);
#endif

View File

@@ -0,0 +1,129 @@
#include "Wolf.h"
#include "driver/i2c.h"
#include "freertos/FreeRTOS.h"
#define WOLF_I2C_SLAVE_SDA_IO GPIO_NUM_21
#define WOLF_I2C_SLAVE_SCL_IO GPIO_NUM_22
#define WOLF_I2C_SLAVE_NUM I2C_NUM_0
#define WOLF_I2C_ADDR 0b1110110 // without RW bit
#define WOLF_BUF_LEN 256
tWOLF TRX_WOLF;
tWOLFInterface TRX_INTERFACE;
static uint8_t WOLF_inBuff[WOLF_BUF_LEN];
static uint8_t WOLF_outBuff[WOLF_BUF_LEN];
static esp_err_t WOLF_i2c_slave_init() {
i2c_config_t conf_slave;
conf_slave.sda_io_num = WOLF_I2C_SLAVE_SDA_IO;
conf_slave.sda_pullup_en = GPIO_PULLUP_ENABLE;
conf_slave.scl_io_num = WOLF_I2C_SLAVE_SCL_IO;
conf_slave.scl_pullup_en = GPIO_PULLUP_ENABLE;
conf_slave.mode = I2C_MODE_SLAVE;
conf_slave.slave.addr_10bit_en = 0;
conf_slave.slave.slave_addr = WOLF_I2C_ADDR;
conf_slave.slave.maximum_speed = 300000;
conf_slave.clk_flags = 0;
i2c_param_config(WOLF_I2C_SLAVE_NUM, &conf_slave);
return i2c_driver_install(WOLF_I2C_SLAVE_NUM, conf_slave.mode, WOLF_BUF_LEN, WOLF_BUF_LEN, 0);
}
static void WOLF_i2c_background_task(void *arg) {
while (1) {
size_t size = i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, WOLF_inBuff, 1, 1000 / portTICK_RATE_MS);
if (size != 1) {
continue;
}
if (WOLF_inBuff[0] == 0x10) // write structure command
{
size = i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, WOLF_inBuff, 1, 1000 / portTICK_RATE_MS);
if (size != 1) {
continue;
}
if (WOLF_inBuff[0] == 0x01) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.CurrentVFO, sizeof(TRX_WOLF.CurrentVFO), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x02) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.VFO_A_Frequency, sizeof(TRX_WOLF.VFO_A_Frequency), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x03) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.VFO_B_Frequency, sizeof(TRX_WOLF.VFO_B_Frequency), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x04) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.VFO_A_Mode, sizeof(TRX_WOLF.VFO_A_Mode), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x05) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.VFO_B_Mode, sizeof(TRX_WOLF.VFO_B_Mode), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x06) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.CAT_Answer, sizeof(TRX_WOLF.CAT_Answer), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x07) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.TX, sizeof(TRX_WOLF.TX), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x08) {
i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)&TRX_WOLF.Tune, sizeof(TRX_WOLF.Tune), 1000 / portTICK_RATE_MS);
}
}
if (WOLF_inBuff[0] == 0x20) // read has changes? command
{
WOLF_outBuff[0] = TRX_INTERFACE.hasDataChanges ? 0x01 : 0x00;
i2c_reset_tx_fifo(WOLF_I2C_SLAVE_NUM);
i2c_slave_write_buffer(WOLF_I2C_SLAVE_NUM, WOLF_outBuff, 1, 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x30) // read data from interface command
{
size = i2c_slave_read_buffer(WOLF_I2C_SLAVE_NUM, WOLF_inBuff, 1, 1000 / portTICK_RATE_MS);
if (size != 1) {
continue;
}
i2c_reset_tx_fifo(WOLF_I2C_SLAVE_NUM);
if (WOLF_inBuff[0] == 0x01) {
i2c_slave_write_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)TRX_INTERFACE.Message, sizeof(TRX_INTERFACE.Message), 1000 / portTICK_RATE_MS);
}
if (WOLF_inBuff[0] == 0x02) {
i2c_slave_write_buffer(WOLF_I2C_SLAVE_NUM, (uint8_t *)TRX_INTERFACE.CAT_Command, sizeof(TRX_INTERFACE.CAT_Command), 1000 / portTICK_RATE_MS);
memset(TRX_INTERFACE.CAT_Command, 0x00, sizeof(TRX_INTERFACE.CAT_Command));
}
TRX_INTERFACE.hasDataChanges = false;
}
}
}
void WOLF_init(void) {
ESP_ERROR_CHECK(WOLF_i2c_slave_init());
xTaskCreate(WOLF_i2c_background_task, "wolf-task", 1024 * 2, (void *)1, 10, NULL);
}
String WOLF_modeToString(uint8_t mode) {
const char *MODE_DESCR[] = {"LSB", "USB", "CW", "NFM", "WFM", "AM", "SAM", "AM-L", "AM-U", "DIGL", "DIGU", "IQ", "LOOP", "RTTY", "DSB"};
return String(MODE_DESCR[mode]);
}
void WOLF_setMessage(String message) {
message.toCharArray(TRX_INTERFACE.Message, sizeof(TRX_INTERFACE.Message));
TRX_INTERFACE.hasDataChanges = true;
}
String WOLF_catCommand(String command) {
memset(TRX_WOLF.CAT_Answer, 0x00, sizeof(TRX_WOLF.CAT_Answer));
command.toCharArray(TRX_INTERFACE.CAT_Command, sizeof(TRX_INTERFACE.CAT_Command));
TRX_INTERFACE.hasDataChanges = true;
uint32_t startMs = esp_timer_get_time() / 1000;
while ((esp_timer_get_time() / 1000) - startMs < 2000) { // CAT Timeout
if (strlen(TRX_WOLF.CAT_Answer) > 0) {
return String(TRX_WOLF.CAT_Answer);
}
}
return "";
}

14
Stuff/station_names.txt Normal file
View File

@@ -0,0 +1,14 @@
7.1 | Wolf Freq
87.5 | Heze Radio for Shandong
90.4 | China Radio International
92.5 | Henan Radio - News Broadcast
92.9 | -
93.1 | Henan Radio - Media Broadcast
93.4 | Radio Anyang
106.6 | China National Radio
106.8 | Changqing Radio
107.0 | Nanle Media Broadcasting
107.4 | Elephant Information Station
107.6 | China National Radio - Voice of Economy
107.7 | Xinxiang Traffic Broadcast
107.8 | Shandong Radio and Television Station - Classical Music Radio