Прошиваем PPM-encoder. Загрузчик

Здесь описано как восстановить загрузчик на PPM-энкодере, выполненном на микросхеме Atmega32U2. Это необходимо, если не удается выполнить подключение и прошивку программой Flip.

Во всех других случаях, если прошивка PPM-энкодера заливается без проблем, то выполнять этот шаг не нужно.

 

 

 

Нам понадобится подключение к ISP разъему на плате. Питание подключать нет необходимости (берется с программатора).

board-big-front-u2-isp

Разъем ISP для Atmega32u2

isp6

Распиновка ISP

Есть несколько способов прошивки (по сути делается одно и тоже, только разными средствами):

  1. Прошивка с помощью программатора на базе FT232RL и программы Avrdude.
  2. Прошивка с помощью программатора USBasp и программы Avrdude.
  3. Прошивка с помощью Arduino. Об этом рассказано тут.
  4. Прошивка с помощью Atmel AVRISP mkII In-System Programmer и программы Atmel Studio 6. Об этом рассказано тут.

Рассмотрим 1, 2 способы более детально.

Внимание! Версии, сборки и конфиги Avrdude, представленные здесь, различаются, поэтому качаем архив под каждый программатор по своей ссылке.

1) Прошивка с помощью программатора на базе FT232RL и программы Avrdude.

Нам потребуется программатор, собранный по этой схеме:

ft232rl

Схема программатора на FT232RL

Либо воспользоваться купленным переходником. Каждый уважающий себя ардукоптеровод должен иметь в арсенале переходник USB-COM, желательно на интересной микросхеме FT232RL, объясню почему, данная микруха может выступать в роли программатора…. Да да… вы получите бонусом практически полноценный программатор для AVR контроллеров. Настоятельно рекомендую купить переходник, в котором выведенными все выводы FT232RL, и с возможностью переключения между 3.3 и 5 вольтами.

Например такой:

ft232rl-com

FTDI-адаптер

Существует прикол, что китайцы путают подписи выводов, или просто их не делают. Например был случай, что написано «RSD», а по даташиту «DSR». В этом случае прослеживаем по ножкам микросхемы.

Чтобы прошить мегу по ISP, нужно соединить:

11 ногу ft232RL с MISO
9 ногу ft232RL с SCK
6 ногу ft232RL с RST
10 ногу ft232RL с MOSI
А так же подать питание и землю от переходника.

Нам необходима программа Avrdude с настроенным на Atmega32u2 конфигом, библиотека для работы Avrdude и FT232 и файл прошивки загрузчика. Все есть тут (спасибо Алексею Козину).

  • Распаковываем архив в удобную папку, например в корень диска C.
  • Подключить программатор к ПК, проследить чтоб корректно встали драйвера (о чем красноречиво скажет появление в системе еще одного ком-порта), подключаем программатор к ISP разъему Atmega32u2 на плате APM.
  • Запускаем файл «boot32u2.bat» и наслаждаемся процессом. В конце видим сообщение о завершении процесса прошивки.

2) Прошивка с помощью программатора USBasp и программы Avrdude.

Чтобы прошить мегу по ISP, нужно соедить:

MISO программатора с MISO разъема ISP на контроллере.
SCK программатора с SCK разъема ISP на контроллере.
RST программатора с RST разъема ISP на контроллере.
MOSI программатора с MOSI разъема ISP на контроллере.
А так же подать питание и землю от переходника.

Нам необходима программа Avrdude с настроенным на Atmega32u2 конфигом, драйвера для программатора USBasp, и файл прошивки загрузчика. Все есть тут.

  • Распаковываем архив в удобную папку, например в корень диска C.
  • Подключаем программатор к ПК, по необходимости устанавливаем драйвер из архива, подключаем программатор к ISP разъему Atmega32u2 на плате APM.
  • Запускаем файл «boot32u2.bat» и наслаждаемся процессом. В конце видим сообщение о завершении процесса прошивки.

Можно воспользоваться оболочкой «SinaProg». Скачиваем отсюда. Распаковать в папку с распакованным архивом Avrdude. В программе необходимо выбрать микросхему Atmega32u2 и открыть файл прошивки из папки.

raefa, alex27111972 # apmcopter


Если вы нашли ошибку на странице, то нажмите Shift + Enter или нажмите здесь, чтобы уведомить нас.

39 комментариев (я)

  1. юсуп Ответить

    Спасибо за статью,является ли данный метод альтернативой прошивке через юсб апм и прогой флип?это способ кажется боллее надежным чем предыдущий.

    1. Фото аватараraefa Автор Ответить

      А в заголовке статьи что написано?
      «Это необходимо, если не удается выполнить подключение и прошивку программой Flip.»

  2. Andrey Ответить

    Спасибо Мужи !!!
    Восстановил загрузчик на Megatronick 0.2 Mega2560 для 3D принтера. После каратыша +5. На плате уже стаял чип FT232 и разъёмчик был приготовлен осталось только распаять JP и приканэктить к ISP разъему.

    1. Фото аватараraefa Автор Ответить

      О как! Статья помогла совершенно для другой темы!
      Прошу отписаться с деталями на форуме в разделе «Другие увлечения».

  3. Илья Ответить

    Заметки для гуманитариев вроде меня:
    Подсоединять выходы программатора можно чем угодно, хоть припоем 0.8
    Перемычка должна стоять в позиции 5V
    VCC — это и есть питание из фразы «А так же подать питание и землю от переходника». и GND к GND.
    Распаковывать архив нужно не «например», а точно в корень диска C, иначе батник не поедет.
    Логи читать обязательно — у меня, например, поначалу файл ругался на невозможность запустить программу и требовал проверить соединения. Провернул платки относительно друг друга, контакт и впрям появился, всё заработало

    Автору огромное спасибо!

  4. kjh Ответить

    Делаю по 1 способу, запускаю boot32u2.bat- он сообщает «для продолжения нажми любую клавишу» и закрывается. Что я не так делаю?

    1. Фото аватараraefa Автор Ответить

      Ну на данном этапе делаете все так, раз пишет такое. А какую ошибку пишет до этого? Скопируйте и покажите весь текст.

      1. kjh Ответить

        Опишу всю проблемму. На АРМ 2.8 после попытки обнулить eeprom через arduino перестал определяться в диспетчере устройств Atmega32U2 (до этого ее определял и даже перепрошивался)
        Попытался залить загрузчик – не помогло. Попытался прошить АРМ загрузчик (как http://apmcopter.ru/apm/apm-setup/proshivaem-kontroller-apm-zagruzchik.html вторым способом) – процесс пошел, выдал «safemode: fases OK» НО теперь потерялся Atmega2560 и горит только зеленый индикатор.

      2. kjh Ответить

        Прошил Atmega32U2 из другой сборки. теперь в диспетчере находит Mega2560, но не находит (после включения перемычек) Atmega32U2. Что можно еще сделать?

            1. Фото аватараraefa Автор Ответить

              В соответствующих статьях раздела HOW-TO есть ссылки на прошивки. Последние не надо — пусть будут лучше проверенные.

    1. Фото аватараraefa Автор Ответить

      С трудом, но можно. Надо подпаиваться к микросхеме на другие ноги, не на те, которые разведены.

  5. orlov Ответить

    Добрыц день!

    У меня точно такой же переходник на FT323RL, как на фотке (красный) и что-то я не совсем понял, когда посчитал ножки. На фотке, как и у меня от 11 ноги нет вывода, получается нужно прямо к ногам микросхемы провода припаевать? Смотрел вот по этой схеме

    1. orlov Ответить

      Прозвонил, все выводы есть, их просто не видно. И правда на плате написано RSD, а на схеме DSR))

  6. Павел Ответить

    после прошивки загрузчика перепрошиаки ррм все hex файлы показывают всё в порядке но как только отсоединяю усб то потом после подключения комп не видет плату арм. вообще. после повтора операций в нех файле вижу одни FF FF FF от началаи до конца. что это ? как сново всё подключить?? заранее спасибо

    1. Фото аватараraefa Автор Ответить

      После прошивки загрузчика плата должна определяться как atmega32u2, что с перемычкой JP2, что без нее. Как только залили прошивку ppm-encoder через программу flip, после этого без перемычки плата должна определяться как 2560 с COM портом. Если плата не видится ВООБЩЕ и комп не сигнализирует подключение устройства, то сдохла atmega32u2. Пробуйте опять соединить перемычку JP2 и так же подключиться через flip.

      1. Павел Ответить

        спасибо за ответ, но дальше дело не продвинулось.Комп видит плату как Арду.Мега2560 а М.Планер её видит но не конектит (тайм аут)!?!?.теперь пытался всё сново проделать с самого начала с загрузчикам для atmega32u2 через FT323RL, в чёрном окне выходит надпись .что устройство не подключено и диспечер устр. не меняет сообщения об изменении СОМ порта.из за этого Флип не полкдючает усб для прошивки энкодера думаю тоже что сдохла atmega32u2.на плате горит постояно зелёная лед и мегает красная справо. если есть идеи то буду презнателен.
        очень надо запустить коптер но разочарован сложными настройками процессора.

        1. Фото аватараraefa Автор Ответить

          Похоже вы «путаетесь в показаниях». Почитайте тему http://forum.apmcopter.ru/threads/remont-apm-zhelezo.578/ и точно определитесь какой у вас вариант поведения.
          Если сейчас плата видится как 2560, то скорее всего загрузчик и прошивка на 32u2 живы. Ведь именно 32u2 отвечает USB, что же сейчас загружается. Если тыкаете перемычку JP2 и ничего не меняется при замыкании Reset на ISP 32u2, то надо проверить, звонятся ли все ноги от разъема до 32u2. Если все ок, то в этом случае надо добиваться заливки загрузчика и прошивки в 32u2. Дальше проверять мультиплексор. http://apmcopter.ru/apm/apm-help/bug/sgorel-multipleksor-ts5a23157.html Если с ним и без него планер так и не заливает летную прошивку, значит проблема в нем. Или менять его или паять напрямую, но тогда часть функционала пропадет.

          А настройки не сложны — видимо вам брак попался или что-то не то делаете.

          Далее продолжим беседу тут. http://forum.apmcopter.ru/forums/apm-gcs/ Почитайте темы, найдите более подходящую и оформите вопрос по правилам раздела.

        2. Павел Ответить

          до попыток загрузить прошивки я припоял ножки на ISP для удобства подключения FT323RL . может эта пайка убила atmega32u2.
          у меня 2 апм платы и обе не конектятся в МП хотя сом порт показывает. Был ещё грешок , я подключал коптер через пауер модуль и не отключал от усб ,перемычка1 вставлена была(по не знвнию) настраивал при этом аппу, ???

          1. Павел Ответить

            я уже заказал ещё одну апм. вот теперь думаю как бы не угробить и эту. к слову я электрик и поять вроде умею.
            буду разбираться,
            за статьи про апм и поддержку новичков спасибо!

            1. Павел Ответить

              но я всё равно буду пытаться запустить эти 2 е апм платы. если есть идеи ,то жду с нетерпением

          2. Фото аватараraefa Автор Ответить

            может эта пайка убила atmega32u2.

            Вряд ли, если чего не закоротили.

            я подключал коптер через пауер модуль и не отключал от усб

            Могли сгореть предохранители, но похоже у вас они целые. Но и на прошивку оно никак не влияет.

              1. Фото аватараraefa Автор Ответить

                Далее продолжим беседу тут. http://forum.apmcopter.ru/forums/apm-gcs/ Почитайте темы, найдите более подходящую и оформите вопрос по правилам раздела.

                Регистрируйтесь на форуме и показывайте скриншоты, видео и т.д. Если не хотите возиться, то присылайте — починю.

  7. Mig29y Ответить

    Добрый день прошивал энкодер на APM v2.8.0 , поставил перемычку, и замкнул контакты, как в инструкции. В диспетчере устройств с восклицательным знаком Arduino Mega 2560 DFU и естественно ни какие драйверы не ставятся. Почитал форумы и понял(не знаю правильно или нет), что нужно перепрошить бутлоадеры на 2560 и 32u2. Есть в хозяйства USBasp, в АрдуиноИДЕ прошил бутлоадер для 2560, mega 32u2 по методу 2 с этой страницы и через батничек и через оболочку. В итоге, ничего не изменилость, в диспетчере устройств Arduino Mega 2560 DFU и горит одиг светодиод power около разъема GPS…. Порекомендуйте, куда дальше двигаться?

    Забыл добавить, что до этого прошёл весь путь настройки по APM и решил все сделать еще раз, так сказать «начисто». На свою голову прочёл, что еепром лучше после каждой итерации чистить и почистил Ардуино ИДЕ по инструкции, заменив количество итераций в скетча, на строго указанное в инструкции. На форуме не могу задать вопрос, так как учётная запись не активирована ещё администрацией, а летать охота!))

    1. Фото аватараraefa Автор Ответить

      с восклицательным знаком Arduino Mega 2560 DFU

      Тут сказано, что:
      Необходимо установить драйвер, который находится в папке с установленным Flip.
      Так же вот еще тема, которая поможет разобраться с «состояниями» платы.

      На форуме не могу задать вопрос

      Вашу УЗ активировал.

      1. Mig29y Ответить

        raefa, большое спасибо! Разобрался почему не ставились драйверы для Arduino Mega 2560 DFU из папки установленного Flip. На видео Юлиана, он скачивает с сайта http://www.atmel.com/tools/FLIP.aspx , архив FLIP 2.4.6 for Windows, что я и сделал на домашнем компе, когда появилась проблема после прошивки скетчем для стирания еепром под Ардуино ИДЕ(после благополучного исхода попробовал еще раз и пришлось заново вливать прошивку в 2560!!!!! Делайте выводы.). ДЛЯ ПЛАТЫ v2.8ю0 (во всяком случае моей) ЭТОТ АРХИВ НЕ ПОДХОДИТ!!!!!! На работе я скачал «по невнимательности» FLIP 3.4.7 for Windows (Java Runtime Environement included) и в первый раз у меня все получилось! Поставил дома FLIP 3.4.7 for Windows (Java Runtime Environement included) и драйверы на Arduino Mega 2560 DFU благополучно стали и далее все по накатанной пошло, а то уже думал, что чипы сжег! Надеюсь кому-то мой опыт поможет сэкономить время и нервы.
        Теперь планирую после первого полета, собраться и описать в отдельной теме на форуме все «грабли», на которые мне пришлось наступить и которые нив одной инструкции очень подробной не описаны ибо не гуманно терять столько времени, сколько потерял я на такие досадные мелочи!

        1. Фото аватараraefa Автор Ответить

          FLIP 2.4.6 for Windows

          Не знаю, зачем такая древность. 😀

          собраться и описать в отдельной теме на форуме все «грабли», на которые мне пришлось наступить

          Ждем, нам всегда приятно читать о положительном опыте! 😉

          которые нив одной инструкции очень подробной не описаны

          Это мы еще посмотрим! 😉 Наверняка просто не нашли вовремя.

  8. Алексей Ответить

    Добрый день!

    В первом способе необходимо подать напряжение питания на плату с переходника. Какое напряжение (3.3 или 5Вольт) необходимо подать на плату и к каким контактам землю и + напряжение в первом способе?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *