Всем привет, нид хэлп) Крч есть приемник лоры код написан на ардуино, на CMSIS не удалось завести USB по итогу. Данные передаются по USB на сервер который уже передает данные в сеть. суть проблемы такова. Передатчик работает как часы стабильно неделю без перерыва отправляет данные на приемник. А приемник спустя 1-4 часа работы зависает намертво, перезагрузка программная через каждые 10 мин результата не дала... Казалось бы причин на подобные зависания нету никаких, там просто лора в режиме приемника и работа с USB, Передатчик в свою очередь имеет на борту акселерометр и кучу вычислений, плюс работает на частоте в 4МГц но без USB. Методом исключения пришел к тому что проблема именно в USB. Времени переделывать плату нету, переписать на CMSIS не выйдет ибо USB... CubeMX давно стер. Вопрос к знатокам, особенно ардуино на stm32 что это может быть и как это можно по быстрому пофиксить?

Комментарии: 46

  1. 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 часа;) но проверить таки не помешает

Не нашли ответ?

Вам также может быть интересно