Cc1101 von Ebay

Begonnen von stim, 17 Juni 2014, 20:46:24

Vorheriges Thema - Nächstes Thema

juergs

#945

ZitatZeit für einen Reboot ist. Danach wird er laufen.
... der ist gut  :) :) :) :)

Zitat#if !defined(clock_prescale_set) && __AVR_LIBC_VERSION__  < 10701UL
#  warning "avr/power.h needs patching for prescaler functions to work."
#  warning "for the m32u4 add __AVR_ATmega32U4__ for cpu types on prescale block"
#  warning "for the m32u2 add __AVR_ATmega32U2__ for cpu types on prescale block"
#endif

Diese Meldung war nicht dabei?

Ubuntu-VM unter Windows?

juergs

#946
Noch eine Anmerkung zum DFU-Bootloader, der benötigt den HWB-Pin schaltbar,
der ist, glaube ich im Arduino fest auf Lowlevel gelegt und per Fuse disabled ...

ZitatAVRDude download
FLIP Linux Install
setenv is used by tcsh. With bash you do:
export ACEDB_MACHINE=LINUX_4
Fix JRE run error in FLIP
Turns out FLIP under Linux is garbage and doesn't support the ATMega32U4. Wish I could get back those two hours of my life.

Hier lohnt evtl. auch mal ein Blick rein....
https://forum.fhem.de/index.php/topic,51535.0.html

Dort hatte ich F_CPU auch verändert ...
Zitatund F_CPU ist im makefile auf 16000000 gesetzt.

Ausprobieren ...


e-nighthawk

Zitat von: juergs am 09 Mai 2017, 21:39:15
Hm, sieht eigentlich gut aus ... Fuses auch Ok.

Welche Arduino Version? Mal ein "make clean" probieren ...

Wie finde ich die Version heraus? Auf dem Board steht "Pro Micro". Das Board ist blau.

Zitat von: RaspiLED am 09 Mai 2017, 21:40:19
Hi,
dieser enumerate Fehler sagt, dass es Zeit für einen Reboot ist. Danach wird er laufen. Ist bei mir auch so, wenn ich gefühlt den 15sten Stick reinstecke, dann geht es nicht mehr.
Gruß Arnd

Edit: Wenn man den Fahler googled findet man folgende Lösungen:
A) Stromversorgung reicht nicht -> aktiver USB Hub
B) Nur USB 1.1 Device -> Bootparameter für USB 1.1 only setzen
C) Anderes USB Kabel nutzen

Tatsächlich haben  A) und C) bei mir auch schon geholfen. Aber ich schwöre der Reboot hilft mir in 100% der Fälle, wo der Arduino Nano mit FTDI erkannt wurde und nach dem flashen den Enumerate Fehler bringt!

Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...

A) Fehler passiert am PC, mit einem USB Steckplatz direkt auf dem Mainboard genauso wie an einem aktiven USB Hub und am Raspberry Pi. Den Pi habe ich sogar gerade extra noch mal neugestartet, aber die Meldung bleibt die selbe.
B) Hätte ich dann mit dem "Hallo Welt"-Sketch nicht das selbe Problem? Er wird ja normalerweise korrekt erkannt - nur halt nicht mit irgendwas CUL-artigem im Flash Speicher.
C) Ich habe vier verschiedene USB Kabel ausprobiert, u.a. das, das mit dem "Hallo Welt"-Sketch funktioniert. Mit jedem kommt der enumerate Fehler.

e-nighthawk

Zitat von: juergs am 09 Mai 2017, 21:53:00
Hier lohnt evtl. auch mal ein Blick rein....
https://forum.fhem.de/index.php/topic,51535.0.html

Dort hatte ich F_CPU auch verändert ...
Ausprobieren ...

Danke! Mit
F_CPU = 16000000
funktioniert es.


[  461.520877] usb 1-1.2: new full-speed USB device number 10 using dwc_otg
[  461.669164] usb 1-1.2: New USB device found, idVendor=03eb, idProduct=204b
[  461.669176] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[  461.669185] usb 1-1.2: Product: CUL-ARDUINO433
[  461.669192] usb 1-1.2: Manufacturer: busware.de
[  461.674309] cdc_acm 1-1.2:1.0: ttyACM1: USB ACM device


:)

RaspiLED

Juergs rocks!

Ich mache jetzt eine Testreihe bei meinem enumerate Fehler und frage bei Dir mit DMESG Logs nach ;-)
Gruß Arnd


Raspi2 mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, Bravia, ...
Raspberry Pi mit FHEM, CUL, Signalduino, MySensors, HomeBridge, Presence, WifiLight2, Bravia, ...

e-nighthawk

Hallihallo,

meine zwei 3,3 Volt Pro Micros sind mittlerweile eingetroffen und ich melde mich zurück.

Zitat von: juergs am 09 Mai 2017, 21:13:33
Für den CUL bzw. die CUL-Firmware benötigtst Du einen speziellen Bootloader, der eigentlich schon mit dem Chip ausgeliefert wird.
Er nennt sich DFU-Bootloader und wird mit dem Atmel-Fips-Tool via USB auf den Chip geflasht. 
Du benötigst die Micro-Arduino-Variante (Leonardo) der CUL Firmware aus dem Verzeichnis "CUL-ProMicro"

Nun dachte ich mir, ich mache daraus "richtige" CULs - aber wie bekomme ich diesen DFU Bootloader da rauf? Brauche ich dafür wirklich einen ISP Programmierer oder geht das auch anders? Ich habe mir das Atmel Flip Tool schon installiert, aber das meckert nur "AtLibUsbDfu.dll not found." - soweit meine Recherchen ergeben haben, liegt das daran, dass derzeit der Arduino Bootloader im Flash ist.
Falls ein ISP Programmierer her muss, würde dieser gehen?
Micro USB Tiny AVR ISP 5V ATtiny44 USBTinyISP Programmer For Arduino Bootloader

juergs

Schau mal hier unter "Bootloader" nach ....
Anleitung
Insbesondere auf die HWB-Belegung....

e-nighthawk

#952
Puh, da muss ich heute Abend zuhause erstmal rumprobieren. Wenn ich das richtig sehe, ist der HWB Pin nicht ausgeführt und ich muss direkt an das Beinchen vom Chip dran, oder? Andererseits habe ich einem Schaltplan gesehen, dass der Pin bei einem Pro Micro immer auf GND liegt... Das würde ja passen - allerdings habe ich gestern bei diversen Resets nie ein "ATmega 32U4 DFU" Gerät in Windows gesehen. Ich bin verwirrt, aber danke wieder vielmals für den Hinweis in die richtige Richtung. :)

Edit: Hmm, könnte ich das Bootverhalten evtl. mit der HWBE Fuse steuern? Ich frage lieber, denn an den Fuses will ich lieber nicht einfach so ohne die geringste Ahnung herumpfuschen.

juergs

Hier ist was Ähnliches zum Thema Bootloader zu finden:
https://forum.fhem.de/index.php/topic,51535.0.html

Omega-5

Zitat von: e-nighthawk am 31 Mai 2017, 11:25:26
Wenn ich das richtig sehe, ist der HWB Pin nicht ausgeführt und ich muss direkt an das Beinchen vom Chip dran, oder? Andererseits habe ich einem Schaltplan gesehen, dass der Pin bei einem Pro Micro immer auf GND liegt... Das würde ja passen - allerdings habe ich gestern bei diversen Resets nie ein "ATmega 32U4 DFU" Gerät in Windows gesehen. Ich bin verwirrt, aber danke wieder vielmals für den Hinweis in die richtige Richtung. :)

Die Unterlagen auf die du dich beziehst sind von SparkFun. Da dein Board blau ist wird es wohl irgend ein Nachbau sein. Der enthält evtl. keinen Bootloader. Sparkfun benutzt einen modifizierten Bootloader, der vom Atmel-Bootloader abweicht. Erklärung gibt es hier.

Gruß Friedrich
RaspberryPi2, nanoCUL, 3x DS18B20, FS20: 4x Funk-Schalter ST-4, LaCrosseGW,
HomeMatic: HMLAN, HM-WDS10-TH-O, HM_MYS_RelaisBoard,
I2C: HYT221 über modifiziertes Modul I2_I2C_SHT21.pm (Q&D),

e-nighthawk

Die Erklärung zum Sparkfun Bootloader hatte ich auch gesehen und auch schon ausprobiert, ob 2x kurz hintereinander Reset ein anderes Verhalten auslöst, aber dem ist leider nicht so. Scheinbar habe ich also nicht den Sparkfun Bootloader auf dem Gerät. Und ja, du vermutest richtig, es handelt sich um irgendeinen billigen Clone aus China. Ich habe mein Multimeter an das HWB Beinchen und den GND Pin gehalten, 0,4 Ohm. Die sind also irgendwie verbunden.
Die Fuses sehen ab Werk so aus:
avrdude: safemode: Fuses OK (E:F3, H:99, L:5E)

HWBE ist also schon gesetzt. Ich habe versucht dieses via

# avrdude -pm32u4 -cavr109 -P/dev/ttyACM1 -b57600 -v -U efuse:w:0xFB:m

zu entfernen, das hat aber nicht geklappt.

avrdude: Device signature = 0x1e9587
avrdude: safemode: lfuse reads as 5E
avrdude: safemode: hfuse reads as 99
avrdude: safemode: efuse reads as F3
avrdude: reading input file "0xFB"
avrdude: writing efuse (1 bytes):

Writing |                                                    | 0% 0.00s ***failed;
Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xFB:
avrdude: load data efuse data from input file 0xFB:
avrdude: input file 0xFB contains 1 bytes
avrdude: reading on-chip efuse data:

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

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0xf3 != 0xfb
avrdude: verification error; content mismatch

avrdude: safemode: lfuse reads as 5E
avrdude: safemode: hfuse reads as 99
avrdude: safemode: efuse reads as F3
avrdude: safemode: efuse changed! Was fb, and is now f3
Would you like this fuse to be changed back? [y/n] n
avrdude: safemode: Fuses OK (E:FB, H:99, L:5E)


Zu versuchen BOOTRST zu setzen traue ich mich nicht, denn ich habe gelesen, dass man das ohne ISP nicht wieder entfernt bekommt.

Langsam frage ich mich, ist mein Vorhaben einen "echten" CUL nachzubauen so ungewöhnlich? Wie machen andere das?

juergs

#956
Du  hast den "steinigen" Weg gewählt.

1.) der orginal CUL32U4 läuft mit 8MHz der Micro mit 16MHz -> neu kompilieren!
2.) dann den Bootloader ändern.
3.) Denke an die Sequenz HWB + Reset drücken und Reset und danach HWB loslassen .... Vorher den DFU-Booloader flashen und die Fuses richtig setzen.

Warum nimmst Du nicht einfach das passende Image und gut?

e-nighthawk

Pro Micros mit 8 MHz habe ich ja mittlerweile - neu kompilieren brauche ich also nicht mehr unbedingt.

Warum nicht das ProMicro Image.. ich nenne es mal eine Kombination aus Spaß am Basteln und Verstehen, Ehrgeiz und Perfektionismus. Klar, mit dem ProMicro Image wäre ich schon lange fertig - das habe ich ja auf das 16 MHz Gerät auch schon drauf geflasht bekommen, da weiß ich wie das geht. Jetzt möchte ich herausfinden, wie das mit DFU Bootloader und "original" Image geht. :D

Wasserwerk33

Hallo Leute

Ich wollte mich an mein erstes selbstgebautes modul rantrauen. Nur ich habe sowas von keine Ahnung davon. Also komplett neuland für mich.
Also bitte nicht direkt sauer sein. ;)


Im Anhang habe ich ein Bild von meinen Beiden modulen gestellt. Ich möchte nachher damit steckdosen schalten können.

MFG

Horti

Zitat von: Wasserwerk33 am 30 Juni 2017, 19:45:34
Ich wollte mich an mein erstes selbstgebautes modul rantrauen. Nur ich habe sowas von keine Ahnung davon. Also komplett neuland für mich.
Also bitte nicht direkt sauer sein. ;)


Im Anhang habe ich ein Bild von meinen Beiden modulen gestellt. Ich möchte nachher damit steckdosen schalten können.

Gut zu wissen, halte uns auf dem Laufenden über den Fortschritt  ;)