Всем привет, нид хэлп) Крч есть приемник лоры код написан на ардуино, на CMSIS не удалось завести USB по итогу. Данные передаются по USB на сервер который уже передает данные в сеть. суть проблемы такова. Передатчик работает как часы стабильно неделю без перерыва отправляет данные на приемник. А приемник спустя 1-4 часа работы зависает намертво, перезагрузка программная через каждые 10 мин результата не дала... Казалось бы причин на подобные зависания нету никаких, там просто лора в режиме приемника и работа с USB, Передатчик в свою очередь имеет на борту акселерометр и кучу вычислений, плюс работает на частоте в 4МГц но без USB. Методом исключения пришел к тому что проблема именно в USB. Времени переделывать плату нету, переписать на CMSIS не выйдет ибо USB... CubeMX давно стер. Вопрос к знатокам, особенно ардуино на stm32 что это может быть и как это можно по быстрому пофиксить?
Комментарии: 46
Argentina
Может в железке приемника дело?
Doktor
ТО и СТО, говорит, что таки можно потому что работает как часы?
Lucifer
прикол в том что приемник и передатчик разведены аналогично, отличие в передатчике в том что там добавлен акселерометр и все по сути я грешу именно на юсб в ардуино на стм32
Argentina
А можете фото скинуть? Приемника.
Lucifer
я уже дома, завтра смогу скинуть ну или щя в телефоне посмотрю
Doktor
а еще лучше со схемами приемника и передатчика
Lucifer
вот тут передатчик
Argentina
А антенна где?
Lucifer
тут чисто настройка потребления, отключал ненужную переферию занижал частоту тактирования и тп о
Doktor
да с антенной каждый сможет! Попробуй без нее;)
Lucifer
схема до одури простая, в целом рабочая там простой dc-dc мк и юсб
Argentina
Да не, ну просто симптом час работает..
Lucifer
я думаю на юарт передачу данных переводить, и послностью на Си прошивку
Doktor
мне интересно, если на этом чуде дергнуть антенну при питании - оно сдохнуть может? Или запустить без антенны вообще...
Lucifer
ничего не произойдет упадет радиус действия я думаю на юарт передачу данных переводить, и полностью на Си прошивку. Ибо говорю грешу на сам юсб в ардуино. Ардуино в принципе баганая платформа достаточно... вопрос только как можно решить костылями сейчас
Doktor
чего там багованого? Нормально годами работает и моск не ипет;)
Argentina
Вам сейчас неизвестно юзб это или приемник, не так ли?
Lucifer
кроме юсб ничего больше не может потому что схемы у приемника и передатчика аналогичны, код инициализации лоры то-же
Argentina
А коллбэк эта либа умеет? Или в лора так нельзя?
Lucifer
может быть микроконтроллер как-то повредил, но мало вероятно, перепаять могу в рамках эксперимента в целом можно, но там проблема точно не в лоре
Argentina
Не имел дел с лора, если честно
Lucifer
я тож в первые, прикольная штука)
Argentina
В любом случае на любой транспорт можно навесить проверку Слона нужно есть по частям
Doktor
а если эхо попробовать?
Lucifer
там можно возвращать значения рабочей частоты и тп, но если бы были проблемы в лоре то такие же проблемы были бы и на передатчике
Argentina
Да не, просто приемник мож чонить хавает внезапно, и его перекрывает.
Doktor
я тоже. Но чет мне кажется, что не в юсб вот прям;) Там же банальная эмуляция юарт попробуй тупо эхо сделать, чтобы проверить а вообще оно правильно работает
Argentina
Или мож по питанию слабость
Lucifer
запускал два часа назад пока еще работает.
Doktor
показания темпы мне прям зашли ты где там 0 Кельвина достал?
Lucifer
нет) на STM32 USB это USB, причем он не только в режиме VCP работать но и в любом другом хоть MassStorage смотря как сконфигурируешь Отключил термистор
Doktor
зачем? мож оно перегревается и вырубается;) Верни взад
Lucifer
а вот это кстати очень может быть Оо он просто мерит температуру окружающей среды и все
Doktor
не кристалла? у тя же лбп - должно хватать;)
Lucifer
приемник сейчас питается от юсб нет, температура кристалла не превышает 25 градусов
Doktor
и что? он 10А жрет? юсб 2.0 может в 0,5А
Lucifer
прикол в том что на ардуино конфигурировать юсб порт либо нельзя либо хз как, я знаю как его там использовать только в режиме VCP а как там на низком уровне работает одним разработчикам стмдуино изветно лора в режиме приема запроста может жрать столько
Doktor
жесть! ну запитай от лбп и проверь
Lucifer
можно попробовать внешнее питание повесить тем более оно предусмотрено, не распаивал за ненадобностью ну уже завтра посмотрю) Спасибо за наводку) сама лора в принципе много жрет, по этому там передают короткие пакеты, у нее по даташиту вроде как потребление толи до 0,7 толи до 0,8А
Doktor
недостаток питания, имхо, сразу же багал, а не через 4 часа;) но проверить таки не помешает