r6462mod11 source code released for public access
Complete source code, patch file, release notes, test results and various UI options are published there:
Исходный код, патч файл, Release notes, результаты тестирования и исходники разных вариантов интерфейса опубликованы здесь:
https://cloud.mail.ru/public/CFgC/uzaqSHr44
r6462mod11: измененный функционал
mod11 сделан на базе исходного кода mod10.
Первый проход декодирования сигналов JT65a разделен на два подпрохода(1.1 и 1.2): на каждом из них после декодирования каждого сигнала выполняется его вычитание из массива временн'ых отсчетов, после окончания подпрохода заново вычисляется спектр сигналов для последующего декодирования.
В рамках первого прохода используется общий список SYNC кандидатов на декодирование, если сигнал декодирован то в списке ему присваивается отрицательное значение частоты и на следующем подпроходе софт не будет его декодировать, таким образом выполняю прореживание списка кандидатов между подпроходами первого прохода.
Для первого подпрохода 1.1 используется ограничение передаваемого на FTRSD количества кандидатов = 21, для второго подпрохода 1.2 ограничение = 25, оба значения оптимальны для тестовых файлов с SDR.
По сути в mod11 мы получили декодирование в 4 прохода, с относительно небольшим приростом времени декодирования, что ощутимо увеличивает эффективность декодирования сигналов JT65a.
Режим SWL ON полностью переделан и теперь основан на функционале SWL OFF, просто выполнено смещение величины decoding attempts на 3 единицы, что примерно балансирует по времени режимы SWL OFF и SWL ON. В табличке результатов тестирования одинаковым цветом показаны ячейки с одинаковым количеством попыток декодирования nvec.
Благодаря переходу на единый функционал режим SWL ON тоже частично получил нормирование времени декодирования, разница в 25..30% (увеличение времени) будет наблюдаться при небольшом количестве кандидатов на декодирование, балансировку режимов SWL ON / SWL OFF выполнил с учетом этого разброса.
Для слабых процессоров ввел дополнительно вниз одну ступеньку decoding attempts (в mod11 значение 1), но при выборе этого значения время декодирования снижается немного, связано с тем что б'ольшую часть процессорной емкости при малом количестве попыток декодирования съедает математика четырех проходов, меньшая часть занимается декодером (значение переменной nvec используется в декодере FTRSD).
Исходники графического интерфейса основного окна ревизии mod10 полностью совместимы с mod11.
Рекомендации по использованию mod11:
JT65+JT9 режим декодирования
Number of decoding attempts: подбирать по времени декодирования интервала
Nubmer of decoding passes = 3
Agressive decoding level = 0
Верхняя и нижняя границы частот на водопаде согласно желаемой полосе декодирования.
Внимание: режим SWL ON создает полную загрузку процессора в течение продолжительного
времени, приводит к повышению энергопотребления и требований к охлаждению процессора.
Вложений: 1
r6462mod11: результаты тестирования
Вложений: 1
r6462mod4: 4 сигнала правильно декодированы на одной частоте
При установке decoding attempts = 1 софт выдает двойной сюрприз: 26 JT65a верных декодирований, одно отличается от ранее опубликованной картинки, предыдущая картинка была получена при decoding attempts = 8.
В декодах:
- два сигнала от PC4N, он передавал разные сообщения на разных частотах в одном интервале
- на частоте 1221-1222-1223 декодировано 4 сигнала станций звавших W4IMD.
Это результат использования в софте четырех проходов декодирования.
Вложение 161423
синхронизация времени и антивирусное ПО
На одной из машин столкнулся с тем что антивирусное ПО Dr.Web занимаясь анализом интернет пакетов вносит задержку в их прохождении, эта задержка приводит увеличению разницы между реальным временем и часами компьютера до примерно 0.8 секунды, нарушая правильную работу NTP.
Из этой ситуации возможны два выхода:
- не использовать вносящие задержку сетевого трафика антивирусы
- временно выключить антивирус, выполнить принудительно синхронизацию софтом NetTime, после чего включить антивирус.
В последнем случае периодичность автоматической синхронизации надо устанавливать так чтобы интервал между двумя синхронизациями охватывал весь период работы в эфире (от одного до нескольких часов), иначе автоматическая синхронизация через работающий антивирус снова собьет время на компьютере.