Тигромаяк 0.51

NB: нижеприведенная информация скорее всего устарела в той или иной степени. Поищите посвежее 😃

Маленькое обновление.

  • Поддержка сообщения NMEA GGA для автопилотов, которые зачем-то отключают RMC (например, MPX).
  • Пофикшена ошибка с трехзначной долготой. Актуально для тех, кто живет восточнее Красноярска.
  • Исправлены периодические отказы записи конфига на некоторых типах UART.
  • Исправлена документация в части загрузки через УАРТ без вывода DTR.

Ссылки:
Конфигуратор
Документация

  • 7473
Comments
AviaDed

Уважаемый Константин.
Приёмник Orange прошил прошивкой маяка OpenBeacon 0.3, здесь вопросов нет но вот захотелось обновиться и получил облом, при прошивке на версию OpenBeacon 0.5 выскакивает сообщение “RF22B_PWRSTATE_Tx” was not declared in this scope и прошивка останавливается. Что делаю не так? Прошивальщик USBASP V2.0. И ещё, пытался скачать прошивку 0.51 по ссылке указанной в “Конфигуратор” но мой антивирусник ругается что файл заражён трояном и блокирует загрузку. Откуда можно взять чистый Файл?

тигромух

А какой у вас антивирус? Дело в том, что конфигуратор написан на языке AutoIt3, и его компилятор aut2exe некоторые антивирусы ложно определяют как троян. Особенно этим грешит всякая ерунда типа Avira/Avast.
Вот множество обсуждений на эту тему: google
Можете спокойно отключить антивирус и запустить конфигуратор, ничего вредного там нет, мамой клянусь 😃
Самое простое для вас, это прошить загрузчик из конфигуратора по Ctrl-B через USBASP, а затем залить прошивку и отконфигурить через UART.
Если хотите разобраться почему не компилит ардуина, то скопируйте побольше текста сообщения об ошибке.

AviaDed

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

тигромух

Думаю, справитесь. Советская школа рулит 😃
Обращайтесь, если что. Можно сразу в скайп или куда удобнее.

AviaDed

Скачал версию 0.5, Запустил файл OpenBeacon из корневой папки OpenBeacon05/OpenBeacon, дальше нажимаю Ctrl-B и опять получаю то же сообщение.Вот весь перечень ошибок:

OpenBeacon.ino:287:24: error: dtmf_voice.h: No such file or directory
OpenBeacon.ino:288:17: error: rfm.h: No such file or directory
OpenBeacon.ino:289:19: error: sleep.h: No such file or directory
OpenBeacon.ino:290:19: error: setup.h: No such file or directory
OpenBeacon.ino:291:17: error: gps.h: No such file or directory
OpenBeacon.ino: In function ‘void sendBeacon()’:
OpenBeacon:312: error: ‘RF22B_PWRSTATE_TX’ was not declared in this scope
OpenBeacon:312: error: ‘powerOnRFM’ was not declared in this scope
OpenBeacon:316: error: ‘spiWriteRegister’ was not declared in this scope
OpenBeacon:322: error: ‘spiWriteRegister’ was not declared in this scope
OpenBeacon:339: error: ‘powerOffRFM’ was not declared in this scope
OpenBeacon.ino: In function ‘void beaconHorn()’:
OpenBeacon:344: error: ‘RF22B_PWRSTATE_TX’ was not declared in this scope
OpenBeacon:344: error: ‘powerOnRFM’ was not declared in this scope
OpenBeacon:351: error: ‘powerOffRFM’ was not declared in this scope
OpenBeacon.ino: In function ‘void sendVOICE(char*)’:
OpenBeacon:373: error: ‘RF22B_PWRSTATE_TX’ was not declared in this scope
OpenBeacon:373: error: ‘powerOnRFM’ was not declared in this scope
OpenBeacon:375: error: ‘_sendVOICE’ was not declared in this scope
OpenBeacon:376: error: ‘powerOffRFM’ was not declared in this scope
OpenBeacon.ino: In function ‘void setup()’:
OpenBeacon:410: error: ‘RFM22B_Int’ was not declared in this scope
OpenBeacon:413: error: ‘configBeacon’ was not declared in this scope
OpenBeacon:452: error: ‘initRFM’ was not declared in this scope
OpenBeacon.ino: In function ‘void sendGPSBeacon()’:
OpenBeacon:535: error: ‘deepSleep’ was not declared in this scope
OpenBeacon:550: error: ‘COORDS’ was not declared in this scope
OpenBeacon:552: error: ‘deepSleep’ was not declared in this scope
OpenBeacon:555: error: ‘deepSleep’ was not declared in this scope
OpenBeacon.ino: In function ‘void sendSearchBeacon()’:
OpenBeacon:569: error: ‘COORDS’ was not declared in this scope
OpenBeacon:570: error: ‘deepSleep’ was not declared in this scope
OpenBeacon.ino: In function ‘void loop()’:
OpenBeacon:581: error: ‘millisCounter’ was not declared in this scope
OpenBeacon:628: error: ‘preambleDetected’ was not declared in this scope
OpenBeacon:629: error: ‘RF22B_PWRSTATE_RX’ was not declared in this scope
OpenBeacon:629: error: ‘powerOnRFM’ was not declared in this scope
OpenBeacon:631: error: ‘powerOffRFM’ was not declared in this scope
OpenBeacon:655: error: ‘GpsErrorCount’ was not declared in this scope
OpenBeacon:664: error: ‘gpsRead’ was not declared in this scope
OpenBeacon:686: error: ‘preambleDetected’ was not declared in this scope
OpenBeacon:687: error: ‘RF22B_PWRSTATE_RX’ was not declared in this scope
OpenBeacon:687: error: ‘powerOnRFM’ was not declared in this scope
OpenBeacon:689: error: ‘powerOffRFM’ was not declared in this scope
OpenBeacon:701: error: ‘deepSleep’ was not declared in this scope
OpenBeacon:740: error: ‘deepSleep’ was not declared in this scope

Что не так делаю?

тигромух

Эти ошибки из-за того, что вы разархивировали исходники не полностью, видимо открыли OpenBeacon.ino прямо из архива.
Этого делать не надо. Вообще, исходники не нужны. Как раз, для того, чтоб не забивать голову компиляцией и прочим, придуман конфигуратор. Он сам умеет прошивать и загрузчик и прошивку маяка и он все-равно понадобится, как минимум, для настройки.
Ctrl-B - это комбинация клавиш в конфигураторе. Ссылка на конфигуратор выше, в тексте поста.

AviaDed

Ура-а-а! Все получилось и заработало. Моя благодарность не знает границ, так и на старости чему-то научусь. Загрузил OpenBeacon_05 конфигуратор и прошивку, конфигуратор 0.51 загрузился а вот прошивать отказался, ругается на отсуствие файла при нажатии на кнопку ПРОШИВКА в конфигураторе. Но в 0.51 обновления (как я понял) для меня не важны по этому буду теперь по вашему совету окультуривать плату и цеплять все остальное-GPS, батарейка. Огромное спасиба.

тигромух

А можно поподробнее про ошибку в 0.51? Не должен бы он ругаться…

AviaDed

Прошу сильно бока не мять, виноват сам. Сегодня всё открылось и залилось с первой попытки, что-то сам сделал не правильно, думаю что виноват антивирус, у меня их два: 360 Total security и Avast, первому запретил работу полностью а Авасту только на 10 мин, вот время его запрета истекло он и не разрешил запуск программы, но это лишь мое предположение. Главное что всё прекрасно работает. Ещё раз СПАСИБО!!!

AviaDed

Залилась v0.51b2

тигромух

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

Covax

Константин привет!

“В партии LDO стабилизаторов MIC5205, установленных на зеленом маяке, обнаружились бракованные 😦
MIC5205 это пятиногая микросхема, как на фото, с маркировкой LB33 или KB33. Она отвечает за понижение входного напряжения до уровня 3.3В.
Просьба проверить, что на вашем маяке на пине +3V присутствует ровно 3.3В. Если больше, не используйте маяк и напишите мне.”

Не могу понять, как проверить? Если я до этого подавал только 3.3V с одной банки, стоит ли проверять повышенным напряжением (страшно както…)?

тигромух

Ну можно же слегка побольше подать, например, с разряженной банки, и померить. До 3.6 можно вообще не задумываясь давать.
Даже 4 можно, но если есть возможность, лучше не рисковать.
Еще один из признаков: накоротко звонящиеся ножки 3 и 5.

Приветствую!
Приемник Orange.Вытащил hex-файл из Arduino-среды и прошил через ISP разъем программатором doper из AVR-студии. Все заработало, конфигуратор маяк обнаруживает и нормально конфигурит. Полевые испытания тоже прошли успешно.
Но осталось куча вопросов: как точно установить фузы?
Три ступени мощности это ограничения самого приемника или их можно увеличить? Может имеет смысл их передавать не тонами, а голосом - цифрами по-порядку? Пока GPS не подключил, но интересно, при поиске он будет передавать координаты уже после падения или последние не нулевые?
Хорошо бы пищалка включалась после, например, трех подряд приемов тонального сигнала т.е. ~ 9сек.

тигромух

Фюзы нормально устанавливаются при прошивке бутлоадера. Из арудины или из конфигуратора.
Три ступени - это для удобства. Можно сделать и 7, но как-то так повелось, что все делают три 😃
Меня бипы на голос не стоит, имхо. Во-первых, по тону легче определить силу сигнала, во-вторых меньше путаницы с координатами.
Насчет передачи координат: маяк не в курсе упал он уже или еще нет, поэтому будет передавать то, что получил от GPS. Если GPS жив, то текущие, если уже нет, то последние полученные. На эту тему я много написал в FAQе.
Алгоритм включения пищалки будет переделан в ближайших версиях. Следите за обновлениями 😃

yurik999

а где купить приемник оранж?в личку скиньте ссылку. Спасибо.

тигромух
yurik999;bt132439

а где купить приемник оранж?в личку скиньте ссылку. Спасибо.

На ХК: hobbyking.com/…/__27096__OrangeRx_Open_LRS_433MHz_…

AviaDed

Сегодня подключил маяк тигромуха на базе приёмника Orange к GPS Arkbird(а), подключал только общий провод и Тх GPS(а) к Rx маяка. Всё заработало, то есть маяк стал выдавать координаты голосом только вот переводчик некоторых цифирек надобен, это только у меня или ещё кто-то сталкивался с этим? Это главная проблема и вторая - при включении маяка на передачу начинает крутится движок и показания GPS сходят с ума, ну это быстрее всего из-за того, что приемник Rmilec, GPS и маяк были друг от друга в 10 см. Сделаю длинный кабель для маяка и уберу его подальше, потом и посмотрю на эту проблему. А вот что делать с произношением цифирек а то в поле некогда будет заниматься расшифровкой? yadi.sk/d/4dfkK-a-eaw4p

AviaDed

Забыл написать, реальные координаты на экране такие: 55.9089 23,2549.

AviaDed

Прошу прощения, похоже проблема в моих ушах и рации.

тигромух

В теме уже прочитал и ответил там 😃

тигромух

А вторая проблема, я думаю, заключается в банальном фейлсейфе. Излучение маяка попало близко к рабочей частоте рмилека и забило полезный сигнал РУ. Возможно, имеет смысл унести частоту маяка повыше.

Alex27111972

Константин спасибо за сабж. Собрал на дешевом модуле на si4432. Все завелось, все работает… прошивка 0.51. Но есть маленькая непонятка, у меня маяк отказывается калиброваться, гуя говорит не слышит тон. Хотя в боевом режиме даю тоновую посылку маяк адекватно включает ответку, координаты говорит (пока правда 000 я еще с гпсом не игрался), причем сколько раз не пробовал, не было ни одного случая когда б маяк на тон бы не ответил, а гуя на калибровку говорит нету тона … чет непонятно… в чем мой косяк? Рация Баофенг UV-5R. За ранее спасибо.

тигромух

Косяк, скорее всего не ваш, а si4432. Калибровка ищет поправки в диапазоне 170 - 230. Все, прошедшие через меня RFMки в этот диапазон попадают с запасом. А вот с китайскими модулями - хз. Скорее всего дело в этом.
Какую поправку вы поставили?

Alex27111972

Чтобы попасть в частоту 433100, поставил поправку 390, иначе при нуле, на рации методом тыка нашел сигнал на 433182, с поправкой 200 - 433060, и что еще вызвало сомнение поправка 100 нашел тоже на 433060.

тигромух

390 не бывает, т.к. поправка занимает один байт. То есть 390 = 134, на самом деле.
Я бы расширил диапазон калибровки, но из-за новых фич мне приходится увеличивать время калибровки. Если я еще и диапазон поиска увеличу, время калибровки станет совсем неприличным 😦
Но я подумаю.

Alex27111972

Имхо не стоит заморачиваться. Лучче новые фичи 😃 Я для себя нашел решение проблемы, вчера даже корректировка заработала… Когда ручками “перебирал” корректировку заметил, что значение поправки самое маленькое получилось на 443075 (поправка была 50), выставил 443075 и корректировка из гуи заработала… т.е. просто нуна немного поиграться с частотой и посмотреть на какой частоте меньше всего не совпадение с частотой рации на ту и встать…

SVK77

Приветствую всех, тоже имею в наличии модуль si4432, валяется без дела, с ним хотел бы попробовать собрать маячок. Как бы посмотреть на обратную сторону платы с Мегой без RFMки, надо подправить под свои элементы, не нашел нигде схемки.

тигромух

Схему можете посмотреть от OpenLRS приемника. Если откинуть гребенку на сервы, получится один-в один с маяком второй версии.

ССМ=

Константин, если RFMка не запаяна, через конфиг будет ли прошиваться атмега? Пока пишет ошибку.

тигромух
-ССМ-;bt134529

Константин, если RFMка не запаяна, через конфиг будет ли прошиваться атмега? Пока пишет ошибку.

Да будет прошиваться и будет делать вид что работает 😃
Прошивка из конфигуратора рассчитана на работу с optiboot (скорость порта 115200).

ССМ=
тигромух;bt134544

Да будет прошиваться и будет делать вид что работает 😃
Прошивка из конфигуратора рассчитана на работу с optiboot (скорость порта 115200).

Два дня бился, ни как. Поменял третью мегу , наконец то все ок. Через USBasp программировались, а через UART не хотели.
Сейчас тестю время работы на липо 180мАч через диод.

тигромух
-ССМ-;bt134588

Два дня бился, ни как. Поменял третью мегу , наконец то все ок. Через USBasp программировались, а через UART не хотели.
Сейчас тестю время работы на липо 180мАч через диод.

Подозреваю, что дело во фюзах и бутлоадере.
Если конфигуратор не шьет бут по Ctrl-B, то это, возможно, из-за какой-то запущеной программы, которая перехватывает этот хоткей. Можно либо все позакрывать, либо скачать архивчик с .bat-ником по ссылке из FAQ.

ССМ=
тигромух;bt134603

Подозреваю, что дело во фюзах и бутлоадере.
Если конфигуратор не шьет бут по Ctrl-B, то это, возможно, из-за какой-то запущеной программы, которая перехватывает этот хоткей. Можно либо все позакрывать, либо скачать архивчик с .bat-ником по ссылке из FAQ.

Прошивается только через bat-ник, по Ctrl-B вообще ни как. С фюзами все было ок, проверял. Как третью мегу поставил, сразу пошло как по маслу.

При работе маяка, увидел только два режима мощности (с помощью стрелочного напряжОметра), т.е. первый тон - мощный и следующие два - одинаково слабых.

тигромух
-ССМ-;bt134611

При работе маяка, увидел только два режима мощности (с помощью стрелочного напряжОметра), т.е. первый тон - мощный и следующие два - одинаково слабых.

Мощность на передачу RFMки задается в попугаях:

Я использую:
1 тон: 7 (111) это 20dBm (100мВт)
2 тон: 4 (100) это 11dBm ( 13мВт)
3 тон: 0 (000) это 1dBm ( 1.3мВт)

А вообще, у меня такое ощущение, что эти тоны совсем скоро будут не нужны.
Ждите релиза 😃

ССМ=
тигромух;bt134612

А вообще, у меня такое ощущение, что эти тоны совсем скоро будут не нужны.
Ждите релиза 😃

Голосом? “Первая зона”, “вторая зона” типа.😃 или холодно-холодно, тепло-тепло, горячо-горячо.😁

тигромух
-ССМ-;bt134614

Голосом? “Первая зона”, “вторая зона” типа.😃 или холодно-холодно, тепло-тепло, горячо-горячо.😁

Вообще я сделал выдачу уровня принимаемого сигнала от 0 до 99. И для меня все было стройно и логично. Уже несколько раз искал таким способом и мне очень понравилось.
Но вот вы меня сейчас сбили с толку. Может лучше выдавать типа “дистанцию” до маяка в попугаях? Т.е. наоборот: 0 - горячо, 99 - холодно? Блин, теперь думать буду…

czuryk

Мне кажется попугаи могут запутать, можно либо цифрами, либо как у loc8tor.com частотой пиканья…

X3_Shim

Я за попугаи. В каком виде (около маяка 0 или 99) не важно. Кстати Маяк нужно будет калибровать на мощность своей рации ?

korvin8

я за вариант попугаев/“процентов”:

  • 99 максимальный RSSI, максимально близко к маячку
  • 0 минимальный RSSI, максимально далеко от маячка
ССМ=
тигромух;bt134612

1 тон: 7 (111) это 20dBm (100мВт)
2 тон: 4 (100) это 11dBm ( 13мВт)
3 тон: 0 (000) это 1dBm ( 1.3мВт)

Вернусь к этому вопросу.

При работе маяка, увидел только два режима мощности (с помощью стрелочного напряжОметра), т.е. первый тон - мощный и следующие два - одинаково слабых.

Что бы исключить косяк РФМки, решил проверить на оранжевом приемнике, тоже самое вижу только два режима мощности. В тоже время на этом же приемнике, с прошивкой от Байчи, при работе маяка реально видно четыре уровня мощности (четыре тона) на стрелочном напряжОметре.
Кость проверь у себя если не трудно. Могу снять видео если надо.

тигромух
-ССМ-;bt134794

Кость проверь у себя если не трудно. Могу снять видео если надо.

Нужно мне взять приборчик, чтоб проверить. Пока просмотрел код, все выглядит совершенно нормально.
Единственная разница, что у меня три тона и мощности фиксированы, а у Байчи четыре и их мощность высчитывается формулой при старте в зависимости от R20.
Какое значение у этого регистра?

ССМ=

R20=7

ССМ=

Если сравнивать с байчи-маяком, то в этом маячке второй и третий тон передаются на средней мощности.

тигромух

С таким значением(R20=7), у Байчи будут мощности 7,5,3,0. Т.е. в мое значение (4) не попало.
Если поставить R20=6, то будет ряд 6,4,2,0. Можно проверить, может это волшебная 4ка виновата 😃
Сам думаю где бы взять достаточно чувствительный анализатор и проверить.

ССМ=

Вот по этому видео видно, что мощность на втором и третьем тоне одинаковая (средняя). В конце подключил маяк от Байчи, видны четыре режима мощности.

youtu.be/BLx2XqxJzhE

тигромух
-ССМ-;bt135013

Вот по этому видео видно, что мощность на втором и третьем тоне одинаковая (средняя). В конце подключил маяк от Байчи, видны четыре режима мощности.

Сложновато различить последние два бипа…
Я слепил по быстрому тест, который последовательно пищит на всех мощностях РФМки по две секунды.
Тут hex: drive.google.com/file/d/…/view?usp=sharing
Проверь, плз.

тигромух

Ролик про режим ближнего поиска. Первый блин комом, но вроде принцип должен быть ясен 😃

ЗЫ: Сергей, удалось попробовать спец-прошивочку?

тигромух
-ССМ-;bt135013

Вот по этому видео видно, что мощность на втором и третьем тоне одинаковая (средняя).

Я нашел этот глупый баг 😃
Фикс будет в 0.531

ССМ=

Блин че то у меня опять беда какая то с маяком, при подключении пишет ошибку - нет ответа от маяка.

Упс, по ходу плохой контакт, нажал на разъем, связь появилась. Буду тестировать ближний поиск.

top-aleksandr

Доброго дня при прошивке загрузчика выдает такую штуку. И просит нажать любую клавишу. После нажатия пишет ошибку прошивке загрузчика.
Помогите.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.03s

avrdude: Device signature = 0x1e950f
avrdude: erasing chip
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file “0x3F”
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3F:
avrdude: load data lock data from input file 0x3F:
avrdude: input file 0x3F contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying …
avrdude: 1 bytes of lock verified
avrdude: reading input file “0x05”
avrdude: writing efuse (1 bytes):

Writing | ################################################## | 100% 0.02s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0x05:
avrdude: load data efuse data from input file 0x05:
avrdude: input file 0x05 contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.02s

avrdude: verifying …
avrdude: 1 bytes of efuse verified
avrdude: reading input file “0xDE”
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xDE:
avrdude: load data hfuse data from input file 0xDE:
avrdude: input file 0xDE contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying …
avrdude: 1 bytes of hfuse verified
avrdude: reading input file “0xFF”
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.01s

avrdude: verifying …
avrdude: 1 bytes of lfuse verified

avrdude: safemode: Fuses OK

avrdude done. Thank you.

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude done. Thank you.

Для продолжения нажмите любую клавишу . . .