Не работает optiboot-подобные загрузчики на Arduino Mini Pro 328 16МГц/5в

b707
Offline
Зарегистрирован: 26.05.2017

lemarkul пишет:

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

ну ОК, значит халявщик не вы, а "опытный товарищ"

Izvekoff
Offline
Зарегистрирован: 02.03.2020

b707 пишет:

Izvekoff пишет:

восьмой версии у меня нету, только та, что в MiniCore )))

Поискал тщательнее, оказалось, что есть )))

уверены, что она на 57600 ? - по умолчанию оптибут собирается на 115200. А то ведь этот вежливый товарищ сейчас вернется с воплями, что ему бракованый товар подсунули :))

не уверен, но у меня других версий нет, для 8-й только эта, на 16 мегагерц, с другой стороны есть та, что точно на 57600, но версия оптибута там 5-я

Посмотрел, что там на Гитхабе, вроде не совсем то, что у меня в IDE
 

:107E000001C0DEC0112484B7882361F0982F9A70D6
:107E1000923041F081FF02C097EF94BF282E80E09E
:107E2000BAD0EEC085E08093810082E08093C000EC
:107E300088E18093C10086E08093C20080E1809356
:107E4000C4008EE0A8D0259A86E020E33CEF91E0C4
:107E5000309385002093840096BBB09BFECF1D9A83
:107E6000A8954091C00047FD02C0815089F7EE24DB
:107E7000E39495E0D92E21E1C22E81D0813471F4B2
:107E80007ED0182F8ED0123811F481E005C0113841
:107E900011F488E001C083E06BD067C0823411F434
:107EA00084E103C0853419F485E083D05EC0853554
:107EB00039F465D0C82F63D0D82FCC0FDD1F54C044
:107EC000863521F484E075D080E0E6CF843609F071
:107ED0002EC055D054D0F82E52D0B82E00E011E06C
:107EE0004ED0F80181938F01FE12FACF5AD0F5E4FB
:107EF000BF1201C0FFCF83E0FE0187BFE89507B640
:107F000000FCFDCFA0E0B1E0FE018D919D910C0140
:107F1000E7BEE89511243296FA12F7CFFE01D7BEDC
:107F2000E89507B600FCFDCFC7BEE8951EC08437B4
:107F300071F425D024D0F82E22D033D08E01F80150
:107F400085918F0115D0FA94F110F9CF0EC08537C5
:107F500039F427D08EE10CD085E90AD08FE09CCF90
:107F6000813511F488E017D01CD080E101D085CF95
:107F70009091C00095FFFCCF8093C600089580913A
:107F8000C00087FFFCCF8091C00084FD01C0A89590
:107F90008091C6000895E0E6F0E098E19083808348
:107FA0000895EDDF803219F088E0F5DFFFCF84E13E
:107FB000DFCFCF93C82FE3DFC150E9F7CF91F1CFE7
:107FC000FC010A0167BFE895112407B600FCFDCF4C
:107FD000667029F0452B19F481E187BFE895089573
:027FFE00010878
:0400000300007E007B
:00000001FF

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

lemarkul пишет:

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

ну ОК, значит халявщик не вы, а "опытный товарищ"

Может просветишь, как собрать свой оптибут под UBUNTU?

у меня для OPTIBOOTа 8 версии для скорости 57600 получился такой загрузчик (не проверял, только скомпилировал)

:107E000001C0DEC0112484B7882361F0982F9A70D6
:107E1000923041F081FF02C097EF94BF282E80E09E
:107E2000BAD0EEC085E08093810082E08093C000EC
:107E300088E18093C10086E08093C20080E1809356
:107E4000C4008EE0A8D0259A86E020E33CEF91E0C4
:107E5000309385002093840096BBB09BFECF1D9A83
:107E6000A8954091C00047FD02C0815089F7EE24DB
:107E7000E39495E0D92E21E1C22E81D0813471F4B2
:107E80007ED0182F8ED0123811F481E005C0113841
:107E900011F488E001C083E06BD067C0823411F434
:107EA00084E103C0853419F485E083D05EC0853554
:107EB00039F465D0C82F63D0D82FCC0FDD1F54C044
:107EC000863521F484E075D080E0E6CF843609F071
:107ED0002EC055D054D0F82E52D0B82E00E011E06C
:107EE0004ED0F80181938F01FE12FACF5AD0F5E4FB
:107EF000BF1201C0FFCF83E0FE0187BFE89507B640
:107F000000FCFDCFA0E0B1E0FE018D919D910C0140
:107F1000E7BEE89511243296FA12F7CFFE01D7BEDC
:107F2000E89507B600FCFDCFC7BEE8951EC08437B4
:107F300071F425D024D0F82E22D033D08E01F80150
:107F400085918F0115D0FA94F110F9CF0EC08537C5
:107F500039F427D08EE10CD085E90AD08FE09CCF90
:107F6000813511F488E017D01CD080E101D085CF95
:107F70009091C00095FFFCCF8093C600089580913A
:107F8000C00087FFFCCF8091C00084FD01C0A89590
:107F90008091C6000895E0E6F0E098E19083808348
:107FA0000895EDDF803219F088E0F5DFFFCF84E13E
:107FB000DFCFCF93C82FE3DFC150E9F7CF91F1CFE7
:107FC000FC010A0167BFE895112407B600FCFDCF4C
:107FD000667029F0452B19F481E187BFE895089573
:027FFE00010878
:0400000300007E007B
:00000001FF

 

Делал как тут советуют

Не! Видимо что-то с компиляцией на иную скорость не то, пишет что:
 

optiboot.c:386:6: warning: #warning BAUD_RATE off by greater than 2% [-Wcpp]
     #warning BAUD_RATE off by greater than 2%

 

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

Не! Видимо что-то с компиляцией на иную скорость не то, пишет что:
 

optiboot.c:386:6: warning: #warning BAUD_RATE off by greater than 2% [-Wcpp]
     #warning BAUD_RATE off by greater than 2%

 

компиляция тут не причем, компилятор просто предупреждает, что точно выдержать заданную скорость UART невозможно, отклонение составит более 2%. Дело в том, что точно можно выдержать только некоторые скорости передачи. остальные задаются лишь приблизительно.

Но для стандартной скорости 57600 это странно, проверьте, может вы в параметре BAUD_RATE опечатались?  или в частоте МК?

Izvekoff
Offline
Зарегистрирован: 02.03.2020

del

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

b707 пишет:

компиляция тут не причем, компилятор просто предупреждает, что точно выдержать заданную скорость UART невозможно, отклонение составит более 2%. Дело в том, что точно можно выдержать только некоторые скорости передачи. остальные задаются лишь приблизительно.

Но для стандартной скорости 57600 это странно, проверьте, может вы в параметре BAUD_RATE опечатались?  или в частоте МК?

Если собираю без параметров, то всё пучком:

make atmega328

b707
Offline
Зарегистрирован: 26.05.2017

ua6em пишет:

Если собираю без параметров, то всё пучком:

это вы не "без параметров" собираете. а с теми параметрами. что прописаны в Makefile. Вы 57600 то как задавали. разве не makeFile правили?

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

make atmega328 BAUD_RATE=57600

BEST!!! ))) optiboot with 57600
 

:107E000001C0DEC0112484B7882361F0982F9A70D6
:107E1000923041F081FF02C097EF94BF282E80E09E
:107E2000BAD0EEC085E08093810082E08093C000EC
:107E300088E18093C10086E08093C20082E2809353
:107E4000C4008EE0A8D0259A86E020E33CEF91E0C4
:107E5000309385002093840096BBB09BFECF1D9A83
:107E6000A8954091C00047FD02C0815089F7EE24DB
:107E7000E39495E0D92E21E1C22E81D0813471F4B2
:107E80007ED0182F8ED0123811F481E005C0113841
:107E900011F488E001C083E06BD067C0823411F434
:107EA00084E103C0853419F485E083D05EC0853554
:107EB00039F465D0C82F63D0D82FCC0FDD1F54C044
:107EC000863521F484E075D080E0E6CF843609F071
:107ED0002EC055D054D0F82E52D0B82E00E011E06C
:107EE0004ED0F80181938F01FE12FACF5AD0F5E4FB
:107EF000BF1201C0FFCF83E0FE0187BFE89507B640
:107F000000FCFDCFA0E0B1E0FE018D919D910C0140
:107F1000E7BEE89511243296FA12F7CFFE01D7BEDC
:107F2000E89507B600FCFDCFC7BEE8951EC08437B4
:107F300071F425D024D0F82E22D033D08E01F80150
:107F400085918F0115D0FA94F110F9CF0EC08537C5
:107F500039F427D08EE10CD085E90AD08FE09CCF90
:107F6000813511F488E017D01CD080E101D085CF95
:107F70009091C00095FFFCCF8093C600089580913A
:107F8000C00087FFFCCF8091C00084FD01C0A89590
:107F90008091C6000895E0E6F0E098E19083808348
:107FA0000895EDDF803219F088E0F5DFFFCF84E13E
:107FB000DFCFCF93C82FE3DFC150E9F7CF91F1CFE7
:107FC000FC010A0167BFE895112407B600FCFDCF4C
:107FD000667029F0452B19F481E187BFE895089573
:027FFE00010878
:0400000300007E007B
:00000001FF

 

diff 328_115200.hex 328_57600.hex

 

:4c4
< :107E300088E18093C10086E08093C20080E1809356
---
> :107E300088E18093C10086E08093C20082E2809353


 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

FREQ =24Mhz BAUD_RATE=115200
 

:107E000001C0DEC0112484B7882361F0982F9A70D6
:107E1000923041F081FF02C097EF94BF282E80E09E
:107E2000BAD0EEC085E08093810082E08093C000EC
:107E300088E18093C10086E08093C20089E180934D
:107E4000C4008EE0A8D0259A86E028E43AEF91E0BD
:107E5000309385002093840096BBB09BFECF1D9A83
:107E6000A8954091C00047FD02C0815089F7EE24DB
:107E7000E39495E0D92E21E1C22E81D0813471F4B2
:107E80007ED0182F8ED0123811F481E005C0113841
:107E900011F488E001C083E06BD067C0823411F434
:107EA00084E103C0853419F485E083D05EC0853554
:107EB00039F465D0C82F63D0D82FCC0FDD1F54C044
:107EC000863521F484E075D080E0E6CF843609F071
:107ED0002EC055D054D0F82E52D0B82E00E011E06C
:107EE0004ED0F80181938F01FE12FACF5AD0F5E4FB
:107EF000BF1201C0FFCF83E0FE0187BFE89507B640
:107F000000FCFDCFA0E0B1E0FE018D919D910C0140
:107F1000E7BEE89511243296FA12F7CFFE01D7BEDC
:107F2000E89507B600FCFDCFC7BEE8951EC08437B4
:107F300071F425D024D0F82E22D033D08E01F80150
:107F400085918F0115D0FA94F110F9CF0EC08537C5
:107F500039F427D08EE10CD085E90AD08FE09CCF90
:107F6000813511F488E017D01CD080E101D085CF95
:107F70009091C00095FFFCCF8093C600089580913A
:107F8000C00087FFFCCF8091C00084FD01C0A89590
:107F90008091C6000895E0E6F0E098E19083808348
:107FA0000895EDDF803219F088E0F5DFFFCF84E13E
:107FB000DFCFCF93C82FE3DFC150E9F7CF91F1CFE7
:107FC000FC010A0167BFE895112407B600FCFDCF4C
:107FD000667029F0452B19F481E187BFE895089573
:027FFE00010878
:0400000300007E007B
:00000001FF

 

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

UBUNTU 18 на обоих компьютерах.
Компилятор на одном выкидывает коленца:
 

vr-gcc (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

BAUD RATE CHECK: Desired: 115200, Real: 117647, UBRRL = 16, Difference=2.1%
../../../../tools/avr/bin/avr-gcc -g -Wall -Os -fno-split-wide-types -mrelax -mmcu=atmega328p -DF_CPU=16000000L  -DBAUD_RATE=115200 -DLED_START_FLASHES=3              -c -o optiboot.o optiboot.c
../../../../tools/avr/bin/avr-gcc -g -Wall -Os -fno-split-wide-types -mrelax -mmcu=atmega328p -DF_CPU=16000000L  -DBAUD_RATE=115200 -DLED_START_FLASHES=3            -Wl,--section-start=.text=0x7e00 -Wl,--section-start=.version=0x7ffe -Wl,--relax -nostartfiles -o optiboot_atmega328.elf optiboot.o 
../../../../tools/avr/bin/avr-size optiboot_atmega328.elf
   text	   data	    bss	    dec	    hex	filename
    482	      0	      0	    482	    1e2	optiboot_atmega328.elf
../../../../tools/avr/bin/avr-objcopy -j .text -j .data -j .version --set-section-flags .version=alloc,load -O ihex optiboot_atmega328.elf optiboot_atmega328.hex
../../../../tools/avr/bin/avr-objdump -h -S optiboot_atmega328.elf > optiboot_atmega328.lst
rm optiboot.o

 

Green
Offline
Зарегистрирован: 01.10.2015

Какие тут коленца? На 16 мгц 115200 точно никак не получить.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

То-есть в UNO имеем оптибут 115200 с точностью хуже 2% но этой точности для IDE достаточно

Green
Offline
Зарегистрирован: 01.10.2015

Не для IDE, а для USART.

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Green пишет:

Не для IDE, а для USART.

Для коммуникации с IDE имел ввиду, в оптибуте правда еще и обработчик WDT реализован...
Гайвер для любых частот Клока в своем GyverCore использует одну универсальную прошивку...
в отличии от miniCore, вот в этом и пытаюсь разобраться )))

optiboot 24Mhz 115200
 

:107E300088E18093C10086E08093C20089E180934D

optiboot 16Mhz 115200

:107E300088E18093C10086E08093C20080E1809356

optiboot 16Mhz 57600

:107E300088E18093C10086E08093C20082E2809353

optiboot V8 GyverCore
 

:107E300088E18093C10086E08093C20080E1809356

 

sanekru
Offline
Зарегистрирован: 05.12.2017

Доброго времени!
Не подскажите в чем проблема?

Плата pro mini с камнем 328pu-ph

На стандартном загрузчике естественно не работает wd,
При перепрошивке на uno, minicore, gyver итд...
Wd начинает работать, но тестовый скетч не отмаргивает
Диодом на 13 Пине (вернее загорается в пол накала и горит до перезагрузки), стал разбираться и в итоге в любом состоянии пина digitalRead(13) возвращает 0.
При откате на загрузчик pro mini 16mhz 5v всё работает норм, но естественно не работает wd.
И ещё не могу изменить фьюзы bootlock11 bootlock12, вернее они меняются, нажимаю программировать, выдаёт ок, но после нажимаю чтение и они опять активны!
Программатор USBasp, прошивку не помню, но программатор шил недавно(меньше месяца назад) так что думаю дело не в программаторе

emserg
Offline
Зарегистрирован: 25.01.2016

Зачем пользоваться колесом от телеги, если есть мерседес? Вы смотрели это? https://github.com/MCUdude

Выбор для любого кварца, скорости загрузки. ВСЁ уже давно СДЕЛАНО и отлично работает! Зачем самому лепить горбатого? Чем Вам не нравиться MCUdude?

Best regards.

sanekru
Offline
Зарегистрирован: 05.12.2017

emserg пишет:

Зачем пользоваться колесом от телеги, если есть мерседес? Вы смотрели это? https://github.com/MCUdude

Выбор для любого кварца, скорости загрузки. ВСЁ уже давно СДЕЛАНО и отлично работает! Зачем самому лепить горбатого? Чем Вам не нравиться MCUdude?

Best regards.


Доброго дня!

Нет mcudude я не пробовал, вечером попробую отпишу, спасибо за наводку, но меня мучает вопрос почему у меня плата так себя ведёт прошивкой optiboot, а с прошедшивкой от про мини всё ок? Ведь всё же одинаково в плане фьюзов, только смещается адрес начальной загрузки (что логично), а светодиод на 13 Пине горит в пол накала и digital read не видит true? Весь интернет перерыл, ни у кого такой проблемы нет, неужели у меня камень на плате эксклюзивный ;), во что я не верю, т.к. изначально она нормально работает, чувствую что проблема лежит на поверхности, но знаний видимо не хватает!

sanekru
Offline
Зарегистрирован: 05.12.2017

Вопрос решился!

Ошибка оказалась в скетче.

в setup не было назначение пина, я добавил pinMode(13, OUTPUT); и всё заработало.

Не понятно почему в штатном лоадере не требовался pinMode?

Видимо по умолчанию в optiboot стоит input pull up, а в штатном output, подтвердите кто знает так ли это(хочеться знать для саморазвития)?