WSPR

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 05 май 2021, 20:30

Добавил, как в предыдущем проекте, проверку кодированного WSPR сообщения, при нажатии на кнопку "Play audio WSPR data" конфигуратор ждет начало четной минуты и воспроизводит на аудио устройстве ПК, можно направить аудио поток в программку декодирования WSPR и посмотреть результат

1.png

Желающие могут потестить, в архиве прошивка и конфигуратор, для подключения платки ардуино уно надо залить в нее соответствующий бутлоадер, посмотреть как это сделать, можно по ссылке, дисплей подключать не обязательно.

WSPR_B_3_beta.rar
(14.35 КБ) 100 скачиваний

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 19 май 2021, 18:55

Коллеги вопрос появился.

В проект заложена синхронизация времени от двух устройств на выбор, RTC или GPS, по последнему все понятно, точнее не придумаешь. Думаю как лучше синхронизировать время в RTC модуле, к примеру:

1. Время в РТС устанавливается автоматом при подключении устройства к конфигуратору, тупо берем время с ПК
2. А если на ПК время не синхронизировано с UTC? А расхождение в 3-5 секунд для WSPR критично.

Принудительно синхронизировать время на ПК? А вдруг у пользователя своя синхронизация времени ПК с чем то?

Может сделать так - подключенное устройство к конфигуратору при видимости интернета на ПК синхронизируется и устанавливает время в РТС в обход текущего времени на ПК? В итоге получаем точную установку времени на РТС и не ломаем время на ПК пользователя.

Интересует мнение коллег!


Аватара пользователя
R2AJI
Сообщения: 748
Зарегистрирован: 12 окт 2019, 22:48
Город: Россошь
Благодарил (а): 183 раза
Поблагодарили: 240 раз

WSPR

Сообщение R2AJI » 19 май 2021, 20:18

Третий вариант, ИМХО, самый лучший.
Плевать на настройки пользователя, синхронизируемся с сервером точного времени и не морочим голову ни себе ни пользователю :)
Все вопросы про радио, на форум пожалуйста, в личные сообщения, только личные вопросы.
В противном случае, все равно отправлю на форум.

YouTube канал HAM Radio Channel

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 19 май 2021, 20:36

Так и поступим (хорошо если там интернет будет, а если сильно бронирован, тогда вариант один... время с ПК, тут уж.... берем ближайший СДР и смотрим ловится или нет), попробуем это сделать тихо (смущает одно, как антивирусное ПО отреагирует, мой касперыч пока молчит....это уже профессиональное :mrgreen: ))! Постараюсь до июня родить прошивку с РТС, в июне долгожданный конец перевоза семьи на новое пмж.... может быть пауза....

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 19 май 2021, 20:38

Кстати коллеги, 10 раз скачали..... замечаний или пожеланий нет?

UA3170309
Сообщения: 45
Зарегистрирован: 05 фев 2021, 10:31
Позывной: RX3AKO
Город: Москва
Имя: Алексей
Благодарил (а): 30 раз
Поблагодарили: 14 раз

WSPR

Сообщение UA3170309 » 20 май 2021, 14:04

Коллеги, мои 5 копеек.
Пришлось немного повозиться с синхронизацией времени в проектах, вынес из этого следующий опыт:
1. С RTC есть одна засада: в них нет никакой схемы или индикатора, показывающего, что бекапная батарейка сдохла, и время, соответственно, "ушло". Но в чипе DS3231есть статусный регистр 0Fh, в котором бит 7 индицирует непрерывность работы часов. Цитата из даташита:
"Bit 7: Oscillator Stop Flag (OSF). A logic 1 in this bit indicates that the oscillator either is stopped or was stopped for some period and may be used to judge the validity of the timekeeping data. This bit is set to logic 1 any time that the oscillator stops."
Т.е. первым делом после старта программы, после инициализации I2C и последующей инициализации RTC лезем в этот регистр и проверяем этот бит: если он в 1, значит время в RTC скомпрометировано и его нужно синхронизировать откуда-нибудь; если же 0, то успокаиваемся и просто используем время из RTC.
2. Но, допустим, мы поняли, что время в RTC нам надо выставить. С GPS тоже все не так просто: от момента, пока данные со спутника были получены, и до момента, пока ушло сообщение в UART-порт, может пройти довольно много времени. Надо внимательно "курить" мануал на ваш GPS-модуль. Я с таким не работал, но мне как-то довелось разбираться с модулем, который сам, по установленному тобой расписанию, считывал данные со спутников, а по твоему запросу отдавал последние координаты, время со спутников, и интервал задержки, когда эти данные были получены; т.е. к спутниковому времени надо было добавлять интервал задержки, чтобы получить текущее время.
3. Даже если RTC работает стабильно, всё равно в программе надо предусмотреть некий "сторожок", который где-то раз в сутки будет сверять время из GPS с временем из RTC и, при необходимости, обновлять последнее.

Аватара пользователя
MiB
Сообщения: 187
Зарегистрирован: 26 фев 2021, 19:14
Позывной: R3KEE
Город: Novovoronezh
Имя: Roman
Благодарил (а): 26 раз
Поблагодарили: 19 раз

WSPR

Сообщение MiB » 24 май 2021, 20:54

Думаю что нужно взять время с ПК пользователя для RTC и ничего не менять на чужом компьютере. (вообще что-то менять без разрешения пользователя - моветон, IMHO)
Тот кто будет повторять проект должен понимать что есть WSPR, что он делает и на что будет влиять его неверное время.

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 22 июл 2021, 18:25

Перемещения между регионами закончились! Продолжил работу над проектом.

Реализовал подключение DS1302 (знаю, вариант не лучший, у меня за сутки на пару секунд убежал в перед), на этом модуле часов отрабатывал синхронизацию времени с интернета, алгоритм такой:

1. Стучимся в интернет, берем от туда реальное время.
2. Если интернет или сервер времени не доступны, то берем время с ПК пользователя.

1.png
2.png
3.png

Во вложении конфигуратор и текущая прошивка, если кому ни лень попробуйте. Как подключить модуль видно по фото.

73!
WSPR_Beacon_3_CFG.zip
(19.87 КБ) 88 скачиваний

Аватара пользователя
MiB
Сообщения: 187
Зарегистрирован: 26 фев 2021, 19:14
Позывной: R3KEE
Город: Novovoronezh
Имя: Roman
Благодарил (а): 26 раз
Поблагодарили: 19 раз

WSPR

Сообщение MiB » 26 июл 2021, 18:38

R0AEK писал(а):
22 июл 2021, 18:25
знаю, вариант не лучший, у меня за сутки на пару секунд убежал в перед
Батарейку поставить новую и хорошую, типа оригинальной "RENATA".

Аватара пользователя
R9OFG
Сообщения: 1182
Зарегистрирован: 03 ноя 2019, 22:30
Позывной: R9OFG, ex R0AEK
Город: Новосибирск
Имя: Саша
Благодарил (а): 181 раз
Поблагодарили: 276 раз
Контактная информация:

WSPR

Сообщение R9OFG » 26 июл 2021, 18:45

MiB, с DS1302 не поможет, хотя если корпус кварца заземлить как положено, может и будет более долгая точность.

В планах на выбор разные RTC и GPS, пока подключил модуль si5351, завелся сразу, как реализую корректировку частоты, выложу пробник, будет уже рабочий, мой стенд уже принимается на рядом стоящий приемник

Ответить

Вернуться в «Микроконтроллеры и программирование»