WSPR
MiB
R9OFG
- R9OFG
- Сообщения: 1286
- Зарегистрирован: 03 ноя 2019, 22:30
- Позывной: R9OFG, ex R0AEK
- Город: Новосибирск
- Имя: Саша
- Благодарил (а): 198 раз
- Поблагодарили: 310 раз
- Контактная информация:
WSPR
Сообщение R9OFG » 08 дек 2021, 19:29
MiB, собрал
На схеме минимум обвязки, обратите внимание, что сопротивления R3/4 по 1 кОм ставим только в том случае, если их нет на TTL-USB преобразователе.
Fuses = 3F DA FF 05
сначала программируем fuses
потом заливаем бутлоадер а далее уже и прошивку маячка
Стираем EEPROM через конфигуратор для успокоения души и калибруем выход сишки, в логе на номер билда не смотрите, понемногу начал управление внешним BPF реализовывать
Завелось с пол оборота....
Декодирование WSPR тоже без вопросов
Будет еще один экземпляр для экспериментов. ИМХО, надо смотреть в сторону работы TTL>USB + попробовать драйвер преобразователя переустановить с предварительным полным удалением старого драйвера, кабель USB (по роду работы немало имею дел с установкой кассового оборудования, так вот столько барабашек насмотрелся из за некачественных USB кабелей). Может и МК подогретый, тоже не исключено, ну и банально посмотреть качество контактов в соединениях.
На схеме минимум обвязки, обратите внимание, что сопротивления R3/4 по 1 кОм ставим только в том случае, если их нет на TTL-USB преобразователе.
Fuses = 3F DA FF 05
сначала программируем fuses
потом заливаем бутлоадер а далее уже и прошивку маячка
Стираем EEPROM через конфигуратор для успокоения души и калибруем выход сишки, в логе на номер билда не смотрите, понемногу начал управление внешним BPF реализовывать
log.txt
Код: Выделить всё
Log file WSPR_beacon_3_CFG.exe
===============
Build: 1.0.8011
===============
08.12.21 10.56.36: Get COMport list
08.12.21 10.56.36: App initialize - Ok!
08.12.21 10.56.46: COM6 open
08.12.21 10.56.49: Get data from COMport: ~f?f?WSPR0
08.12.21 10.56.49: WSPR-beacon board not recognition!
08.12.21 10.56.49: Send reboot command
08.12.21 10.56.53: Get data from COMport: WSPR0
08.12.21 10.56.53: WSPR-beacon board recognition!
08.12.21 10.56.53: Send command - A1
08.12.21 10.56.58: Send command - A2
08.12.21 10.56.58: Get data from COMport: A2111111111211
08.12.21 10.56.58: Active bands - read from EEPROM Ok!
08.12.21 10.56.59: Send command - A2
08.12.21 10.56.59: Get data from COMport: A2111111111211
08.12.21 10.56.59: Active bands - read from EEPROM Ok!
08.12.21 10.57.00: Send command - A2
08.12.21 10.57.00: Get data from COMport: A2111111111211
08.12.21 10.57.00: Active bands - read from EEPROM Ok!
08.12.21 10.57.01: Send command - A2
08.12.21 10.57.01: Get data from COMport: A2111111111211
08.12.21 10.57.01: Active bands - read from EEPROM Ok!
08.12.21 10.57.01: Send command - A2
08.12.21 10.57.01: Get data from COMport: A2111111111211
08.12.21 10.57.01: Active bands - read from EEPROM Ok!
08.12.21 10.57.01: Send command - A2
08.12.21 10.57.01: Get data from COMport: A2111111111211
08.12.21 10.57.01: Active bands - read from EEPROM Ok!
08.12.21 10.57.02: Send command - A2
08.12.21 10.57.02: Get data from COMport: A2111111111211
08.12.21 10.57.02: Active bands - read from EEPROM Ok!
08.12.21 10.57.02: Send command - A2
08.12.21 10.57.02: Get data from COMport: A2111111111211
08.12.21 10.57.02: Active bands - read from EEPROM Ok!
08.12.21 10.57.02: Send command - A2
08.12.21 10.57.02: Get data from COMport: A2111111111211
08.12.21 10.57.02: Active bands - read from EEPROM Ok!
08.12.21 10.57.02: Send command - A2
08.12.21 10.57.02: Get data from COMport: A2111111111211
08.12.21 10.57.02: Active bands - read from EEPROM Ok!
08.12.21 10.57.03: Send command - A2
08.12.21 10.57.03: Get data from COMport: A2111111111211
08.12.21 10.57.03: Active bands - read from EEPROM Ok!
08.12.21 10.57.03: Send command - A2
08.12.21 10.57.03: Get data from COMport: A2111111111211
08.12.21 10.57.03: Active bands - read from EEPROM Ok!
08.12.21 10.57.04: Send command - A3
08.12.21 10.57.04: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.04: TX options - read from EEPROM Ok!
08.12.21 10.57.05: Send command - A3
08.12.21 10.57.05: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.05: TX options - read from EEPROM Ok!
08.12.21 10.57.05: Send command - A3
08.12.21 10.57.05: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.05: TX options - read from EEPROM Ok!
08.12.21 10.57.05: Send command - A3
08.12.21 10.57.05: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.06: TX options - read from EEPROM Ok!
08.12.21 10.57.06: Send command - A3
08.12.21 10.57.06: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.06: TX options - read from EEPROM Ok!
08.12.21 10.57.06: Send command - A3
08.12.21 10.57.06: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.06: TX options - read from EEPROM Ok!
08.12.21 10.57.06: Send command - A3
08.12.21 10.57.06: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.07: TX options - read from EEPROM Ok!
08.12.21 10.57.07: Send command - A3
08.12.21 10.57.07: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.07: TX options - read from EEPROM Ok!
08.12.21 10.57.07: Send command - A3
08.12.21 10.57.07: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.07: TX options - read from EEPROM Ok!
08.12.21 10.57.07: Send command - A3
08.12.21 10.57.07: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.07: TX options - read from EEPROM Ok!
08.12.21 10.57.07: Send command - A3
08.12.21 10.57.07: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.08: TX options - read from EEPROM Ok!
08.12.21 10.57.08: Send command - A3
08.12.21 10.57.08: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.08: TX options - read from EEPROM Ok!
08.12.21 10.57.09: Send command - C1
08.12.21 10.57.09: Get data from COMport: C1006
08.12.21 10.57.09: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.09: Send command - C1
08.12.21 10.57.09: Get data from COMport: C1006
08.12.21 10.57.09: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.10: Send command - C1
08.12.21 10.57.10: Get data from COMport: C1006
08.12.21 10.57.10: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.10: Send command - C1
08.12.21 10.57.10: Get data from COMport: C1006
08.12.21 10.57.10: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.10: Send command - C1
08.12.21 10.57.10: Get data from COMport: C1006
08.12.21 10.57.10: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.11: Send command - C1
08.12.21 10.57.11: Get data from COMport: C1006
08.12.21 10.57.11: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.11: Send command - C1
08.12.21 10.57.11: Get data from COMport: C1006
08.12.21 10.57.11: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.11: Send command - C1
08.12.21 10.57.11: Get data from COMport: C1006
08.12.21 10.57.11: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.11: Send command - C1
08.12.21 10.57.11: Get data from COMport: C1006
08.12.21 10.57.11: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.11: Send command - C1
08.12.21 10.57.11: Get data from COMport: C1006
08.12.21 10.57.11: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.12: Send command - C1
08.12.21 10.57.12: Get data from COMport: C1006
08.12.21 10.57.12: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.12: Send command - C1
08.12.21 10.57.12: Get data from COMport: C1006
08.12.21 10.57.12: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.12: Send command - C1
08.12.21 10.57.12: Get data from COMport: C1006
08.12.21 10.57.12: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.12: Send command - C1
08.12.21 10.57.12: Get data from COMport: C1006
08.12.21 10.57.12: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.13: Send command - C1
08.12.21 10.57.13: Get data from COMport: C1006
08.12.21 10.57.13: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.13: Send command - C1
08.12.21 10.57.13: Get data from COMport: C1006
08.12.21 10.57.13: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.13: Send command - C1
08.12.21 10.57.13: Get data from COMport: C1006
08.12.21 10.57.13: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.22: A6 - Send TX options data
08.12.21 10.57.24: A7 - Send first block WSPR-data
08.12.21 10.57.26: A8 - Send second block WSPR-data
08.12.21 10.57.30: A9 - Send third block WSPR-data
08.12.21 10.57.34: COM6 closed
08.12.21 10.57.37: COM6 open
08.12.21 10.57.41: Get data from COMport: WSPR0
08.12.21 10.57.41: WSPR-beacon board recognition!
08.12.21 10.57.41: Send command - A1
08.12.21 10.57.43: Send command - A2
08.12.21 10.57.43: Get data from COMport: A2111111111211
08.12.21 10.57.43: Active bands - read from EEPROM Ok!
08.12.21 10.57.44: Send command - A2
08.12.21 10.57.44: Get data from COMport: A2111111111211
08.12.21 10.57.44: Active bands - read from EEPROM Ok!
08.12.21 10.57.44: Send command - A2
08.12.21 10.57.44: Get data from COMport: A2111111111211
08.12.21 10.57.44: Active bands - read from EEPROM Ok!
08.12.21 10.57.44: Send command - A2
08.12.21 10.57.44: Get data from COMport: A2111111111211
08.12.21 10.57.44: Active bands - read from EEPROM Ok!
08.12.21 10.57.45: Send command - A2
08.12.21 10.57.45: Get data from COMport: A2111111111211
08.12.21 10.57.45: Active bands - read from EEPROM Ok!
08.12.21 10.57.45: Send command - A2
08.12.21 10.57.45: Get data from COMport: A2111111111211
08.12.21 10.57.45: Active bands - read from EEPROM Ok!
08.12.21 10.57.45: Send command - A2
08.12.21 10.57.45: Get data from COMport: A2111111111211
08.12.21 10.57.45: Active bands - read from EEPROM Ok!
08.12.21 10.57.45: Send command - A2
08.12.21 10.57.45: Get data from COMport: A2111111111211
08.12.21 10.57.45: Active bands - read from EEPROM Ok!
08.12.21 10.57.45: Send command - A2
08.12.21 10.57.45: Get data from COMport: A2111111111211
08.12.21 10.57.45: Active bands - read from EEPROM Ok!
08.12.21 10.57.46: Send command - A3
08.12.21 10.57.46: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.47: TX options - read from EEPROM Ok!
08.12.21 10.57.47: Send command - A3
08.12.21 10.57.47: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.47: TX options - read from EEPROM Ok!
08.12.21 10.57.47: Send command - A3
08.12.21 10.57.47: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.47: TX options - read from EEPROM Ok!
08.12.21 10.57.47: Send command - A3
08.12.21 10.57.47: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.47: TX options - read from EEPROM Ok!
08.12.21 10.57.47: Send command - A3
08.12.21 10.57.47: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.47: TX options - read from EEPROM Ok!
08.12.21 10.57.48: Send command - A3
08.12.21 10.57.48: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.48: TX options - read from EEPROM Ok!
08.12.21 10.57.48: Send command - A3
08.12.21 10.57.48: Get data from COMport: A3R0AEK NO15 3010
08.12.21 10.57.48: TX options - read from EEPROM Ok!
08.12.21 10.57.50: Send command - C1
08.12.21 10.57.50: Get data from COMport: C1006
08.12.21 10.57.50: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.50: Send command - C1
08.12.21 10.57.50: Get data from COMport: C1006
08.12.21 10.57.50: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.50: Send command - C1
08.12.21 10.57.50: Get data from COMport: C1006
08.12.21 10.57.50: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.50: Send command - C1
08.12.21 10.57.50: Get data from COMport: C1006
08.12.21 10.57.50: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.50: Send command - C1
08.12.21 10.57.50: Get data from COMport: C1006
08.12.21 10.57.50: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.51: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.51: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.51: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.51: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.51: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.51: Send command - C1
08.12.21 10.57.51: Get data from COMport: C1006
08.12.21 10.57.52: Clock generator Si5351 - read from EEPROM Ok!
08.12.21 10.57.53: COM6 closed
08.12.21 10.57.56: App closed
phpBB [video]
Декодирование WSPR тоже без вопросов
Будет еще один экземпляр для экспериментов. ИМХО, надо смотреть в сторону работы TTL>USB + попробовать драйвер преобразователя переустановить с предварительным полным удалением старого драйвера, кабель USB (по роду работы немало имею дел с установкой кассового оборудования, так вот столько барабашек насмотрелся из за некачественных USB кабелей). Может и МК подогретый, тоже не исключено, ну и банально посмотреть качество контактов в соединениях.
R9OFG
- MiB
- Сообщения: 191
- Зарегистрирован: 26 фев 2021, 19:14
- Позывной: R3KEE
- Город: Novovoronezh
- Имя: Roman
- Благодарил (а): 26 раз
- Поблагодарили: 19 раз
WSPR
Сообщение MiB » 09 дек 2021, 07:22
проверю.
правда, в такой схеме включения, с этим usb2ttl периодически программируются и иногда работают еще устройства - гирлянда и датчик протечек/ считыватель счетчиков водопотребления - проблем не замечено.
по шине TX тоже - как и говорил, запись всегда проходит нормально.
кстати, давно хотел спросить - почему этот загрузчик? почему не использовать ардуиновский, распространять HEX или bin и лить avrdude?
что-то пролезло.
Как я уже написал - не стоит заморачиваться, чтение - не настолько необходимый функционал чтобы из-за него переживать.
главное запись работает как надо.
лучше ДПФ допилить и переход TX/RX в компорт отправлять.
p.s. если нет особого секрета - список команд с кратким описанием выкладывать вместе с релизом, ну если кто-то на линуксе работает, или вообще ESP прикрутить вздумает.
MiB
- R9OFG
- Сообщения: 1286
- Зарегистрирован: 03 ноя 2019, 22:30
- Позывной: R9OFG, ex R0AEK
- Город: Новосибирск
- Имя: Саша
- Благодарил (а): 198 раз
- Поблагодарили: 310 раз
- Контактная информация:
WSPR
Сообщение R9OFG » 09 дек 2021, 07:44
тут скорее всего присутствует и тот момент, что событие неадекватно срабатывает, о чем выше писал, ведь если буржуи обратили внимание на подобную ситуацию, значит она имеет место быть. Думаю как переработать прием не по событию, думаю тогда исправим этот баг.MiB писал(а): ↑09 дек 2021, 07:22проверю.
правда, в такой схеме включения, с этим usb2ttl периодически программируются и иногда работают еще устройства - гирлянда и датчик протечек/ считыватель счетчиков водопотребления - проблем не замечено.
по шине TX тоже - как и говорил, запись всегда проходит нормально.
ардуиновский только свой синтаксис принимает, а тут чистый с/с++, можно конечно и просто хекс через программатор лить, но думаю удобней просто подключить по усб, так как при прошивке программатором можно еще и fuses сбить случайно, тогда ой-ей-ей будет если залочится МК, разлочить конечно можно, но это время и соответствующий программатор нужен или fuse-bit-doctor.
Ждал что обратите на это внимание! Это после первой подачи питания на TTL>USB при создании экземпляра виртуального COM порта образовывается "мусор" в буфере, по этому и сделал принудительное пере подключение если с первого раза не подключается, хотя можно просто сравнение строк по вхождению сделать, будет даже лучше наверное.
Есть желание больше глюков и багов исключить, ситуации разные бывают!
Секрета нет и не будет, как допилю GPS и ABCD для extBPF, наведу порядок в командах и выложу, будет как бы API

R9OFG
- MiB
- Сообщения: 191
- Зарегистрирован: 26 фев 2021, 19:14
- Позывной: R3KEE
- Город: Novovoronezh
- Имя: Roman
- Благодарил (а): 26 раз
- Поблагодарили: 19 раз
WSPR
Сообщение MiB » 10 дек 2021, 07:29
странно. всю жизнь считал что HEX стандартный во всех компиляторах: двоеточие, адрес записи, 16 байт(или меньше), перевод строки...
останется только выставить в C/C++ адрес начала компиляции, чтобы не перетирать загрузчик ардуины...
IMHO - я не пробовал, знания чисто теоретические.
ну выше предлагал по нажатию кнопки Read запускаем цикл и таймаут таймер, ждем что наступить раньше если цикл завершился и пришел \x0a то таймер выключаем и переходим к парсингу, если таймер завершился то выдаем ошибку чтения и переходим к ожиданию действия.
ну такое желание везде и всегда есть, но иногда глюки приходится переводить в разряд багов и оставлять так-как есть

это не может не радовать, пока в принципе достаточно того что выловил снифером... все понятно в общих чертах.
MiB
- R9OFG
- Сообщения: 1286
- Зарегистрирован: 03 ноя 2019, 22:30
- Позывной: R9OFG, ex R0AEK
- Город: Новосибирск
- Имя: Саша
- Благодарил (а): 198 раз
- Поблагодарили: 310 раз
- Контактная информация:
WSPR
Сообщение R9OFG » 10 дек 2021, 07:40
я в ide ардуины не силен, так попробовал, посмотрел на размер хекса и отодвинул в дальний угол рабочего стола. Если прошивальщик ардуины может готовый сторонний хекс лить, то попробовать можно, у меня на памяти что ide из кода собирает хекс а потом льет его. надо пробоватьMiB писал(а): ↑10 дек 2021, 07:29странно. всю жизнь считал что HEX стандартный во всех компиляторах: двоеточие, адрес записи, 16 байт(или меньше), перевод строки...
останется только выставить в C/C++ адрес начала компиляции, чтобы не перетирать загрузчик ардуины...
IMHO - я не пробовал, знания чисто теоретические.
R9OFG
MiB
- R9OFG
- Сообщения: 1286
- Зарегистрирован: 03 ноя 2019, 22:30
- Позывной: R9OFG, ex R0AEK
- Город: Новосибирск
- Имя: Саша
- Благодарил (а): 198 раз
- Поблагодарили: 310 раз
- Контактная информация:
WSPR
Сообщение R9OFG » 12 дек 2021, 00:25
MiB, гонял GPS данные в конфигуратор по 64 байта, начал изредка ловить такие же ошибки как у Вас, потом все же до меня дошло где я пустил ситуацию на самотек... чудес все таки не бывает
Поправил, 64 байта летают без разрывов
Надоело разбивать по прошивкам для разных i2c модулей дисплеев 1602, теперь в конфигураторе можно выбрать соответствующий, тем более скоро парочка OLED мелких приедут, буду и их включать, вот и решил сделать одну прошивку для всех вариантов дисплейчиков.
Попробуйте по возможности.... этот вариант полностью не тестировал, только для проверить исправиться у Вас ситуация или нет.

Поправил, 64 байта летают без разрывов
Надоело разбивать по прошивкам для разных i2c модулей дисплеев 1602, теперь в конфигураторе можно выбрать соответствующий, тем более скоро парочка OLED мелких приедут, буду и их включать, вот и решил сделать одну прошивку для всех вариантов дисплейчиков.
Попробуйте по возможности.... этот вариант полностью не тестировал, только для проверить исправиться у Вас ситуация или нет.
- WSPR_Beacon_3_ver_1_05c - not for use!.zip
- (47.84 КБ) 150 скачиваний
Последний раз редактировалось R9OFG 12 дек 2021, 00:42, всего редактировалось 1 раз.
R9OFG
R9OFG
Вернуться в «Микроконтроллеры и программирование»
Перейти
- Обязательно к прочтению
- Аналоговая схемотехника
- ↳ Супергетеродинные приемники и трансиверы
- ↳ Прямое преобразование
- ↳ Прямое усиление
- ↳ Регенераторы
- ↳ Узлы, блоки, модули
- ↳ Усилители мощности
- Цифровая техника
- ↳ SDR приемники
- ↳ SDR приставки
- ↳ SDR трансиверы
- ↳ Микроконтроллеры и программирование
- Теплая лампота
- ↳ Супергетеродины
- ↳ Регенераторы
- ↳ Прямого усиления
- ↳ УНЧ
- ↳ ВЧ усилители мощности
- Источники питания
- ↳ Трансформаторные и линейные
- ↳ Импульсные и преобразователи
- ↳ Гибриды
- ↳ Аккумуляторы и батареи
- ↳ Альтернативные источники
- Антенны
- ↳ Антенны КВ
- ↳ Антенны УКВ
- ↳ Фидеры кабели
- ↳ Антенные приборы и устройства
- ↳ Тюнеры
- Фирменная аппаратура
- ↳ Yaesu
- ↳ Icom
- ↳ Kenwood
- ↳ Прочие
- Мастерская
- ↳ Измерения, приборы и софт
- ↳ Паяльное оборудование
- ↳ Слесарка
- ↳ ЧПУ и 3D принтеры
- Разное
- ↳ Другие радио темы
- ↳ Полевой день
- ↳ Помогите опознать
- ↳ Куплю Продам Магазины Продавцы
- ↳ Флудильня и оффтоп
- Работа форума