Конструктор Bootloader`а для Arduino

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

У меня вот так

все мк 8Мгц... отлично работает уже года полтора...

axill
Offline
Зарегистрирован: 05.09.2011

_EndWar_ Красивая картинка) присоединяйся к mysensors.org

Sirocco
Offline
Зарегистрирован: 28.09.2013

Вот процесс https://dl.dropboxusercontent.com/u/103275625/VIDEO0103.mp4 адаптер тоже запечатлён.

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

_EndWar_ пишет:
Так через arduinoISP попробуй

axill
Offline
Зарегистрирован: 05.09.2011

Ах сорри) англицкий никак? Пока есть только такой вариант

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

Sirocco
Offline
Зарегистрирован: 28.09.2013

_EndWar_ пишет:

_EndWar_ пишет:
Так через arduinoISP попробуй

А как? Указать ком порт ардуины, указать "arduino as ISP" и залить скетч кнопкой "загрузить"? предварительно залив в ардуино-программатор скетч ArduioISP. Если так - то не прокатило - аналогичная ошибка.

Ещё вопрос - если через ардуино IDE шить программатором USBasp, то ардуино IDE просит указать коп порт. Какой ком указывать, если USBasp не определяется в системе как ком порт?

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Sirocco пишет:

_EndWar_ пишет:

_EndWar_ пишет:
Так через arduinoISP попробуй

А как? Указать ком порт ардуины, указать "arduino as ISP" и залить скетч кнопкой "загрузить"? предварительно залив в ардуино-программатор скетч ArduioISP. Если так - то не прокатило - аналогичная ошибка.

Ещё вопрос - если через ардуино IDE шить программатором USBasp, то ардуино IDE просит указать коп порт. Какой ком указывать, если USBasp не определяется в системе как ком порт?

Указать ком порт ардуины, указать "arduino as ISP" и залить скетч кнопкой - меню файл "загрузить с помощью программатора". предварительно залив в ардуино-программатор скетч ArduioISP.

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

axill пишет:

Ах сорри) англицкий никак? Пока есть только такой вариант

я изучал французский... английский мне, пардон, не интересен...

 

Sirocco
Offline
Зарегистрирован: 28.09.2013

_EndWar_ пишет:

Указать ком порт ардуины, указать "arduino as ISP" и залить скетч кнопкой - меню файл "загрузить с помощью программатора". предварительно залив в ардуино-программатор скетч ArduioISP.

Вон оно чё... Не так я делал. Через программатор скетчи заливаются и работают. А вот через UART попрежнему нет.

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Вот что и требовалось доказать...

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Sirocco пишет:

_EndWar_ пишет:

Указать ком порт ардуины, указать "arduino as ISP" и залить скетч кнопкой - меню файл "загрузить с помощью программатора". предварительно залив в ардуино-программатор скетч ArduioISP.

Вон оно чё... Не так я делал. Через программатор скетчи заливаются и работают. А вот через UART попрежнему нет.

так же и с USBasp... выбираем соответствующий программатор и... загрузить с помощью

Sirocco
Offline
Зарегистрирован: 28.09.2013

_EndWar_ пишет:

так же и с USBasp... выбираем соответствующий программатор и... загрузить с помощью

Да. Уже пробовал. Работает. Только вот не заливаются скетчи через RxTx. И это проблема.

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

а теперь я открою страшную тайну... m328p изначально с завода сконфигурирован под работу от внутреннего резонатора на 8Мгц... следовательно для домохозяев ни чего делать не надо, надо просто подключить четыре провода от ArduinoISP  написать скеч и... загрузить с помощью... (предворительно в ардуино загрузить ArduinoISP, выбрать соответствующий программатор в GUI, выбрать целевую плату ATmega328 on a breadboard (8 MHz internal clock)...) На самом деле бутлоадер нужен в одной отладочной плате т.к. для отладки проверки и изменения программы требуется многократно её перезагружать для упрощения этого многократно повторяющегося процесса и придуман загрузчик (бутлоадер)... а когда программа обкатана и отстроена подключаем программатор к mk и загрузить с помощью...

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Sirocco пишет:

_EndWar_ пишет:

так же и с USBasp... выбираем соответствующий программатор и... загрузить с помощью

Да. Уже пробовал. Работает. Только вот не заливаются скетчи через RxTx. И это проблема.

подозреваю лажа в dtr...

Sirocco
Offline
Зарегистрирован: 28.09.2013

_EndWar_ пишет:

 а когда программа обкатана и отстроена подключаем программатор к mk и загрузить с помощью...

Дык правильно оно, конечно. Только не бывает так. У меня поначалу только DS18B20 висели на дуине и в сеть кидали значения. Через пол года решил DTH22 добавить, пришлось проводков допаять, и скетч перепролить. Вот недавно на митинском на глаза попался BMP180, опять доработка... Правда пришлось выкинуть старую атмегу, я был уверен, что больше мне от неё ничё ненадо будет, и залил всё термоклеем. Вот собрал все датчики, всё отображается, в БД пишется. Вроде счастье устоялось. Но нет. В доме появился увлажнитель воздуха. Пришлось выводить сигнальный проводок от микрухи, на включение увлажнителя.

Что хочу сказать этим... То, что доработки были и будут. И под это уже закладываю максимум ресурсов, сразу распаиваю все провода, даже если использую только один датчик, сразу стараюсь предусмотреть максимально.

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

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

подтягиваем reset mk к плюсу через 10кОм туда же минус через кнопку... TX к RX, RX к TX (в мк должен быть загружен бутлоадер) выбираем blink жмём кнопку GUI  загрузить, в это время должна быть нажата кнопка на мк... ждём... проходит компиляция отпускаем...

Sirocco
Offline
Зарегистрирован: 28.09.2013

И ещё. Когда лью бут через ардуино ide, а потом делаю верификацию в avrdude-GUI, то верификация не проходит:

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
             0xff != 0x0c
avrdude.exe: verification error; content mismatch

avrdude.exe done.  Thank you.

Если заливаю тот же бут через avrdude-GUI, то верификация проходит успешно. Но в обоих случаях скетчи льются через программатор и работают, а по RxTx нет.

 

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Sirocco пишет:

_EndWar_ пишет:

 а когда программа обкатана и отстроена подключаем программатор к mk и загрузить с помощью...

Дык правильно оно, конечно. Только не бывает так. У меня поначалу только DS18B20 висели на дуине и в сеть кидали значения. Через пол года решил DTH22 добавить, пришлось проводков допаять, и скетч перепролить. Вот недавно на митинском на глаза попался BMP180, опять доработка... Правда пришлось выкинуть старую атмегу, я был уверен, что больше мне от неё ничё ненадо будет, и залил всё термоклеем. Вот собрал все датчики, всё отображается, в БД пишется. Вроде счастье устоялось. Но нет. В доме появился увлажнитель воздуха. Пришлось выводить сигнальный проводок от микрухи, на включение увлажнителя.

Что хочу сказать этим... То, что доработки были и будут. И под это уже закладываю максимум ресурсов, сразу распаиваю все провода, даже если использую только один датчик, сразу стараюсь предусмотреть максимально.

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

для этого и придуман ISP - внутрисхемный программатор... отдельно на плате выводятся четыре контакта > mosi, miso, sck, reset... для не частой, но возможной модернизации внутри собранной схемы...

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

_EndWar_ пишет:

подтягиваем reset mk к плюсу через 10кОм туда же минус через кнопку (сброс) ... TX к RX, RX к TX (в мк должен быть загружен бутлоадер) выбираем blink жмём кнопку IDE  загрузить, в это время должна быть нажата кнопка (сброс) на мк... ждём... проходит компиляция отпускаем...

 и вообще reset к плюсу через 10-35кОм и кнопка сброса желательны всегда...

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Sirocco пишет:

И ещё. Когда лью бут через ардуино ide, а потом делаю верификацию в avrdude-GUI, то верификация не проходит:

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
             0xff != 0x0c
avrdude.exe: verification error; content mismatch

avrdude.exe done.  Thank you.

Если заливаю тот же бут через avrdude-GUI, то верификация проходит успешно.

 

Нечистая сила... ))) думаю при желании можно найти объяснение... возможно просто разные версии avrdude используют эти две программы...

axill
Offline
Зарегистрирован: 05.09.2011

Для автоматической заливки кнопка сброса не нужна. Ресет надо подтянуть к плюсу и через конденсатор 0.1мкф подключить к выводу DTR адаптера UART-USB

Для наглядности можно посмотреть схему любой ардуины

это было сделано?

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

на фото что то есть вроде...

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

мега хоть на которой экспериментируешь не в одном экземпляре?

редко, но попадаются чипы которые по uart через бутлоадер не программируются, а по isp пожалуйста

последний раз 1 из 10 был такой. в остальном чип вроде вроде обычный был. и ничем не выделялся

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Это вообще из области фантастики... Такая вероятность ровна арифмитической погрешности... В современной радиоэлектронной промышленности брак составляет 0.01-0.03%

axill
Offline
Зарегистрирован: 05.09.2011

Мы скоро договоримся здесь до того, что не любое электричество в розетке для uart подходит)

уже пора снимать видео в деталях от и до, чтобы действовать делуктивным методом в духе лучшего сыщика. Косяк в действиях, какая то мелочь упускается

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Ну бутлоадеры то уже заработали... и ни какие не косячные оказались...

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

_EndWar_ пишет:
Это вообще из области фантастики... Такая вероятность ровна арифмитической погрешности... В современной радиоэлектронной промышленности брак составляет 0.01-0.03%

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

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

NE_XT
NE_XT аватар
Offline
Зарегистрирован: 22.05.2012

jeka_tm пишет:

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

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

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

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

NE_XT пишет:

jeka_tm пишет:

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

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

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

ну вот. не у меня одного такой чип попался

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

Волшебствоооо...

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

уже почти статистика

NE_XT
NE_XT аватар
Offline
Зарегистрирован: 22.05.2012

_EndWar_ пишет:
Волшебствоооо...

)))) Скорее отсутствие должного контроля ОТК на выходе   ;)

Было бы неплохо создать базу с дампами всех известных чипов, ботлоадер и блинк например, что бы сразу после прошивки видеть работу чипа. Дамп плюс батник для прошивки  через Avrdude , многим новичкам и не только  помогло бы.

_EndWar_
_EndWar_ аватар
Offline
Зарегистрирован: 05.08.2013

На выходе рук из туловища..?!

NE_XT
NE_XT аватар
Offline
Зарегистрирован: 22.05.2012

_EndWar_ пишет:
На выходе рук из туловища..?!

В исключительных случаях , у некоторых выход является входом :)

у них руки не то что из жопы растут, у них руки в жопу растут (с)

сорри за оффтоп.

axill
Offline
Зарегистрирован: 05.09.2011

Ну наверно возможно если ты ему как-то хитро ноги подпалил. Заводской брак исключен практически

NE_XT
NE_XT аватар
Offline
Зарегистрирован: 22.05.2012

axill пишет:

Ну наверно возможно если ты ему как-то хитро ноги подпалил. Заводской брак исключен практически

Я может феном перегрел, не спорю, пасты не расчитал немного пришлось греть и стучать об стол , может сотрясенние сделал ;)

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

MaksMS, сейчас делал из меги88 ардуину, конструктор мне предложил фузами сделать бут на 256 байт. Переставил галочку с bootsz0 на bootsz1, стало как нужно.

MaksMS
Offline
Зарегистрирован: 11.03.2013

Ок, проверю по возможности это..

axill
Offline
Зарегистрирован: 05.09.2011

MaksMS твой генератор для NRF24LE01 заинтересовал здесь http://forum.mysensors.org/topic/750/nrf24le1-full-controller-to-control...

MaksMS
Offline
Зарегистрирован: 11.03.2013

Да, я видел, что кто-то там написал ссылку, но похоже заинтересовало только автора топика :)

axill
Offline
Зарегистрирован: 05.09.2011

если сделать на базе LE1 полууниверсальный датчик для проекта mysensors заинтересует многих)

есть инетерс поучаствовать? можно организовать тестовую партию устройств и посмотреть как продается.

Инетерс так же был к прошивке для ESP8266

MaksMS
Offline
Зарегистрирован: 11.03.2013

Там ссылку на справочную информацию по ле1, а не на конструктор.

Протокол mysensors я не изучал и не знаю что и как там..

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

Если есть вопросы , то можно написать мне( контакты на моем сайте имеются), а не офтопить тут..

axill
Offline
Зарегистрирован: 05.09.2011

Ок, напишу

osetroff
Offline
Зарегистрирован: 27.08.2014

Пользуюсь конструктором для pro mini 16Mhz, работает.

Подскажите, не могли бы вы добавить в свой bootloader возможность считывать/шить eeprom?

Вроде здесь это обсуждали.

Спасибо.

MaksMS
Offline
Зарегистрирован: 11.03.2013

Что-то я не понял зачем это ? я как понял это просто другая/новая версия загрузчика

osetroff
Offline
Зарегистрирован: 27.08.2014

MaksMS пишет:

Что-то я не понял зачем это ?

Это для более эффективной отладки.

Пишу сетку из arduino с NRF24L, адреса сети и подсети, а также параметры в eeprom.

Можно, конечно, каждый раз перетыкать arduino из разъема для программирования через optiboot в разъем ISP, чтобы поменять значения eeprom и обратно. Жуть.

Можно оставить arduino в ISP, но тогда конфликт пинов, т.к. и NRF и ISP висят там же. Тогда нужно навешивать на готовой плате резисторы к этим пинам. Криво.

А можно в optiboot накатить diff, собрать его, чтобы он поддерживал запись и чтение из eeprom. Тогда ничего нигде трогать не нужно, т.к. после заливки прошивки из студии, запускаем батник и он загоняет в eeprom нужные параметры или показывает что в eeprom.

MaksMS пишет:

 я как понял это просто другая/новая версия загрузчика

По ссылке написано, что это всего лишь небольшой diff.

У меня ничего не настроено, чтобы собрать optiboot с этим diff.

Думал, у вас стоит toolchain.

Может есть другие bootloader для pro mini c поддержкой записи в eeprom?

 

MaksMS
Offline
Зарегистрирован: 11.03.2013

А, ясно, у меня этот diff  не применить скорее всего, надо вручную все править и добавлять, надо разбираться..

osetroff
Offline
Зарегистрирован: 27.08.2014

MaksMS пишет:

А, ясно, у меня этот diff  не применить скорее всего, надо вручную все править и добавлять, надо разбираться..

Надежды нет?

Если дадите ссылку на исходники (они ведь opensource?), то внесу в них diff и выложу вам для сборки.

MaksMS
Offline
Зарегистрирован: 11.03.2013

Как бы исходники лежат на страничке официльной этого загрузчика..

osetroff
Offline
Зарегистрирован: 27.08.2014

Думал, у вас там свои патчи наложены.

Если накачу diff, соберете?