SinaProg — графическая оболочка для AVRDude

Вот уже много лет я пользуюсь мощнейшей программой для прошивки — avrdude. Программа эта поддерживает почти все виды программаторов, а те что не поддерживает изначально легко в нее добавляются.
Но есть у ней особенность которая сильно отпугивает многих — она консольная. И все шаманства с ней заключаются в формировании командной строки.

С одной стороны это хорошо — консольная утилита позволяет очень сильно ускорить и автоматизировать процесс прошивки. Один раз написал батничек и для перешивки только вызывать его и все.

Остается проблема прошивки разных устройств, ведь под каждую придется делать свой батник. И ладно бы ключи прописать, да файл с прошивкой указать. Самая засада начинается с fuse битами (впрочем, как и везде в мире AVR ;) ) Тут их надо вначале внимательно проштудировать в даташите, выписать в виде байтов, вписать правильно в командную строку и молиться на то, чтобы нигде не ошибиться.
Да, для avrdude написано много оболочек, но все что мне встречались раньше решали лишь малозначительную проблему выбора нужного ключа файла и/или программатора, а фузы также было надо указывать числом.

Проблема решилась с появлением новой версии оболочки SinaProg от команды программистов-террористов из Аль-каиды иранских AVR программеров.

Запускаем… Если не запустилась, то возможно потребуется установить фреймворк от NI — LabView RunTime Library


Морда выглядит простенько и со вкусом. Ничего лишнего. Выбираем в первой строке хекс файла и зашиваем его в нужную память — flash или eeprom.

Следом идет прогресс бар и кнопка открытия консольного лога — ошибки смотреть.

Ниже выбираем тип микроконтроллера, также есть кнопочка поиска — полезно для проверки работы программатора.

Отдельно стоит сказать про секцию Fuses.
Осторожней с выпадающим списком. С виду там все просто, но это на самом деле предустановки, описываются они файле Fuse.txt вот его дефолтное содержание:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Default.
[]
 
ATmega8.ATmega16.
[Int. 1 MHz	d9e1
Int. 2 MHz	d9e2
Int. 4 MHz	d9e3
Int. 8 MHz	d9e4
Ext. Crys.	d9ff]
 
ATmega32.
[Int. 1 MHz	d9e1
Int. 2 MHz	d9e2
Int. 4 MHz	d9e3
Int. 8 MHz	d9e4
Ext. Crys.	d9ff]

Видишь, формат очень прост. Строка контроллера (обязательно с точкой!) и в квадратных скобаках возможные варианты (отделенные табуляцией) с байтами тех самых фузов. Обратите внимание, что тут меняется СРАЗУ ОБА БАЙТА Fuse битов. Т.е. касаются далеко не только тактовой частоты. А еще всего остального что конфигурируется в FUSE. Так что я бы сразу переназвал их иначе. Скажем как
All Default,but 1MHZ
All Default,but 2MHZ
All Default,but 4MHZ

Чтобы было понятней. Но это как бы быстрые шаблоны и не претендуют на глобальность.

Лучше сразу нажать Advanced и узреть … тот самый цифровой ввод.

Но не стоит напрягаться, достаточно нажать кнопочку «С» (видимо авторы имели ввиду Calculator) и увидеть удобнейшие выпадающие списки с человеческим описанием. Прям как в STK500.

Но ни в коем случае не забывайте нажать кнопочку READ перед тем как что либо менять. Помните, неустановленные fuse это тоже какое то значение, которое будет записано при нажатии кнопки WRITE

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

Покажу на примере программатора встроенного в Pinboard (На базе FTDI, но распиновка выводов немного отличная от FTBB описанного ранее).

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

Прописывание конфигурации FTBB в файле avrdude.conf я описывать не буду, подробней я об этом уже писал ранее.

Считаем, что это уже сделано и в файле конфигов avrdude у нас есть нужная секция. Я назвал ее pinb, впрочем, название может быть и произвольным.

Первым делом открываем файл Programmer.txt и видим там список:

1
2
3
4
5
6
7
8
9
10
11
ABCmini
ALF
Arduino
AT ISP
AVR109
AVR910
AVR911
AVRISP
AVRISP 2
AVRISP mkII
AVRISP v2

и еще полторы страницы все известных и не очень типов программаторов. Вписываем там первой строкой наш pinb

1
2
3
4
5
6
7
8
9
10
11
12
ABCmini
pinb
ALF
Arduino
AT ISP
AVR109
AVR910
AVR911
AVRISP
AVRISP 2
AVRISP mkII
AVRISP v2

Все, теперь он в списке, но ему еще надо сопоставить порт. Поэтому открывай файл Port.txt
Вот его дефолтное содержимое:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Default.
[COM1	com1
COM2	com2
COM3	com3
COM4	com4
COM5	com5
COM6	com6
COM7	com7
COM8	com8
COM9	com9
LPT1	lpt1
LPT2	lpt2
LPT3	lpt3]
 
STK500 v2.
[USB	avrdoper]
 
AVRISP mkII.
[USB	usb]
 
USBasp.
[USB	x]

Как видишь, формат тут сходный. Название программатора (с точкой в конце!), а в скобках варианты. Причем первым делом пишем произвольное название порта, а потом то в каком виде он должен подставиться в командную строку avrdude. Между ними табуляция.

Порт FTDI bitbang в консоли называется ft# и номер от нуля до бесконечности. В зависимости от того сколько чипов FTDI навешано на твой компьютер в данный момент. Причем учитываются именно подключенные, активные, чипы. И не стоит путать этот номер с номером виртуального COM порта который этот чип организует. Так что если у тебя в системе всего один адаптер USB-COM на базе FTDI, то какой бы там COM порт ни был, для bitbang программатора он зовется ft0 и никак иначе. На всякий случай добавляем несколько вариантов.

Добавляем туда нашу секцию

1
2
3
4
5
pinb.
[FTDI	ft0
FTDI1	ft1
FTDI2	ft2
FTDI3	ft3]

Осталась еще одна маленькая деталь. Опция скорости. Для обычных программаторов вполне подойдет и дефолтная настройка, но вот незадача — там используется ключ -b, а он меняет только битрейт СОМ порта. А если нам надо менять битклок FTDI битбанг эмуляции порта? Тут в avrdude за это отвечает ключ -B, но Sina его не знает. Придется добавлять. За скорость отвечает файл speed.txt

Вписываем туда нашу скорость в нагрузку к уже имеющейся в таком виде:

1
2
3
4
5
6
7
8
9
10
11
12
13
1200	x -B 1200
2400	x -B 2400
4800	x -B 4800
9600	x -B 9600
14400	x -B 14400
19200	x -B 19200
38400	x -B 38400
57600	x -B 57600
115200	x -B 115200
230400	x -B 230400 
460800	x -B 460800
921600	x -B 921600
3000000	x -B 3000000

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

Отлично, программатор мы прописали и порт мы сопоставили. Даже скорости выправили. Теперь надо сину заставить это дело все прожевать. Для этого берем и удаляем файл SinaProg.sav Не знаю как построена логика программы, но почему то именно это действие заставляет ее перечитать собственные конфиги и добавить наши строки в списки.

Все! Готово — можно шить! Удачной прошивки!

Сайт разработчиков SinaProg (увы сдох :( )
Моя сборка SinaProg с уже настроенными конфигами под Pinboard и FTBB

195 thoughts on “SinaProg — графическая оболочка для AVRDude”

  1. Гм… Всё бы хорошо, но что там весит 22М??? Даже с учётом того, что оно написано на этом монструозном QT, оно должно быть существенно меньше..
    Добрую половину объёма там занимает lvrt.dll… Если верить гуглу, то это LabVIEW. Может кто объяснить, нахрена там оно и зачем вообще использовать двух этих монстров одновременно? Ещё 5 метров — некий каталог English с файлами «*.rsc». Не иначе, файлы локализации для лабвью?
    Короче, это жесть…

      1. Хе… Запустил это чудо — действительно ГУИ написано на LV, что не придаёт ему особого быстродействия… =) Тогда вопрос чуть смещается — если оно написано на LV, зачем там QT?
        В общем, идея ничего (я, кстати, сейчас тоже пишу форнтэнд для программатора с ГУИ в похожем стиле, а то шняга из AVRStudio задолбало), но выбор фреймворков странный…

  2. Блин не дописал =)
    Оболочка удобная. Пользуюсь ей с USBaspом.
    Когда жмем кнопочку открытия файла прошивки то там можно выбрать не только HEX но еще и EBN.
    И захотелось мне как то сделать клон паралельного программатора который в STK500, а прошивка для него как раз в этом хитром EBN формате. Ну я конечно обрадовался что щас зашью его с помощью дудки и USBasp. Зашил. Зашилось. Но программатор не определялся.. Искал пол дня ошибки в монтаже и ничего не нашел… Потом выяснил что что-то с прошивкой не то.. (должны диодики мигать при включении а у меня не мигали)
    Сконвертировал EBN в HEX и зашил. Программатор завёлся.
    Вот такая вот кривизна. Я не знаю поддерживает ли дудка ЕБН формат. Если нет то это синапрог виноват который криво сконвертил этот файл в hex. Так что будьте осторожны!

      1. Ну фузы выставить не проблема, если юзаеш Eclipse, то там конфигурилка не хуже чем в AVR Studio, если другой какойнибудь редактор кода, например Programmers-Notepad, то фузы можно прописать в мейкфайле, и повесить команду прошивки на хоткеи и вменю редактора…

        Вот есть онлайновый конфигуратор http://www.engbedded.com/fusecalc который выдаёт готовые значения для дудки… один раз прописал в мейкфайле проекта всё что надо, и не надо заморачиватся с сторонними приблудами для программатора.

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

  4. Уважаемый DI HALT!
    Подскажите пожалуйста.

    Я собрал программатор:
    http://easyelectronics.ru/avr-shag-pervyj-programmator

    По схеме все верно (травил плату).
    Микроконтроллер читается:

    root@Anatoly:~# /usr/local/bin/avrdude -n -c test -P /dev/ttyS0 -p m8
    avrdude: AVR device initialized and ready to accept instructions
    Reading | ################################################## | 100% 0.00s
    avrdude: Device signature = 0x1e9307
    avrdude: safemode: Fuses OK
    avrdude done. Thank you.

    Я попытался прошить в него bootloader от arduino.
    Конечно через arduino:
    http://www.arduino.cc/en/Main/Software

    После прошивки, МК перестал у меня отвечать… :(
    Коллега, подскажите пожалуйста как быть?
    МК умер? Или его так нельзя убить?

    Теперь он выдает это:

    root@Anatoly:~# /usr/local/bin/avrdude -n -c test -P /dev/ttyS0 -p m8
    avrdude: AVR device not responding
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.
    avrdude done. Thank you.

    Спасибо,
    Анатолий!

      1. Честно говоря хрен знает как прошить ардуино бутлоадер. Никогда эту ересь не ставил :))))

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

      1. Да я просто пытался прошить.
        Нету там не кварца, ничего нету кроме самой схемы программатора.
        Просто программатор и его сразу на выходы МК.
        Я так же собрал саму arduino:
        http://arduino.cc/en/Main/ArduinoBoardSerialSingleSided3
        Но через неё не пробовал прошивать. (там LPT используется)

      1. Ну я не знаю :)
        Можно еще предположить, что после запуска install_giveio надо было перегрузиться. Хотя оно для лпт, не понятно как может влиять на работоспособность всей проги. В общем работает пока, пусть работает :)
        Одна фигня — не пишет прогресс выполнения, хотя бы в %.

  5. С момента сборки USBASP юзаю AVR Burn-O-Mat — есть человеческий редактор фьюзов, их защита от новичка, весит довольно мало. Из минусов с натяжкой можно отметить, что проге нужна Java, и она довольно долго грузится(неск секунд). Ну а так очень удобно, скомпилил в студии, переключил окно, нажал Write и все готово. Шьет довольно быстро, 1кБайт/сек с верификацией.

  6. когда-то хотел написать фронтенд для avrdude под никсы на qt. даже кое-что сделал, но всё время руки не доходили долипить. глядя на такое, хочется завершить таки свой минипроектик )

  7. Uniprof старая версия плоховато работает на быстрых компах, тут дудка стабильней.
    Для avrdude cуществует простая всеплатформенная (виндовс, линукс и мак ) оболочка AVRFUSE
    http://www11.ocn.ne.jp/~maracas/avrfuse.html
    Проверял работает нормально и винде и в лине.
    Версия для винды весит 7.2Метра.

  8. А мне вот синапрог не понравился. Калькулятор фьюз это конечно круто, но выбор скорости не работает, и avrdude произвольные параметры задать нельзя: моя ftbb без параметра -B не работает, ругается ft245_program_enable error, а с ней всё чики пуки. Пользуюсь пока кривоватой японской avrdude-gui

    1. В файл speed txt добавь следующее
      1200 x -B 1200
      2400 x -B 2400
      4800 x -B 4800
      9600 x -B 9600
      14400 x -B 14400
      19200 x -B 19200
      38400 x -B 38400
      57600 x -B 57600
      115200 x -B 115200
      230400 x -B 230400
      460800 x -B 460800
      921600 x -B 921600
      3000000 x -B 3000000

      и будет тебе счастье.

      1. и вот тут-то прикол
        МАССА ДИ вразуми нижайшего
        я врисовал как ты описывал
        пролблема осталась
        при выборе стандартных скоростей — не ловит после запуска 245 либы
        при выборе твоих записей — пускает на тех же скоростях, но
        в строке пишет б(маленькая) — хутин пуй, а б(большую) даже обдумывать не хочет
        там вот теханон поди про тоже

          1. я его по твоему совету грохаю
            ну там поменял в файле что-то, сохранил и грохнул сав
            прога запускается, говорит что чегото нет жму продолжить

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

          2. не знаю, что я не так пишу
            если добавляю — не получается
            просто в стандартной секции вписа ч -И
            он стал их воспринимать
            прошивать пока не получается
            и не понял: зачем он просит использовать -F?

  9. DI!!!! Где же Вы были раньше с этим спиид.тхт??? -))))
    Я тут моз сломал как заставить тиньку 2313 найтись с заводскими фузами!!!
    Победил только с AVR Burn-O-Mat.
    Ствлю в нем параметр скорости 19200 — и все в порядке!

    А Вам удобнее Сина-Прог показался? (Если абстрагироваться от скорости запуска проги?)

    1. На форуме своем, где же еще :) Там эту синапрогу обсосали со всех сторон. Спасибо Рэдкату и его теме про модернизированную дудку для FTBB

      Ага. Там все как то понятно и логично. А бурномат у меня толком и не заработал. Все какие то глюки выдавал.

  10. Привет DI всетаки avrprog работает только с первыми 4 сом портами и точка. Дальше никак. А у меня мк висит на 15 сом порте с бутом который ты предлагаеш. Скачал сейчас свежую версию sinaprog. все вроде как нормалек 15 сом можно выбрать в выпадающем списке. Но только вот непонятно, как теперь прошивать синойпрог с помощью бутака. При открытии сины она не посылает S в бут как это делает avrprog. Что дальше делать непонятно?

    1. Сина это надстройка для аврдуды. Так что сначала надо определить профиль какого программатора может общаться с этим бутом. Вроде как авр109

      А чо ком порт переназначить на малый номер ну никак никак?

      1. Никак никак. В компе торчит плата на 8 физических сом портов. Все они заняты, к ним подключены кабели с разными устройствами на расстоянии 1200 метров и более. Это не реально. Реально есть свободные порты начиная с 10. Тоесть как бы имеем дело с мощным сервером, который управляет разными системам автоматизации. Ладно окей, надо определить профиль программатора. Я выбирал уже avr109 выставлял сом 15 скорость 19200 нажимаю program побежал прогресс бар. и в итоге сина выдает
        avrdude -C avrdude.conf -c avr109 -P com15
        -b 19200 -p m16 -U flash:w:»C:\PRJ_AVR\TEST_AT_16\TEST_AT_16.hex»:a -q
        avrdude: No AVR part has been specified, use «-p Part
        Что дальше?
        Р.S.
        Кстати при нажатии на exit в аврпрог она отсылает Е в бут и он отдает управление основной программе. и не нужно нажимать ресет на плате. как все просто оказывается.

          1. Смотри прикол. Подключил я все на сом 1 единственный на своем ноуте. выбрал авр109 сом 1, скорость 19200, Через аврдуду все идеально прошилось и даже бут сам автоматом сбросился. Дака думаю подключу все на сом 4. Попробую снова. Взял девайс ADAM 4571. Такая штуковина втыкается в сеть Ethernet. Прописываеш IP адрес и все дела и у этой девайсины есть физический сом порт который видит компик через сеть. Получается как бы удаленный сом порт, но для компа он как свой родной фактически встроенный в материнку. И что думаеш, уже не работает. Стал я посылать через рекламируемую тобою терминалку S, а в ответ AVRBOOT!! Послал Е бут сбросился. Через терминалку команды доходят и ответ тоже. А дудка не шьет, а через сом 1 шьет. Думаеш прикол в DEV_BOOT? тогда почему через сом 1 шьет?

              1. Не знаю че делать. Может ты чтонибудь нароеш когда приедешь. Я уже рыть устал. Прикол что аврпрог шьет спокойно с сом1 по сом4 через ADAM 4571 по сети. А через сом 5 все стопор.

          2. Привет DI. Наконец заработало. Я поменял параметр DEV_BOOT на DEV_ISP и еще нужно было в файле port.txt добавить сом порты скажем до 20го. Теперь все шьется через девайс удаленный сом порт ADAM4571. Осталось между девайсом и МК сеть сделать 485. Интересно будет ли бут работать через драйвер микросхему 485?

              1. Ну да 485 этож полудуплекс. Там нужно ножкой дрыгать в драйвере 485 на прием/передачу. Если бут этого не делает, то и эксперементировать нет смысла. Нужно эту функцию вписывать в бут. А ты случайно не вкурсе есть там такая примочка?

                1. Он может быть и дуплексом, но проводов в два раза больше. Вообще надо проверять. Если МК сначала шлет потом слушает, то будет работать. Если нет, то придется писать свой бут.

  11. Спаял программатор STK200 по схеме похожей, как была здесь на сайте, но немного отличающейся http://hardlock.org.ua/viewtopic.php?f=18&t=6. Различия не очень принципиальные. Так вот при программировании контролера в CodeVisionAVR, при обращении к нему загорается один из светодиодов. При этом буферные элементы микросхемы программатора переходят из третьего состояния в рабочее. Но при использовании этой оболочки и дудки загорание этого же светодиодане не происходит. И по логике буферы остаются в высокоимпедансном состоянии. Но при этом оболочка мне правильно показывает сигнатуру. Как такое может быть непонятно. Чтобы перевести буферы из Z-состояния нужно в LPT порт выдать соответствующий сигнал. А в SinaProg этого по видимому не происходит, если судить по светодиоду

  12. Интересно. Нашел в конфиге такую секцию:
    programmer
    id = «stk200»;
    desc = «STK200»;
    type = par;
    buff = 4, 5;
    sck = 6;
    mosi = 7;
    reset = 9;
    miso = 10;

    Похоже buff — это то что мне надо и выводы буфера (4 и 5) подключены к тем же пинам, что здесь указаны. Остальные выводу тоже соответствуют.

  13. Не пойму. Беру строку, сгенерированную SinaProg, открываю окно виндовой консоли, вставляю батник туда с записанной в него этой строкой, запускаю и ничего не происходит. Появляется в консоли только строка из этого батника и далее опять строка приглашения с текущим путём.

  14. Чтоб не закрывался по завершению. Всегда так делаю. Чтоб видеть, результат. Вообщем разобрался — все варианты перепробывал с расположением экзешника, батника, указанием полного пути или только имени файла к avrdude, прошивке, файлу конфигурации. Вроде заработало. Осталась одна небольшая проблемка — как сделать, чтобы запуская батник или avrdude из avrstidio не закрывалось окно консоли, чтобы видеть результат прошивки?

  15. DI привет. Я недавно скачал sinaprog версия 1.7.5.10. Теперь чтобы она заработала нужно еще установить пакет LabVIEW LVRTE2010min.exe. Эта версия работает как то стабильнее лучше без глюков. Типа кувалды чтоль стала. НО… неполучается прикрутить к ней пресловутый программатор на FT232R. Через пол дня колупания выяснил что sina ругается на строку type = FT245R; Пишет:
    error at avrdude.conf:322 unrecognized character: «F».
    Типа не понимает что за FT245R.
    В новой версии нет чтоль библиотеки для FT245R?
    Кстати не нужно удалять теперь файл SinaProg.sav. При старте sina сразу прочитывает все изменения файлов. И ключ -В там уже тоже стоит по умолчанию.
    Непонятно как теперь заставить sinaprog работать с программатором? А то я так старался его делел, делал, а тут на тебе розовый обломинго.

      1. У меня нет старой аврдуды и нет старого конфига. Я как бы скачал sinaprog версия 1.7.5.10. и все. Там уже были и конфиг и аврдуда. В конфиг я вставил
        #FTDI_Bitbang
        programmer
        id = «ftbb»;
        desc = «FT232R Synchronous BitBang»;
        type = ft245r;
        miso = 3; # CTS(11 PIN FT232R)
        sck = 5; # DSR(9 PIN FT232R)
        mosi = 6; # DCD(10 PIN FT232R)
        reset = 7; # RI (6 PIN FT232R)
        ;
        Этож просто, а все травно не пашет.
        Кстати сноска в статье у тебя не работает, хотел у тебя твой архив качнуть.
        Нужен ли файл бросить в сину ftd2xx.dll?

          1. Повериш, нет — сразу заработало. Не успел вставить в usb а програматор уже fuse прочитал. Шутка. Но вопросы возникли:

            1. Мой покупной программатор avr910 почемуто не работает с твоей версией, а с той что скачал 1.7.5.10. работает. Хотя он там и там прописан. Это в принципе не сильно важно так как avr910 могу запустить и с avrprog которая со студией идет или с версией 1.7.5.10. Проосто я хочу понять, научиться и разобраться что к чему вот и все. Вот такой я. А спросить на работе не у кого.

            2.Что значит патченая?, я понял что там файлов *.dll добавилось, ты сам ее допилил или тебе ктото помог из программистов. Простой обыватель думаю сам не дотумкается так сделать.

            3.Хочется как то понять, что сделать самому чтоб запустить под 1.7.5.10. Я понял что это только оболочка и она здесь ни причем. Получается вся avrdude это два файла avrdude.exe и avrdude.conf.

            4. Вобщем вывод такой, программатор класный тем что он аппаратный это плюс, но вот запустить его не так то просто это минус, даже скачав эту avrdude.exe Еще надо как то допиливать ее.

            Ну что скажеш?

            1. 1 + 2 вот потому и не работает, что та аврдуд что лежит в моем архиве заточена специально под ftdi программатор. В нее внесены кое какие изменения чтобы она его поддерживала. Одной дллкой тут не ограничилось. Ее допилил не я, а какой то японец. Ссылка на него была в статье про FTBB программатор.

              3. Если версия 1.7.5.10 сама не работает с ним, значит придется допиливать вручную. Качаешь исходники, правишь их (вставляешь тот самый патч) и компилируешь заново. Хотя вроде бы этот патч уже официально должен входить в последнюю версию дудыки.
              Сама же аврдуд это да — экзешник и конф. Остальное, вроде дллки это всякие доп примочки.

              4. Потому то я и выкладывал свою сборку avrdude со своим конфом.

              1. Вобщем вставил, опять таки заработало под ft232r а avr910 не заработало. Но я понял что нужно делать чтоб заработало. — НИЧЕГО. Просто не парить себе мозги и все. Для ft232R пользоваться тем что ты дал, версией 1.4.5.10, а для avr910 чистой версией 1.7.5.10. без переделок. Просто я хотел чтоб было все в одном флаконе, но вдруг понял что просто не бывает. Все же спасибо за помощ.

          2. Да, тоже такая проблема. Только с буквой «а». А число это наверняка строка в конфиге. Пошел туда — arduino. Закоментировал. Теперь ругается на другой, видимо неведомый дудке программатор. Даже это комплект тоже взял, что то не хочет. Использую Pinbord2

  16. Почемуто сайт разработчиков sinaprog уже давно не работает. Непонятно почему.
    1.Умерли все чтоли?

    Хотел сину обновить, так как в предыдущей версии нет поддержки attiny4313. Кстати attiny4313 один из новых мк, и памяти 4 кб. Все в нем есть кроме ацп. Классный мк. Даже в даташите на него errata пустая. Неужели прям мк без аппаратных багов?

    2.Кстати DI, как оболочка определяет тип мк? У каждой серии мк есть какойто внутренний индефикационный номер как я понял. и он считывается.

    3.Где он записан в мк?

    По идее можно оболочке подставить какой нибудь другой номер другого мк и так прошить нужный тебе мк который оболочка не поддерживает?

    4.Я в правильном направлении имыслю?

    1. 1. Арабы какие то. Там не то война не то еще что то через день.

      Если в эррате нет багов, то не значит что их нет. Просто не нашли еще.

      2. У каждого МК есть байты сигнатуры, у каждого свой. Ну и программатор может его считать и сравнить с теми что есть.

      3. Где то во флеше, но напрямую его считать низя, а вот стереть можно. Сигнатура иногда слетает если процесс прошивки прерывался.

      Шьет не оболочка, а avrdude она поддерживает наверняка уже этот МК. Не сможешь подружить Сину напрямую — прошьешь через консоль просто.

      1. Прикинь, оказывается сигнатуру считать можно, вот кусок даташита
        1. Load the Z-pointer with the table index.
        2. Set RSIG and SPMEN bits in SPMCSR.
        3. Issue an LPM instruction within three clock cycles.
        4. Wait three clock cycles for SPMEN bits to be cleared.
        5. Read table data from the LPM destination register.
        DSIT_read:
        ; Uses Z-pointer as table index
        ldi ZH, 0
        ldi ZL, 1
        ; Preload SPMCSR bits into R16, then write to SPMCSR
        ldi r16, (1<<RSIG)|(1<<SPMEN)
        out SPMCSR, r16
        ; Issue LPM. Table data will be returned into r17
        lpm r17, Z
        ret

        1. О, любопытно. Не знал. Думаю это полезно для разве что для автоматически конфигурирующегося бутлоадера хотя я не уверен можно ли такой сделать на AVR.

  17. Помогите. Синапрог 1.3.5.6 не прошивает фьюзы у attiny15, очень нужно отключить ресет и освободить пин. Судя по логу она пишет только Lock Bits, а Low Fuse не пишет, и значение сереньким отображается в основном окне. Что и где надо изменить, чтобы убрать это ограничение (savemode)?

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

          1. Я пробовал. Выбираем 4800, получаем ответ: Programming failed. А если выбираем программатор ftbb -B4800 тогда: Can’t find programmer , и здаровый не понятный лог…. Не понемая где я накосяел!

              1. 1) Программатор ftbb, при 4800 Реакция:

                avrdude -C avrdude.conf -c ftbb -P ft0 -B 4800 -p m8 -q

                avrdude: BitBang OK
                avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
                avrdude: drain OK

                ft245r: bitclk 4800 -> ft baud 2400
                avrdude: ft245r_program_enable: failed
                avrdude: initialization failed, rc=-1
                Double check connections and try again, or use -F to override
                this check.

                avrdude done. Thank you.

                2)Программатор ftbb -B 4800

                avrdude -C avrdude.conf -c ftbb-b4800 -P ft0 -B 4800 -p m8 -q

                avrdude: Can’t find programmer id «ftbb-b4800»

                Valid programmers are:
                dasa3 = serial port banging, reset=!dtr sck=rts mosi=txd miso=cts [avrdude.conf:805]
                dasa = serial port banging, reset=rts sck=dtr mosi=txd miso=cts [avrdude.conf:792]
                siprog = Lancos SI-Prog [avrdude.conf:779]
                ponyser = design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts [avrdude.conf:766]
                frank-stk200 = Frank STK200 [avrdude.conf:731]
                blaster = Altera ByteBlaster [avrdude.conf:718]
                ere-isp-avr = ERE ISP-AVR [avrdude.conf:708]
                atisp = AT-ISP V1.1 programming cable for AVR-SDK1 from [avrdude.conf:698]
                dapa = Direct AVR Parallel Access cable [avrdude.conf:687]
                xil = Xilinx JTAG cable [avrdude.conf:674]
                futurlec = Futurlec.com programming cable. [avrdude.conf:657]
                abcmini = ABCmini Board, aka Dick Smith HOTCHIP [avrdude.conf:647]
                picoweb = Picoweb Programming Cable, http://www.picoweb.net/ [avrdude.conf:637]
                sp12 = Steve Bolt’s Programmer [avrdude.conf:626]
                alf = Nightshade ALF-PgmAVR, http://nightshade.homeip.net/ [avrdude.conf:610]
                bascom = Bascom SAMPLE programming cable [avrdude.conf:600]
                dt006 = Dontronics DT006 [avrdude.conf:590]
                pony-stk200 = Pony Prog STK200 [avrdude.conf:578]
                stk200 = STK200 [avrdude.conf:562]
                bsd = Brian Dean’s Programmer, http://www.bsdhome.com/avrdude/ [avrdude.conf:551]
                pavr = Jason Kyle’s pAVR Serial Programmer [avrdude.conf:543]
                dragon_dw = Atmel AVR Dragon in debugWire mode [avrdude.conf:536]
                dragon_hvsp = Atmel AVR Dragon in HVSP mode [avrdude.conf:528]
                dragon_pp = Atmel AVR Dragon in PP mode [avrdude.conf:520]
                dragon_isp = Atmel AVR Dragon in ISP mode [avrdude.conf:512]
                dragon_jtag = Atmel AVR Dragon in JTAG mode [avrdude.conf:504]
                jtag2dw = Atmel JTAG ICE mkII in debugWire mode [avrdude.conf:496]
                jtag2isp = Atmel JTAG ICE mkII in ISP mode [avrdude.conf:488]
                jtag2 = Atmel JTAG ICE mkII [avrdude.conf:480]
                jtag2fast = Atmel JTAG ICE mkII [avrdude.conf:472]
                jtag2slow = Atmel JTAG ICE mkII [avrdude.conf:464]
                jtagmkII = Atmel JTAG ICE mkII [avrdude.conf:456]
                jtag1slow = Atmel JTAG ICE (mkI) [avrdude.conf:449]
                jtag1 = Atmel JTAG ICE (mkI) [avrdude.conf:441]
                jtagmkI = Atmel JTAG ICE (mkI) [avrdude.conf:433]
                avr911 = Atmel AppNote AVR911 AVROSP [avrdude.conf:427]
                avr109 = Atmel AppNote AVR109 Boot Loader [avrdude.conf:421]
                butterfly = Atmel Butterfly Development Board [avrdude.conf:415]
                usbasp = USBasp, http://www.fischl.de/usbasp/ [avrdude.conf:409]
                diecimila = FT232R Synchronous BitBang [avrdude.conf:399]
                pinb = FT232R Synchronous BitBang [avrdude.conf:388]
                ftbb = FT232R Synchronous BitBang [avrdude.conf:377]
                ft245r = FT245R Synchronous BitBang [avrdude.conf:366]
                serjtag = Serial JTAG Cable [avrdude.conf:361]
                avr910 = Atmel Low Cost Serial Programmer [avrdude.conf:355]
                stk500hvsp = Atmel STK500 V2 in high-voltage serial programming mode [avrdude.conf:349]
                stk500pp = Atmel STK500 V2 in parallel programming mode [avrdude.conf:343]
                stk500v2 = Atmel STK500 Version 2.x firmware [avrdude.conf:337]
                stk500v1 = Atmel STK500 Version 1.x firmware [avrdude.conf:331]
                stk500 = Atmel STK500 [avrdude.conf:325]
                avrisp2 = Atmel AVR ISP mkII [avrdude.conf:315]
                avrispmkII = Atmel AVR ISP mkII [avrdude.conf:309]
                avrispv2 = Atmel AVR ISP V2 [avrdude.conf:303]
                avrisp = Atmel AVR ISP [avrdude.conf:297]

                1. Вот в первом случае у тебя все ок за исключением того, что мега не ответила. Либо косяк с подключением либо с фузами или еще с чем. Но на программной стороне взаимодействие с программатором норма.

                  А во втором случае он тебе сам сказал, что не так. Английским по черному:
                  avrdude: Can’t find programmer id “ftbb-b4800″

                  1. Пайку всю прозванивал не однократно. Я так понимаю, дело либо в буфере, либо в самом контролере, попробую подключить без буфера ещё раз(в первый раз без буфера было то же фиаско)…

  18. Приветствую! Вопрос такой, есть usbasp,синапрог,attiny2313 и прошивка,при нажатии на кнопку search напротив device выдает такие ошибки:
    avrdude -C avrdude.conf -c usbasp -b 115200 -p t2313 -q
    avrdude: error: could not find USB device «USBasp» with vid=0x16c0 pid=0x5dc
    и
    avrdude -C avrdude.conf -c usbasp -B 115200 -p t2313 -q
    avrdude: error: no usb support. please compile again with libusb installed.
    горит красный диод,зеленый нифига.
    а через USBASP_AVRDUDE_PROG выбираю тип мк,нажимаю чтение-моргает зел диод,выводися HEX 5859,но он не прошивает,выдает ошибку при чтении:
    found 5 busses
    avrdude.exe: AVR device initialized and ready to accept instructions
    Reading | ################################################## | 100% 0.02s
    avrdude.exe: Device signature = 0x1e910a
    avrdude.exe: reading flash memory:
    Reading | avrdude.exe: error: usbasp_transmit: error sending control message: win error: Операция ввода/вывода была прервана из-за завершения потока команд или по запросу приложения.
    в чем может быть косяк? (сильно не бить,я только начинаю).Спасибо

    1. В первом варианте у тебя почему то программатор не отвечает. Во втором ругается про libusb (может кривая дудка? Неправильно скомпиленая?)

      Попробуй другой экзешник качнуть с оффсайта. Новую версию или наоборот более старую

  19. Пытаюсь прошить Atmega128 через сину, программатор на FT232,но контроллер не определяется. Всё проверил множество раз(Выводы Miso и mosi учёл), другие меги определяет(8,16,8535). И почему-то в главном окне В области Fuse при выборе Atmega128 не активен выбор частоты?

  20. avrdude -C avrdude.conf -c ftbb -P ft0 -b 14400 -p m128 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude done. Thank you

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

      1. контроллер есть в перечне программы, выбрать в выпадающем меню фусы под него можно, но прочитать из контроллера их не могу…
        Если речь идет о файле Fuse.txt, то там нет описи ATtiny85

        1. пробовал в текстовой строке считать процессоры таков ответ:
          avrdude.exe: writing output file «123.hex»
          avrdude.exe: error opening 123.hex: No such file or directory
          avrdude.exe: output file 123.hex auto detected as invalid format
          avrdude.exe: invalid output file format: -1
          avrdude.exe: write to file «123.hex» failed

          avrdude.exe: safemode: Fuse OK

          avrdude.exe: done. Thenk you.

          как понять это и что делать дальше?

            1. Уже получилось. При чтении надо ставить «:і» (там где при записи ставим «:а»).
              Фусы считать так и не смог в программе, только через консоль в файл. Записать их могу… Потому фусы пишу сразу какие надо :( без возможности проверить наглядно, но при записи есть уведомление что верификация прошла успешно, чего вполне достаточно.

  21. Проблема возникла, при установки на ноутбук при запуски программы выдаёт ошибку «Control AVR Programmer — обнаружена ошибка. Приложение будет закрыто…», на стационарном компе запускается работает, винда стоит одинаковая на обоих кампах. Но при этом запускается сина версии 1.5.5.10. В чём может быть дело? Или как изменить конфигурация версии 1.5.5.10 для работы с программатором на FT232RL?

    1. Может на ноуте LabView RunTime Enviroment не установлен?

      А настройки из сины перетащить несложно, достаточно все конфиг файлы кроме экзешника перетащить и должно работать. Удалить только sinaprog.sav чтобы он перечитал конфиги.

      1. А я удалил этот sinaprog.sav. При запуске Sina что-то ругнулась, я ее закрыл. Потом Взял тот sinaprog.sav, что у Сины был (из архива) вернул обратно и снова запустил. Сделала она это без всяких ошибок, правда все поля в оболочке были пустыми, но при выборе программатора 2ftbb там уже был, а также порты и скорости. Версия 1.5.5.10.

  22. DI HALT, обоснуй пожалуйста траблы эти, а то как-то не понятно, вроде и система программатор видит и дудка прошивает, но не определяется тип контроллера, пишет что не отвечает программатор, если я правильно понял из комментов.
    http://cs304508.vkontakte.ru/u29323467/128861115/z_e94244c0.jpg

    Помоги пожалуйста разобраться, а то я уже несколько раз все перечитал включая комменты, нашел и исправил кучу ошибок но эту не получается ни как((

    1. Ага. Статью не читал. Комменты тоже. По диагонали не считается. Сравни командные строки в сине и в батнике. Побуквенно. Ну и прочти статью еще раз. Внимательно. Там целый абзац с примерами приведен.

      1. Ааааааааа файл сейф надо было удалить! ВОТ ГДЕ РЫБА ЗАКОПАНА-ТО!!!))))
        Блин, какая мелочь-то, а!!)))
        Все, спасибо. теперь все работает, буду пробовать прошивать!!!!))))))

  23. Привет. Подскажите что может быть.
    Собрал программатор на FT232, пытаюсь через SinaProg тыкаю «Read»
    он мне error (Девайс новый распиновку и конект проверил):

    avrdude -C avrdude.conf -c ftbb -P ft0 -p t2313 -U signature:r:sign.tmp:r -U lock:r:lock.tmp:r -U calibration:r:calib.tmp:r -U hfuse:r:hfuse.tmp:r -U lfuse:r:lfuse.tmp:r -U efuse:r:efuse.tmp:r -q
    avrdude: BitBang OK
    avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
    avrdude: drain OK
    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.
    avrdude done. Thank you.

    Добавляю ключ -F и пробую напрямую считать:

    D:\FTBB>avrdude.exe -F -p t2313 -c ftbb -P ft0 fuse:r:loc:m
    avrdude.exe: BitBang OK
    avrdude.exe: pin assign miso 3 sck 5 mosi 6 reset 7
    avrdude.exe: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude.exe: ft245r_program_enable: failed
    avrdude.exe: initialization failed, rc=-1
    avrdude.exe: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.00s

    avrdude.exe: Device signature = 0xffffff
    avrdude.exe: Yikes! Invalid device signature.
    avrdude.exe: Expected signature for ATtiny2313 is 1E 91 0A

    avrdude.exe: safemode: Fuses OK

    avrdude.exe done. Thank you.

  24. Попробовал, эффект тот же.

    avrdude -C avrdude.conf -c pinb -P ft0 -b 4800 -p t2313 -U signature:r:sign.tmp:r -U lock:r:lock.tmp:r -U calibration:r:calib.tmp:r -U hfuse:r:hfuse.tmp:r -U lfuse:r:lfuse.tmp:r -U efuse:r:efuse.tmp:r -q
    avrdude: BitBang OK
    avrdude: pin assign miso 6 sck 5 mosi 3 reset 7
    avrdude: drain OK
    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.
    avrdude done. Thank you.

    «Invalid device signature» может он «ножки склеил» :)
    Щас принесли еще один программатор, китайский аналог STK200 попробую им из студии.

  25. Привет всем.
    Прочитал почти все, но ответа на свой вопрос не нашел :(
    при изменении скорости в программе, реально скорость обмена не меняется. Смотрел осцилом, при любых настройках одинаковая. на SCK в основном 52кГц и иногда пачки импульсов 64кГц.
    пробовал ключи -b -B цифры и с пробелом после ключа и без пробела…
    Программатор самодельный на ком-порт, по сути обычные «5 проводков Громова» только на СМД рассыпухе добавил ключей для умощнения выходов, что бы длинный провод раскачать от компа до стола и т.п. Настройки в конфиге подогнал под свой программатор, из тех что уже забиты ничего не подошло ( в UniProf на хорошей скорости отказался работать, только на «тормозе», хотя фронты и спады красивее чем выходят с ком-порта, разве что задержка на спаде ~1мкс, потому искал другую прогу проверить. Вот эксперементирую с синой. В принципе работает нормально и заметно быстрее чем в унипруф, но хотелось бы разобраться с настройками скорости…)

  26. Здравствуйте, собрал программатор по схеме :http://radioelektr.ru/programmator-na-ft232rl-bez-upravlaushego-mk/
    при поиске МК пишет:
    avrdude -C avrdude.conf -c usbbit -P ft0 -B 3000000 -p m16 -q

    avrdude: BitBang OK
    avrdude: pin assign —
    MISO:4
    SCK:2
    MOSI:6
    RESET:5
    GATES:3
    avrdude: drain OK

    SET=> ft245r: bitclk 460800 -> ft baud 230400
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    RESET … OK

    avrdude done. Thank you.

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

    и еще вопрос в чем отличие 74hc244 от аналогов (и что из этого можно поставить на замену):
    motorola hc244a
    74hct244d

    с уважением к DI HALT

    1. поставил 4800 то же самое:

      avrdude -C avrdude.conf -c usbbit -P ft0 -B 4800 -p m16 -q

      avrdude: BitBang OK
      avrdude: pin assign —
      MISO:4
      SCK:2
      MOSI:6
      RESET:5
      GATES:3
      avrdude: drain OK

      SET=> ft245r: bitclk 4800 -> ft baud 2400
      avrdude: ft245r_program_enable: failed
      avrdude: initialization failed, rc=-1
      Double check connections and try again, or use -F to override
      this check.

      RESET … OK

      avrdude done. Thank you.

  27. Хотел считать файл прошивки с контроллера. Тыкаю в кнопку read, а он мне выдает
    «C:/SinaProg/avrdude.exe» not found. Раньше вроде не было таких проблем.
    При этом при нажатии на кнопку search все хорошо.
    В чем может быть проблема?

  28. при нажатии кнопки search:

    avrdude -C avrdude.conf -c pinb -P ft0 -b 115200 -p m16 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 6 sck 5 mosi 3 reset 7
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: AVR device initialized and ready to accept instructions
    avrdude: Device signature = 0x1e9403

    avrdude: safemode: Fuses OK

    avrdude done. Thank you.

    а при нажатии read:

    «C:\SinaProg\SinaProg\avrdude.exe» not found

      1. аналогичная проблемка. Ни в одном файле пути к дудке я ненашол. В чем же может быть причина? Ведь SinaProg при поиске усторйства, считывании фюзов использует дудку. А при чтении памяти контролера ненаходит

  29. Ура, разобрался!
    Для того чтобы записать, надо в сроке «Hex file» выбрать файл прошивки или
    Для считывания надо через ето же окно сначало создать файл, в который программа будет записывать данные с контроллера.
    В таком случае программа на ругается на отсутствие дудки.

  30. Привет DI. Собрал я твой программатор на ft232rl заработал он сразу дальше бала сложноcть с avrdude так как она консольная. Эту проблему решила sinaprog изменил в ней файл speed.txt и вроде как попёрло. При прошивке atmega8 выдаёт следующее:
    avrdude -C avrdude.conf -c ftbb -P ft0 -B 4800 -p m8 -U flash:w:»C:\AVRdude\tqfp_2x16.hex»:a -q

    avrdude: BitBang OK
    avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
    avrdude: drain OK

    ft245r: bitclk 4800 -> ft baud 2400
    avrdude: AVR device initialized and ready to accept instructions
    avrdude: Device signature = 0x1e9307
    avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
    To disable this feature, specify the -D option.
    avrdude: erasing chip
    ft245r: bitclk 4800 -> ft baud 2400
    avrdude: reading input file «C:\AVRdude\tqfp_2x16.hex»
    avrdude: input file C:\AVRdude\tqfp_2x16.hex auto detected as Intel Hex
    avrdude: writing flash (5392 bytes):
    avrdude: 5392 bytes of flash written
    avrdude: verifying flash memory against C:\AVRdude\tqfp_2x16.hex:
    avrdude: load data flash data from input file C:\AVRdude\tqfp_2x16.hex:
    avrdude: input file C:\AVRdude\tqfp_2x16.hex auto detected as Intel Hex
    avrdude: input file C:\AVRdude\tqfp_2x16.hex contains 5392 bytes
    avrdude: reading on-chip flash data:
    avrdude: verifying …
    avrdude: 5392 bytes of flash verified

    avrdude: safemode: Fuses OK

    avrdude done. Thank you.
    Вопрос в том всё ли правильно, и незалочил ли я кристал?
    При подключении к жк дисплею 2×16 он загорается и вся верхняя строчка горит.
    Да, и в описании устройства которое я делаю сказано что fuse-биты надо поставить на работу от встроенного RC генератора на 1МГц. Означает ли зто что в окне fuses я должен выставить Int. 1 MHz??
    Кстати статья на само устройство: http://cxem.net/izmer/izmer100.php

  31. Здравствуйте! Возможно проблема уже решена и я просто не нашел нужного поста, но у мну проблема: после преписания файла скоростей и убийства sav файла, sinaprog не хочет запускаться, что-то там ей не хватает. Как я понимаю она должна создать новый sav файл? Помогите плиз!

    1. при попытке чтения флеш выдает следующее: avrdude -C avrdude.conf -c ftbb -P ft0 -B 4800 -p m16 -U flash:r:»C:\Users\Ñêàëà\Desktop\go.hex»:i -q

      avrdude: BitBang OK
      avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
      avrdude: drain OK

      ft245r: bitclk 4800 -> ft baud 2400
      avrdude: ft245r_program_enable: failed
      avrdude: initialization failed, rc=-1
      Double check connections and try again, or use -F to override
      this check.

      avrdude done. Thank you.

      З.Ы. если sav не удалять

        1. попытался прочесть фьюзы:

          avrdude -C avrdude.conf -c ftbb -P ft0 -b -b4800 -p m16 -U signature:r:sign.tmp:r -U lock:r:lock.tmp:r -U calibration:r:calib.tmp:r -U hfuse:r:hfuse.tmp:r -U lfuse:r:lfuse.tmp:r -U efuse:r:efuse.tmp:r -q

          avrdude: invalid baud rate specified ‘-b4800’

          файл скоростей выглядит так:
          default x
          1200 x -B1200
          2400 x -B2400
          4800 x -B4800
          9600 x -B9600
          14400 x -B14400
          19200 x -B19200
          38400 x -B38400
          57600 x -B57600
          115200 x -B115200
          230400 x -B230400
          460800 x -B460800
          921600 x -B921600
          3000000 x -B3000000

  32. avrdude -C avrdude.conf -c 2ftbb -P ft0 -B 4800 -p m16 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 3 sck 6 mosi 5 reset 7
    avrdude: drain OK

    ft245r: bitclk 4800 -> ft baud 2400
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude done. Thank you.

    попытка прочесть фьюзы после добавления в файл конфигурации следующего:
    #FTDI_Bitbang
    programmer
    id = «2ftbb»;
    desc = «FT232R Synchronous BitBang»;
    type = ft245r;
    miso = 3; # CTS
    sck = 6; # DCD
    mosi = 5; # DSR
    reset = 7; # RI
    ;

    проблема остается актуальной

    1. Да в конфиге уже должен быть 2ftbb правильно прописанный. А то что ты скопировал от ftbb и назвал 2ftbb не прокатит, т.к. у 2ftbb другой порядок выводов. Потому он и зовется у меня по другому.

  33. В качестве графической оболочки к avrdude.exe могу предложить DudeAVR (http://a-p-matveev.narod.ru/). Небольшая (т.к. LabView-шную DLL-ку, в отличие от SinaProg, не требует ;-) ), в числе фич — редактирование буферов, автоопределение чипа, и т.д. Я проверял DudeAVR с несколькими программаторами (PonyProg, USBasp) и с разными AVR-ами.

  34. Уважаемый DI HALT а почему у кучи контроллеров фьюзы не активные? Ну например Мега324 которую
    я хотел зашить — во всех тех окошках фьюзовских нули. И ни в какую не реагируют. У старых МК типа М8,16,32 все в порядке, а у новых ни фига. Может подскажете что. Как их запрограммировать? Я уже в шоке. Заранее спасибо.

  35. Речь была о DudeAVR.
    Просто синапрог(хотя скорее сама дудка) не считывает фьюз-биты и еепром с 25тиньки. Флеш -без проблем.
    Пробовал в консоли, всё-равно на выходе пустой файл(:00000001FF).
    Куда копать не подскажите?
    Чтение еепром с консоли:
    c:\SP2.1.1\data>avrdude -C avrdude.conf -c apu_2 -P ft0 x -B 9600 -p t25 -U eepom:r:»C:\11.eep»:i -q
    avrdude: BitBang OK
    avrdude: pin assign —
    MISO:4
    SCK:2
    MOSI:6
    RESET:5
    GATES:3
    avrdude: drain OK
    SET=> ft245r: bitclk 4800 -> ft baud 2400
    avrdude: AVR device initialized and ready to accept instructions
    avrdude: Device signature = 0x1e9108
    avrdude: reading eeprom memory:
    avrdude: writing output file «C:\11.eep»
    avrdude: safemode: Fuses OK
    RESET … OK
    avrdude done. Thank you.

    1. Я с этим встретился еще 2 года назад, правда на тинике 45 и 85. Там нужно дописать конфигурационный файл… Где то была инструкция, но я забил болт и фьюзы прошиваю из под СМD и avrdude напрямую. Даже биты защиты прошиваю.

  36. Верно, буквально пару минут исправил. Теперь фьюзы читаются.
    Прописал себе сразу для 25,45 и 85 тиньки.
    Инструкшн тут: http://forum.easyelectronics.ru/viewtopic.php?t=2975&p=52301

    Народ! Я тоже встретился с этой проблемой, контроллер прошивается, а fuse не хочет. Как оказалось вся беда в avrdude.conf, в конфиге не записана инструкция для чтения look битов. В итоге дудка пишет что кристалл залочен. Инструкция как исправить:
    1) открываем avrdude.conf ( лучше через Notepad, удобней работать)
    2) находим раздел с интересующим нас контроллером
    3) в разделе ищем memory «lock». В этом подразделе будет одна графа с write.
    4) добавляем еще одну графу read.
    5) добавляем инструкцию ( инструкция написана в datasheet, в таблице Serial Programming Instruction Set )
    пример для attiny85
    memory «lock»
    size = 1;
    write = «1 0 1 0 1 1 0 0 1 1 1 x x x x x»,
    «x x x x x x x x 1 1 i i i i i i»;

    read = «0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0»,
    «x x x x x x x x o o o o o o o o»;

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

  37. У меня SinaProg на любое действие реагирует «Programming failed»
    Как собственно прошивать-то?

    avrdude -C avrdude.conf -c pinb -P ft0 -b 115200 -p m16 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 6 sck 5 mosi 3 reset 7
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude done. Thank you.

  38. BlYur — а у вас камень не залочен ?
    Проверьте осциллографом MISO при поиске. Должны быть импульсы.

    зы: еепром смог считать только с консоли, переведя дудку в терминальный режим. Всё-же лучше чем ничего.

  39. Подключил контроллер Mega8 отдельного устройства к FTBB программатору, как указано тут http://wiki.easyelectronics.ru/index.php/Pinboard_1.1#.D0.A0.D0.B0.D0.B1.D0.BE.D1.82.D0.B0_.D1.81.D0.BE_.D0.B2.D1.81.D1.82.D1.80.D0.BE.D0.B5.D0.BD.D0.BD.D1.8B.D0.BC_FTBB_.D0.BF.D1.80.D0.BE.D0.B3.D1.80.D0.B0.D0.BC.D0.BC.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.BC
    Не забыл про питание и землю.
    Выдаёт ошибку:
    avrdude -C avrdude.conf -c pinb -P ft0 -p m8 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 6 sck 5 mosi 3 reset 7
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude done. Thank you.

  40. Скорость выбрал, что-то не помогает
    avrdude -C avrdude.conf -c pinb -P ft0 -b 9600 -p m8 -q

    avrdude: BitBang OK
    avrdude: pin assign miso 6 sck 5 mosi 3 reset 7
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.

    avrdude done. Thank you.

  41. \\//i Живи долго и процветай, Easyelectronics! Уважаемый DI HALT и остальные Космологи электронной вселенной, как подвязать JtagIce3 к SinaProg(avrdude)? А то лишь для прошивы запуск Atmel Studio на предоставленном работай старичке превышает его энтропию. Слабый комп + мощный программатор — остроумный сарказм руководства, или умственная прострация?
    P.S. Ответ на первый вопрос про секс подвязки JtagIce3 приоритетен ; )

      1. Как понимаю, качать от сюда http://download.savannah.gnu.org/releases/avrdude/
        А вот, что качать и куда смотреть хз. И как потом все эт добавить в SinaProg?
        Консольность голой avrdude не то что отпугивает, вообще непонятна на первый взгляд, т.к. вообще юный падаван я в этом деле

  42. Дорогой Di, а можно ли выставить частоту программатора ниже 2400 бит/с? Дело в том, что я тактирую Attiny44 от внутренних 128 кгц и случайно поставил делитель на 8, и теперь он не откликается на программатор((

        1. Никаих чудес. Контроллер полностью статичный, генератор работает на штатной частоте. Так что вопрос лишь в том, чтобы программатор работал достаточно медленно.

      1. Я вот это дело по аналогии в speed.txt дописал
        300 x -B 300
        600 x -B 600
        Только он все равно ставит 2400

        avrdude -C avrdude.conf -c ftbb -P ft0 x -B 300 -p t44 -q

        avrdude: BitBang OK
        avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
        avrdude: drain OK

        ft245r: bitclk 4800 -> ft baud 2400
        avrdude: ft245r_program_enable: failed
        avrdude: initialization failed, rc=-1

        тут в аврдуде косяк или я что то не так настроил?

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