|
Прошивка Крот Смарт через Блютуз - Форум
Прошивка Крот Смарт через Блютуз
| |
alexbor2015 | Дата: Четверг, 07.10.2021, 16:41 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| Приветствую всех обитателей форума, особенно владельцев МД Крот Смарт. У нас сегодня радостная новость - наконец-то я разобрался с бутлоадером для Смарта. Это будет особенно полезно тем, у кого прибор в датчике, чтобы не разбирать его для прошивки. Но думаю, что и остальным также пригодится. Сразу предупреждаю - за стирание EEPROM и утерю ключа я ответственности не несу! Все делаете на свой страх и риск. Поэтому во избежание этих проблем перед любыми манипуляциями рекомендую считать EEPROM с микроконтроллера.
Итак, приступим. Для загрузки прошивки посредством Блютуз нам понадобятся: 1. Адаптер USB-UART (далее - адаптер). В моем случае он на микросхеме FT232RL, но думаю, что подойдет любой. 2. Блютуз-модуль HC-05 (далее - модуль), либо любой другой, который может работать в режиме "Master". В принципе это все. Хотя нет... Перед этим конечно же нужен программатор для "заливки" бутлоадера в микроконтроллер.
Теперь по шагам: 1. Так как модуль предназначен для работы с уровнями сигналов 3.3V, а на выходе адаптера у нас уровень 5V, то нужно на входе "RX" модуля установить резистивный делитель напряжения примерно "1 к 2" для согласования уровней на выходе TX адаптера и на входе RX модуля, например резисторы 4.7к и 10к (я впаял 5.6к и 12к). Подключить модуль к адаптеру согласно схемы.
Сообщение отредактировал alexbor2015 - Пятница, 08.10.2021, 09:59 |
|
| |
alexbor2015 | Дата: Четверг, 07.10.2021, 16:42 | Сообщение # 2 |
Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| 2. Подключить адаптер к компьютеру и установить драйверы. В моей случае это адаптер на чипе FTDI FT232RL, в вашем случае может быть другой адаптер, например PL2303 или на китайском чипе CH340. Обычно Windows 7 или 10 устанавливает автоматически эти драйверы. В итоге у нас появится виртуальный COM-порт. Нужно зайти в диспетчер устройств и посмотреть номер этого порта. В моем случае это COM6. Далее запускаем программу "Hype!Terminal", жмем "Set Up" -> "Port Configuration", выбираем наш порт (COM6) и жмем "Connect", закрываем это окошко и попадаем в главное окно программы. Для выставления режима "Мастер" на модуле вводим команду "AT+ROLE=1" и держа нажатой кнопку на модуле посылаем команду в модуль - кнопка "Send" в программе. Если все хорошо, то справа приходит ответ "ОК". Также можно проверить установленный режим командой "AT+ROLE?", должен появится ответ "+ROLE:1" и "ОК". Больше ничего настраивать не нужно. После этого при включении Крота модуль автоматически к нему подключится.
3. Прошиваем бутлоадер в микроконтроллер. Я прошивал программатором AVRISP MKII с помощью программы "Microchip Studio", естественно установив во фьюзах опцию загрузки с бут-области. 4. Необходимо вывести 2 контакта наружу Крота - вывод D0 (пин 20 микроконтроллера) и "землю". Я это сделал с помощью 2 штырьков разъема PLS (в простанародии "гребенка"), к которым магнитится неодимовый магнит, замыкающий эти контакты. При замыкании контактов загружается бутлоадер, без замыкания - основная прошивка.
Сообщение отредактировал alexbor2015 - Пятница, 08.10.2021, 11:10 |
|
| |
alexbor2015 | Дата: Четверг, 07.10.2021, 16:43 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| 5. Теперь подключаем магнит к этим двум контактам, потом прислоняем другой магнит к геркону включения Крота и оставляем его в таком положении, чтобы геркон был постоянно замкнут. При этом должен загореться и постоянно светиться красный светодиод на Кроте, пока прислонен магнит к геркону. Это будет обозначать, что микроконтроллер находится в бутлоадере. Также в это время модуль должен начать мигать светодиодом периодически по 2 коротких вспышки с длинными паузами между ними, что будет значить успешное подключение к Кроту. 6. Запускаем программу "AvrOspII". В вкладке "Configure" выставляем наш виртуальный COM-порт, при который писалось выше, скорость - 9600, и ставим галочку напротив "AVR911". Переходим во вкладку "Program" и жмем кнопку "Auto Detect". При успешном подключении итогом будет то, что программа определит тип микроконтроллера Крота и сама выставит там "ATxmega32A4". Далее для проверки работоспособности всего, что вы натворили по моему мануалу, выбираем файл прошивки, которая залита в ваш Крот (кнопка "Browse") и жмем на кнопку "Verify". Таким образом программа считает прошивку с микроконтроллера и сверит ее с прошивкой из файла. Если все пройдет успешно, то появится надпись "Equal!".
7. После всего этого можно смело выбирать файл необходимой прошивки и пробовать прошивать Крот по воздуху. Для этого в программе существует кнопка "Program". В прикрепленном архиве файл бутлоадера и необходимые программы. Всем спасибо, все свободны.
Сообщение отредактировал alexbor2015 - Четверг, 07.10.2021, 16:51 |
|
| |
sparkingsparking | Дата: Четверг, 07.10.2021, 17:38 | Сообщение # 4 |
Генералиссимус
Группа: Пользователи
Сообщений: 1382
Статус: Offline
| Следующим шагом будет обновление смарта через инет самостоятельно Заходим в приложение, нажимаем кнопку обновить )))
Сообщение отредактировал sparkingsparking - Четверг, 07.10.2021, 17:39 |
|
| |
Andrew | Дата: Четверг, 07.10.2021, 20:30 | Сообщение # 5 |
Генералиссимус
Группа: Администраторы
Сообщений: 7540
Статус: Offline
| alexbor2015, Спасибо за проделанную работу. Попробую в ближайшее время!
|
|
| |
--Zenit-- | Дата: Четверг, 07.10.2021, 21:29 | Сообщение # 6 |
Генералиссимус
Группа: Пользователи
Сообщений: 1562
Статус: Offline
| Цитата Andrew ( ) alexbor2015, Спасибо за проделанную работу. Попробую в ближайшее время! Еще бы придумать как это всё сделать без замыкания контактов через приложение на смартфоне.
|
|
| |
Andrew | Дата: Пятница, 08.10.2021, 09:06 | Сообщение # 7 |
Генералиссимус
Группа: Администраторы
Сообщений: 7540
Статус: Offline
| Цитата --Zenit-- ( ) Еще бы придумать как это всё сделать без замыкания контактов Поддерживаю!
|
|
| |
alexbor2015 | Дата: Пятница, 08.10.2021, 09:45 | Сообщение # 8 |
Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| Самое главное, что начало уже положено. Есть еще один загрузчик, более продвинутый, в котором возможна прошивка прямиком из выполняемой программы, если я правильно понял (раздел "4 XBoot API" из описания). Я его также пытался настроить, но из-за того, что avrdude не захотел с ним работать, я его забросил. Вот он: https://u.to/hfOnGw https://u.to/K-OnGw Андрей, если вы сможете с ним разобраться, то думаю, что можно будет программировать Крота сразу из программы для Андроида без всяких контактов и т.п. Кстати, я только что проверил - программа подключается к этому загрузчику, инструкцию по которому я выложил. И после приветственного "Привет, камрад" зависает с черным экраном. Думаю, что на данный момент также можно сделать возможность прошивки из приложения, ну только что с замыканием контактов. Надо добавить в приложение возможность прошивки с помощью протокола AVR911. Это как я понимаю, хотя возможно и не прав. Опыта у меня еще очень мало в этом.
Сообщение отредактировал alexbor2015 - Пятница, 08.10.2021, 09:48 |
|
| |
alexbor2015 | Дата: Пятница, 08.10.2021, 20:08 | Сообщение # 9 |
Рядовой
Группа: Пользователи
Сообщений: 5
Статус: Offline
| Так происходит процесс прошивки и ее окончание.
|
|
| |
Andrew | Дата: Воскресенье, 17.10.2021, 10:05 | Сообщение # 10 |
Генералиссимус
Группа: Администраторы
Сообщений: 7540
Статус: Offline
| Хорошая статья по теме http://easyelectronics.ru/avr-uch....ra.html Начинать прошивать при условии если 33 нога в единице или по определенному байту (байтам) а интерфейсе УАРТ.
|
|
| |
|
|