Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

Firmware für Gen7 1.5 ..

geschrieben von linuxer 
Re: Firmware für Gen7 1.5 ..
22. February 2016 09:05
OK ich hab's nochmal gemacht.

Wenn ich den 1284 (Ohne P) Als Prozessortyp angebe bekomme ich beim Build in der Konsole....
Value key TX_ENABLE_PIN not found in GUI.
Value key RX_ENABLE_PIN not found in GUI.

....und im Codefenster von configtool erscheint folgender Fehler.

avr-gcc -c -DF_CPU=20000000UL -mmcu=atmega1284 -Wall -Wstrict-prototypes -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Winline -fno-move-loop-invariants -fno-tree-scev-cprop -Os -ffunction-sections -finline-functions-called-once -mcall-prologues -Wa,-adhlns="/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/home.al" -save-temps=obj -o "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/home.o" "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/home.c"
In file included from /usr/lib/avr/include/avr/pgmspace.h:88:0,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/arduino.h:23,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/config_wrapper.h:8,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/dda.h:6,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/home.c:8:
/usr/lib/avr/include/avr/io.h:428:6: warning: #warning "device type not defined" [-Wcpp]
 #    warning "device type not defined"
      ^

avr-gcc -c -DF_CPU=20000000UL -mmcu=atmega1284 -Wall -Wstrict-prototypes -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Winline -fno-move-loop-invariants -fno-tree-scev-cprop -Os -ffunction-sections -finline-functions-called-once -mcall-prologues -Wa,-adhlns="/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/serial-arm.al" -save-temps=obj -o "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/serial-arm.o" "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/serial-arm.c"

avr-gcc -c -DF_CPU=20000000UL -mmcu=atmega1284 -Wall -Wstrict-prototypes -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Winline -fno-move-loop-invariants -fno-tree-scev-cprop -Os -ffunction-sections -finline-functions-called-once -mcall-prologues -Wa,-adhlns="/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/timer-arm.al" -save-temps=obj -o "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/timer-arm.o" "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/timer-arm.c"

avr-gcc -c -DF_CPU=20000000UL -mmcu=atmega1284 -Wall -Wstrict-prototypes -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Winline -fno-move-loop-invariants -fno-tree-scev-cprop -Os -ffunction-sections -finline-functions-called-once -mcall-prologues -Wa,-adhlns="/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/delay-arm.al" -save-temps=obj -o "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/delay-arm.o" "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/delay-arm.c"

avr-gcc -c -DF_CPU=20000000UL -mmcu=atmega1284 -Wall -Wstrict-prototypes -std=gnu99 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Winline -fno-move-loop-invariants -fno-tree-scev-cprop -Os -ffunction-sections -finline-functions-called-once -mcall-prologues -Wa,-adhlns="/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/pff_diskio.al" -save-temps=obj -o "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/build/pff_diskio.o" "/home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.c"
In file included from /usr/lib/avr/include/avr/pgmspace.h:88:0,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/arduino.h:23,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/config_wrapper.h:8,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/sd.h:8,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.h:6,
                 from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.c:12:
/usr/lib/avr/include/avr/io.h:428:6: warning: #warning "device type not defined" [-Wcpp]
 #    warning "device type not defined"
      ^
In file included from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.c:17:0:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h: In function ‘spi_select_sd’:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:33:17: error: ‘PORTD’ undeclared (first use in this function)
   WRITE(SD_CARD_SELECT_PIN, 0);
                 ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:33:17: note: each undeclared identifier is reported only once for each function it appears in
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:33:32: error: ‘PIND2’ undeclared (first use in this function)
   WRITE(SD_CARD_SELECT_PIN, 0);
                                ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h: In function ‘spi_deselect_sd’:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:38:17: error: ‘PORTD’ undeclared (first use in this function)
   WRITE(SD_CARD_SELECT_PIN, 1);
                 ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:38:32: error: ‘PIND2’ undeclared (first use in this function)
   WRITE(SD_CARD_SELECT_PIN, 1);
                                ^
In file included from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.c:17:0:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h: In function ‘spi_speed_100_400’:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:83:3: error: ‘SPCR’ undeclared (first use in this function)
   SPCR = 0x53;
   ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h: In function ‘spi_speed_max’:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:90:3: error: ‘SPCR’ undeclared (first use in this function)
   SPCR = 0x50; // See list at spi_speed_100_400().
   ^
In file included from /home/thomas/entwicklung/reprap/Teacup_Firmware_back/pff_diskio.c:17:0:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h: In function ‘spi_rw’:
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:106:3: error: ‘SPDR’ undeclared (first use in this function)
   SPDR = byte;
   ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:107:57: error: ‘SPSR’ undeclared (first use in this function)
   loop_until_bit_is_set(SPSR, SPIF);
                                                         ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:107:75: error: ‘SPIF’ undeclared (first use in this function)
   loop_until_bit_is_set(SPSR, SPIF);
                                                                           ^
/home/thomas/entwicklung/reprap/Teacup_Firmware_back/spi.h:109:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
RC = 1 - Build terminated
Build terminated abnormally.


Kann es sein das bei der Auswahl des Prozessortypes im Script ein Fehler ist ?
Wenn ich den 1284P angebe läuft das Build-Script ohne Fehler durch.
Ändere ich den Prozessortyp in 1284 (ohne P) dann bekomme ich obigen Fehler angezeigt.
Re: Firmware für Gen7 1.5 ..
22. February 2016 09:43
Bei mir läuft der ohne P auch durch. Ich habe hier die letzte AVR-GCC (ich glaube irgendwas mit 5.x).


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Firmware für Gen7 1.5 ..
22. February 2016 09:59
OK das muss ich Morgen mal gleich testen was auf meinem Rechner läuft.
Jetzt muss ich mich um die Familie kümmern sonst gibt's Streß. winking smiley
Re: Firmware für Gen7 1.5 ..
23. February 2016 05:38
Morgen,

Ich habe die ganze Geschichte auf meinem Laptop mal angestartet und dort lief der Build sauber durch und hat mir das .HEX erstellt. Leider aber das gleiche Problem wie am anderen Rechner. Timeout.
Habe dann mal Spasses halber den 1284 aus dem Board genommen und das Upload angestartet, die Fehlermeldung war die gleiche, Timeout.
Sollte da nicht was anderes kommen, von wegen "no response", oder so ?

Also bin ich die ganze Verdrahtung durch gegangen, konnte aber keinen Fehler finden.
Die wichtigsten sind doch..
VCC und GND
RX und TX
sowie Reset, oder ?
Sowie natürlich 12 und 13 mit den C's und dem Quarz

Die Spannungen liegen an Pin 10 und 30 an. Pin 11 und 31 liegen auf Masse.
Pin 9, Reset liegt auch auf 5,1V und geht beim Reset über den Reset-Taster auf 0V

Ich habe auf dem Sockel des 1284, RX - TX gebrückt und bekam im Terminal auch das Echo.
Der MCP2200 steuert demnach dann den Controller an.

Das ganze über die Arduino-Einstellung funktioniert bei mir gar nicht weil er dauernd mosert das er den Pfad nicht findet. Ach das eintragen des Pfades in den .c Files führt nicht zum Ziel.
Er kompiliert dann zwar aber bringt später doch den gleichen Fehler wie ich oben schon gepostet habe.

Es ist immer von einem Bootloader die Rede. Was hat es damit auf sich ?
Mein Atmega kommt direkt aus dem Laden und hat keinen. Kann ich denn den dann einfach in den Sockel stecken und das configtool verwenden ?
Re: Firmware für Gen7 1.5 ..
23. February 2016 07:18
Lese dich mal hier rein: [reprap.org]


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Firmware für Gen7 1.5 ..
24. February 2016 03:09
Morgen

Aha, also doch mit Bootloader. smiling smiley

1. Problem.
Wenn ich folgendermaßen vorgehe..

Quote

Note: for Linux/Unix users, if you install using your package manager it may be difficult to find your arduino/hardware folder, and even after you find it you might not be able to copy into it. Just make a "hardware" folder in the "sketchbook" folder of your home directory and put the Gen7 support folder in there. The "sketchbook" folder appears when you run the IDE the first time.

Also im Verzeichnis ~/sketchbook/hardware/Gen7..
mit den Hexdateien ..

bootloader-1284P-16MHz.hex
bootloader-1284P-20MHz.hex
bootloader-644-16MHz.hex
bootloader-644-20MHz.hex
bootloader-644P-16MHz.hex
bootloader-644P-20MHz.hex

..und Arduino neu starte, werden die nicht angezeigt.
Zumal der von mir benötigte 1284 (Ohne P) als Bootloader .hex nicht vorliegt.

Tut mir leid wenn's andauernd Probleme gibt bei mir. sad smiley
Mein Englisch ist nicht der Hit und die Übersetzung von Google kann man in der Pfeife rauchen.
Desweiteren bin/war ich es gewohnt den avrdude über die Kommandozeile zu fahren, nun mischt hier noch arduino mit, was mich etwas verwirrt.
Wieso brauche ich den wenn ich den Bootloader als Hex-Datei vorliegen habe ?
Also habt bitte Geduld mit mir smiling smiley

Wie sage ich der Arduino-IDE (Ich habe die 1:1.0.5 + dfsg2-2) wo er die Bootloader Dateien findet ?
Nochmal zur Erinnerung, ich benutze Kubuntu 14.04.
Re: Firmware für Gen7 1.5 ..
24. February 2016 03:24
Ok, Kommando zurück.
Teil 1 erledigt.
Die Bootloader tauchen jetzt im Arduino auf.
Ich musste das komplette Unterverzeichnis Gen7 kopieren und nicht nur der letzte Teil. Sorry, wer lesen kann ist im Vorteil. smiling smiley
Bleibt trotzdem noch die Frage welchen Bootloader ich für den 1284 (Ohne P) nehmen kann.
Ich vermute mal keinen, oder ?
Re: Firmware für Gen7 1.5 ..
24. February 2016 05:20
Quote
linuxer
Wie sage ich der Arduino-IDE (Ich habe die 1:1.0.5 + dfsg2-2) wo er die Bootloader Dateien findet ?

Gar nicht. Schmeiss diese IDE einfach beiseite und installiere statt dessen gcc-avr, avr-libc und avrdude. Leider ist bei sehr vielen Leuten fest im Hirn verdrahtet, dass man Firmwaren mit Arduino bauen muss. Geht aber ohne Arduino einfacher.

Quote
linuxer
Bleibt trotzdem noch die Frage welchen Bootloader ich für den 1284 (Ohne P) nehmen kann.

Die korrekte Lösung ist, den Bootloader für den 1284 zu bauen. Quellcode gibt's im Gen7-Repo: [github.com] Dort dann nach Erwähnungen des 1284P suchen und entsprechend für ohne P ergänzen. So auf den ersten Blick sind das mal 2 Zeilen im make.sh, ein paar Zeilen in stk500v2bootloader/Makefile und in stk500v2bootloader/stk500v2boot.c. Die SIGNATURE_BYTES findet man durch ausprobieren. Wenn die nicht passt, meldet der avrdude welche Signatur der Bootloader und welche der Chip hat.

Die "billige" Variante ist, den Bootloader für den 1284P zu nehmen, der funktionsidentisch, aber eben mit anderer Signatur ist. Den sollte man mit '-F' mit dem avrdude drauf zwängen können. Danach sollte der Chip wie ein 1284P funktionieren und auch dessen Signatur haben.

Der Rest findet sich dann hier: [reprap.org]

Und ja, man braucht ein Programmiergerät oder einen zum Programmiergerät programmierten Arduino. Ohne das geht's nicht, ein fabrikfrischer ATmega akzeptiert eine Programmierung nur über SPI.

1-mal bearbeitet. Zuletzt am 24.02.16 05:21.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Firmware für Gen7 1.5 ..
24. February 2016 07:13
Hallo Traumflug,

ok das ist mal ne klare aussage. smiling smiley
Isp-Programmer ist kein Problem. Ich habe mir letztes Jahr den von Ullrich Radig nachgebaut.
Das ich die Arduino-IDE nicht brauche erfreut mich schon mal, Ich arbeite lieber mit der Konsole.

Auch werde ich erst mal die "billige" Variante bevorzugen, bevor ich mich durch Deinen Source-Code ackere. Wenn's nicht geht bleibt mir die andere Option immer noch.

Danke smiling smiley

1-mal bearbeitet. Zuletzt am 24.02.16 11:12.
Re: Firmware für Gen7 1.5 ..
24. February 2016 07:42
Danke hat alles funktionert.
Bootloader ist drauf und geflasht habe ich es auch. smiling smiley
Zumindest gab es beim flashen über das configtool keinen Fehler.

smileys with beer
Re: Firmware für Gen7 1.5 ..
24. February 2016 08:34
Super das es endlich läuft smileys with beer


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: Firmware für Gen7 1.5 ..
24. February 2016 11:13
Jop und Danke für die Unterstützung smiling smiley
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen