Sanguinololu na Atmega1284 bez P

Tomek10221
Posty: 19
Rejestracja: 14 sie 2014, 11:09

Sanguinololu na Atmega1284 bez P

Postautor: Tomek10221 » 06 paź 2014, 20:32

Witam!
Niedawno polutowałem sobie sterownik sanguinololu 1.3a. Do którego zamówiłem Atmegę 1284 (BEZ P) ponieważ nie było innej. Bootloader udało mi się wgrać (musiałem w AVRdude pozamieniać sygnatury dla atmegi 1284p). I teraz natrafiłem na problem prze który nie mogę przeskoczyć, a mianowicie brak komunikacji pomiędzy komputerem a sanguino a tym samym brak moożliwości wgrania firmware do niego. Komunikat o błędzie jest taki

avrdude: stk500_getsync(): not in sync: resp=0x00


Dodam jeszcze, ze w arduino wybrałem płytkę Sanguino 16Mhz i ustawiłem poprawny port COM
Driver do ftdi232 także wgrałem i komputer poprawnie mi go wykrywa w menadżerze urządzeń.
Dokopałem się do kodu źródłowego bootloadera i zauważyłem w nim że nie zgadza się sygnatura. Dla Atmegi 1284p jest to 0x1e 0x97 0x05 a dla mojej 1284 (bez P) jest to 0x1e 0x97 0x06.

I tu moje pytanie czy ten konflikt sygnatur może być źródłem mojego problemu?
Jak skompilować plik źródłowy bootloadera i zmienić w nim sygnaturę na tą dla mojej Megi?

Pozdrawiam!

Awatar użytkownika
imrahil
Posty: 989
Rejestracja: 27 paź 2012, 19:06
Lokalizacja: Bydgoszcz
Kontaktowanie:

Re: Sanguinololu na Atmega1284 bez P

Postautor: imrahil » 06 paź 2014, 20:35

problem tak samo stary jak konstrukcja Sangu.
napewno pojawi się zaraz pełno pomysłów jak to naprawić, ale ja znam jeden który działa na 100% - kup sobie programator usbasp i olej wgrywanie softu przez usb :)
pozdrawiam
Jarek

Tomek10221
Posty: 19
Rejestracja: 14 sie 2014, 11:09

Re: Sanguinololu na Atmega1284 bez P

Postautor: Tomek10221 » 06 paź 2014, 20:39

Mam USBasp i właśnie nie wiem jak wgrać przez niego Marlina do Sangu.

tplewa
Posty: 100
Rejestracja: 22 wrz 2014, 11:09
Lokalizacja: Warszawa

Re: Sanguinololu na Atmega1284 bez P

Postautor: tplewa » 06 paź 2014, 20:45

Mozesz przekompilowac bootloader ;) zmieniajac sygnature w tej sekcji:

Kod: Zaznacz cały

#elif defined __AVR_ATmega1284P__
#define SIG2    0x97
#define SIG3    0x05
#define PAGE_SIZE       0x080U   //128 words


Mozna zmienic plik make i dodac nowa sekcje define dla wersji bez P ;)

Troche zabawy z GCC itp.

A jak masz USBASP i zainstalowane AVRDUDE to sciagnij sobie graficzna nakladke:
http://avr8-burn-o-mat.aaabbb.de/avr8_b ... ui_en.html

Wybierasz procesor, FUSE nie ruszasz ;) wybierasz w FLASH plik z firmware i dajesz Write i potem ewentualnie Verify

Tomek10221
Posty: 19
Rejestracja: 14 sie 2014, 11:09

Re: Sanguinololu na Atmega1284 bez P

Postautor: Tomek10221 » 06 paź 2014, 20:47

Próbowałem tak ale kompilator wyrzuca coś takiego

Kod: Zaznacz cały

> "make.exe" all
make.exe: Nothing to be done for `all'.

> Process Exit Code: 0
> Time Taken: 00:01


Dodam ze moim IDE jest WinAVR

Awatar użytkownika
imrahil
Posty: 989
Rejestracja: 27 paź 2012, 19:06
Lokalizacja: Bydgoszcz
Kontaktowanie:

Re: Sanguinololu na Atmega1284 bez P

Postautor: imrahil » 06 paź 2014, 20:53

IMHO: jak masz programator to bootloader Ci nie potrzebny - kompiluj i ładuj HEX'y prosto na proca :)

a fusy to trzeba czasem ustawić - jak masz czysty nowy procek...
pozdrawiam
Jarek

tplewa
Posty: 100
Rejestracja: 22 wrz 2014, 11:09
Lokalizacja: Warszawa

Re: Sanguinololu na Atmega1284 bez P

Postautor: tplewa » 06 paź 2014, 20:57

aaa sorry burnomatic nie wspiera tego procesora to mozna http://sourceforge.net/projects/avrdude-gui/

WinAVR to nie IDE... to toolchain ;)

Cos z scierzkami... dajesz make bedac w katalogu z botloaderem gdzie jest plik make ?

i daj make atmega1284p

Co du FUSE to jak wgral bootloader to sa juz ustawione i lepiej nie tykac jak sie nie wie co i jak bo przelaczy generator i zblokuje sobie dostep po ISP...

Tomek10221
Posty: 19
Rejestracja: 14 sie 2014, 11:09

Re: Sanguinololu na Atmega1284 bez P

Postautor: Tomek10221 » 06 paź 2014, 21:00

Sorki nie sprecyzowałem IDE pochodzi z pakietu WinAVR a jest to Programmers Notepad.
Makefile jest w tym folderze co bootloader.

Hexy wgrywam przez program SinaProg który obsługuje Atmega1284p.

tplewa
Posty: 100
Rejestracja: 22 wrz 2014, 11:09
Lokalizacja: Warszawa

Re: Sanguinololu na Atmega1284 bez P

Postautor: tplewa » 06 paź 2014, 21:09

No to wgrywaj tego HEX-a flash po ISP jak masz czym ;) a jak sie upierasz na bootloader to moge ci go przekompilowac ale dopiero za jakies 20 minut :) bo szkoda czasu dochodzic gdzie jest problem z tym WinAVR czy PATH zle ustawiony czy cos innego ;)

Tomek10221
Posty: 19
Rejestracja: 14 sie 2014, 11:09

Re: Sanguinololu na Atmega1284 bez P

Postautor: Tomek10221 » 06 paź 2014, 21:12

Jak mam wgrać hexa jak go nie mam ?
Nie wiem jak go skompilować gdyż ponieważ wywala mi oto taki komunikat

Kod: Zaznacz cały

> "make.exe" all
make.exe: *** No rule to make target `applet/wiring.o', needed by `applet/Marlin.elf'.  Stop.

> Process Exit Code: 2
> Time Taken: 00:01


Wróć do „Sanguinololu”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości