Hallo zusammen, ich habe mir sehr günsitg ein Internetkommunikationsmodul als defekt geschossen. Dieses versuche ich jetzt in Gang zu bekommen. Ausgangslage und während des Verkaufs geschilderte Problkematik waren, dass das Modul sich nicht mit der App verbindet. Dieses glit via LAN als auch WLAN. Nach dem Abarbeiten der Aktivierungsreihenfolge -anschließen des VR920 mit EBus und Ethernet LAN, Einstecken des Netzteils des VR920 und nach einiger Zeit einschalten der Heizung- passiert nichts. Die LED im VR920 leuchtet Rot (Laut Anleitung heisst das, dass Verbindung zum Internet bestand, jedoch abgebrochen wurde). Via Ebus wird das Vr920 nicht im VRC700 als "Regelermodul" erkannt (Wobei ich nicht weiss ob das dort aufgeführt werden muss). Folgendes habe ich daraufhin probiert: Ich habe das Modul via Ethernet direkt mit meinem PC vergbunden und den Datenverkehr nach dem Einschlaten des Moduls mitgeschnitten. Dieses Protokoll hänge ich mal hier an, vielleicht erkennt ja einer etwas daraus. Aus meiner Sicht scheint kein aktiver Datenverkehr aus dem VR920 herauszugehen. Meine Frage wäre jetzt, ob irgendwelche firmeninternen resetvorgänge für das Modul bekannt sind, damit ich "neu anfangen" kann. Das VR920 hat offiziell kein reset knopf mehr. In der Anleitung wird der mit einer Büroklammer oder ähnlichen Gegenstand zu drückende Knopf als Entstörknopf betitelt. Diesen habe ich auch schon genutzt, auch habe ich den mal eine Minute lang gedrückt. Es passierte leider nichts. Zudem möchte ich auch noch auf ein Recherche-ergebnis im Internet aufmerksam machen: Es wird in einem Forum kurz angegeben, dass wenn der VR920 nicht innehralb von fünf Tagen nach Stromanschluss aktiviert wird, sich nicht mehr aktivieren lässt. Ist einem bekannt wie man das umgehen kann? Ich weiss dass das einer Suche nach einer Nadel im Heuhaufenm gleicht, doch wenn jemand Methoden oder Vorschläge hat sich einer möglichen Lösung anzunähern, immer her damit. Vielleicht ists auch möglich unter Verwendung der seriellen Schnittlstelle (UART-Schnittstelle) X10 mit RS232 etwas zu reißen/auszulesen Vielen Dank euch schonmal
SN8000 macht wlan. Was macht der andere chip auf der anderen Ecke mit der leiterplattenantenne?
Martin schrieb: > leiterplattenantenne? Keramikantenne! https://de.farnell.com/en-DE/c/passive-components/antennas-single-band-chip?brand=johanson-technology
Eine Antenne ist für WLAN. Die andere Antenne ist für AmbiSense. Das ist eine Smarthome Funkanlage für die heizungsventile.
:
Bearbeitet durch User
Hast du schonmal auf den Ebus geschaut, ob sich da was tut? Gibt da einen Ebus Deamon von für z.b. einen Raspberry Pi: https://github.com/john30/ebusd Dann braucht man noch ein Ebus-Interface, was man sich auch selbst bauen kann: https://adapter.ebusd.eu/ Ich hab noch ein altes ohne Interface USB <-> Ebus, das könnte ich dir ausleihen.
Vielen Dank für das Angebot, aber ich weiß nicht ob mich das weiter bringt. Ich Denke mein erstes Ziel wäre zu gucken wie ich den Ethernet Anschluss zum laufen bekomme um damit Zugriff auf die Bedienungsoberfläche des Kommunikationsinterface zu bekommen. Obwohl die Ethernet LEDs ab und zu blinken, sowie am PC als auch am Kommunikationsmodul, muss ja irgendetwas gesendet oder empfangen werden. Dem Wireshark Protokoll nach ist aber nichts vom Kommunikationsmodul zu entnehmen. Sondern nur Anfragen von meinem PC mit APIPA Adresse. Aus dem Protokoll lese ich keine MAC Adresse raus, als auch keine IP Adresse vom Modul. Das macht mich stutzig, es muss doch irgendwie möglich sein an die Mac Adresse zu kommen. Und dann vielleicht darauf basierend eine IP Adresse zu zu weisen. Das wären so meine Gedankengänge.
Sebastian D. schrieb: > Sondern nur Anfragen von meinem PC mit APIPA Adresse. Ist das nur ein Netzwerk zwischen PC und dem Board? Hänge das mal an einen Router oder starte einen DHCP Server.
Schon gemacht, der DHCP Vorgang macht keinen unterschied. Zudem sendet der PC auch broadcast Anfragen die augenscheinlich keine Beachtung finden. Das Modul gibt keinen Mucks.
Dann belausche mal die Signale dieser beiden Anschlüsse. Ich meine den 3 oder 6 Pin Anschluss an der Platinenseite und den 10 Pin Anschluss. Und zwar direkt wenn du der Platine Strom gibst. Du suchst dir also einen Masseanschluss für die Oszimasse und dann gehst du mit dem Oszitastkopf von Anschluss zu Anschluss. Stellst auf Normal Trigger und z. B. 1V. Und dann gibst du der Platine Strom. Wenn da nix triggert Strom weg, zum nächsten Pin, Trigger scharfschalten und Strom ran an die Platine. Irgendwo wirst du einen UART TX finden. Wenn du den hast kannst du Baudrate messen und einen UART Adapter anschließen um den ausgegebenen Text zu sehen.
Ui gugge mal, das findet man wenn man nach dem Modell sucht: https://forum.fhem.de/index.php?topic=57815.15
Gustl schrieb: > Ui gugge mal, das findet man wenn man nach dem Modell sucht: > https://forum.fhem.de/index.php?topic=57815.15 Der Eintrag ist mir bekannt jedoch komme ich über dieses Thema nicht auf mein Problem. Zum ersten verwundert mich, dass auf dem EthernetAnschluss KEINE Bewegung ist. Zum zweiten versuche ich ja primär das Teil zu resetten und zum neubooten zu bewegen. Ob das alles so geht, weiss ich nicht, müsste doch aber aus meiner Sicht irgendwie möglich sein. Es sei denn es ist Hardwaremäßig vollständig defekt, was ich aber nicht glaube. Zumindest eine Sichtprüfung untermauert dies zunächst.
Sebastian D. schrieb: > Zumindest eine Sichtprüfung > untermauert dies zunächst. Bei BGA wenig sinnvoll.
H. H. schrieb: > Sebastian D. schrieb: > >> Zumindest eine Sichtprüfung >> untermauert dies zunächst. > > Bei BGA wenig sinnvoll. Ich sach ja, … zunächst… eine verkohlte Stelle auf der Platine ist für mich leicht zu erkennen. Aber auch nur weil ich Hobbygriller bin ;)
Hello, I would like to reopen the discussion because I currently have the same problem with the red light. Did you manage to solve your problem? Thanks
Guten Morgen in die Runde, ich weiss, der Beitrag ist schon was her, doch ich meine, ich bin der Sache etwas näher gekommen. Ich habe es geschafft Zugang zu diesem Mikrocontroller über die Programmierschnittstelle zu bekommen, stehe aber jetzt Softwareseitig vor dem nächsten Rätsel.Via eines USB Seriell Konverters konnte ich die folgende automatisierierte NAchricht auslesen:
1 | U-Boot 2014.10-rc2 (Sep 26 2017 - 14:50:18) |
2 | |
3 | CPU: Freescale i.MX6SOLO rev1.3 at 792 MHz |
4 | Reset cause: WDOG |
5 | Board: Vaillant comDialog/2 |
6 | Watchdog enabled |
7 | I2C: ready |
8 | DRAM: 512 MiB |
9 | MMC: FSL_SDHC: 0 |
10 | In: serial |
11 | Out: serial |
12 | Err: serial |
13 | Net: FEC [PRIME] |
14 | Hit any key to stop autoboot: 0 |
15 | Saving Environment to MMC... |
16 | Writing to MMC(0)... done |
17 | gpio: pin 125 (gpio 125) value is 0 |
18 | gpio: pin 17 (gpio 17) value is 0 |
19 | gpio: pin 126 (gpio 126) value is 0 |
20 | gpio: pin 125 (gpio 125) value is 1 |
21 | gpio: pin 126 (gpio 126) value is 1 |
22 | gpio: pin 125 (gpio 125) value is 0 |
23 | gpio: pin 17 (gpio 17) value is 0 |
24 | gpio: pin 126 (gpio 126) value is 0 |
25 | gpio: pin 125 (gpio 125) value is 1 |
26 | gpio: pin 126 (gpio 126) value is 1 |
27 | Maximum reboot count exceeded. |
28 | gpio: pin 125 (gpio 125) value is 0 |
29 | gpio: pin 17 (gpio 17) value is 0 |
30 | gpio: pin 126 (gpio 126) value is 0 |
31 | gpio: pin 125 (gpio 125) value is 1 |
32 | sleep - delay execution for some time |
33 | |
34 | Usage: |
35 | sleep N |
36 | - delay execution for N seconds (N is _decimal_ !!!) |
37 | bootset=2, bootcount=6, emerg_flag=1, switch_flag=0, boottarget=vg-vr920.target |
38 | switch to partitions #0, OK |
39 | mmc0(part 0) is current device |
40 | Failed to mount ext2 filesystem... |
41 | ** Unrecognized filesystem type ** |
42 | gpio: pin 125 (gpio 125) value is 0 |
43 | gpio: pin 17 (gpio 17) value is 0 |
44 | gpio: pin 126 (gpio 126) value is 0 |
45 | gpio: pin 125 (gpio 125) value is 1 |
46 | => |
Er wartet auf Eingabe eines Commands und resettet nach ca einer Minute und bootet neu. Kommt hier vielleicht einer von euch weiter? Beste Grüße Sepp
Zusatz
1 | => help |
2 | ? - alias for 'help' |
3 | base - print or set address offset |
4 | bdinfo - print Board Info structure |
5 | bmode - mmc0|mmc1|normal|usb|sata|ecspi1:0|ecspi1:1|ecspi1:2|ecspi1:3|esdhc1|esdhc2|esdhc3|esdhc4 [noreset] |
6 | boot - boot default, i.e., run 'bootcmd' |
7 | bootd - boot default, i.e., run 'bootcmd' |
8 | bootm - boot application image from memory |
9 | bootp - boot image via network using BOOTP/TFTP protocol |
10 | bootz - boot Linux zImage image from memory |
11 | clocks - display clocks |
12 | cmp - memory compare |
13 | coninfo - print console devices and information |
14 | cp - memory copy |
15 | cpu - Multiprocessor CPU boot manipulation and release |
16 | crc32 - checksum calculation |
17 | dcache - enable or disable data cache |
18 | dhcp - boot image via network using DHCP/TFTP protocol |
19 | echo - echo args to console |
20 | editenv - edit environment variable |
21 | env - environment handling commands |
22 | erase - erase FLASH memory |
23 | exit - exit script |
24 | ext2load- load binary file from a Ext2 filesystem |
25 | ext2ls - list files in a directory (default /) |
26 | false - do nothing, unsuccessfully |
27 | fatinfo - print information about filesystem |
28 | fatload - load binary file from a dos filesystem |
29 | fatls - list files in a directory (default /) |
30 | fatsize - determine a file's size |
31 | fdt - flattened device tree utility commands |
32 | flinfo - print FLASH memory information |
33 | fuse - Fuse sub-system |
34 | go - start application at address 'addr' |
35 | gpio - query and control gpio pins |
36 | help - print command description/usage |
37 | i2c - I2C sub-system |
38 | icache - enable or disable instruction cache |
39 | iminfo - print header information for application image |
40 | imxtract- extract a part of a multi-image |
41 | itest - return true/false on integer compare |
42 | load - load binary file from a filesystem |
43 | loadb - load binary file over serial line (kermit mode) |
44 | loads - load S-Record file over serial line |
45 | loadx - load binary file over serial line (xmodem mode) |
46 | loady - load binary file over serial line (ymodem mode) |
47 | loop - infinite loop on address range |
48 | ls - list files in a directory (default /) |
49 | md - memory display |
50 | mdio - MDIO utility commands |
51 | mii - MII utility commands |
52 | mm - memory modify (auto-incrementing address) |
53 | mmc - MMC sub system |
54 | mmcinfo - display MMC info |
55 | mw - memory write (fill) |
56 | nfs - boot image via network using NFS protocol |
57 | nm - memory modify (constant address) |
58 | ping - send ICMP ECHO_REQUEST to network host |
59 | printenv- print environment variables |
60 | protect - enable or disable FLASH write protection |
61 | reset - Perform RESET of the CPU |
62 | run - run commands in an environment variable |
63 | saveenv - save environment variables to persistent storage |
64 | setenv - set environment variables |
65 | setexpr - set environment variable as the result of eval expression |
66 | showvar - print local hushshell variables |
67 | size - determine a file's size |
68 | sleep - delay execution for some time |
69 | source - run script from memory |
70 | test - minimal test like /bin/sh |
71 | tftpboot- boot image via network using TFTP protocol |
72 | true - do nothing, successfully |
73 | version - print monitor, compiler and linker version |
74 | => version |
75 | |
76 | U-Boot 2014.10-rc2 (Sep 26 2017 - 14:50:18) |
77 | arm-angstrom-linux-gnueabi-gcc (Linaro GCC 5.2-2015.11-2) 5.2.1 20151005 |
78 | GNU ld (GNU Binutils) 2.26.0.20160226 |
79 | => |
Das Problem ist relativ eindeutig:
> Failed to mount ext2 filesystem...
U-Boot kommt nicht weiter weil es das eigentliche OS nicht booten kann.
Man wird also wohl die Software neu aufspielen müssen (unter der
Voraussetzung dass der Flash noch in Ordnung ist). Das kann man über
U-Boot machen, man braucht aber die Software/Image des OS.
Hallo nochmal, mitlerweile habe ich auch folgendes herausgefunden, nachdem ich abwechslungsweise ein intaktes Ethernetkabel genommen habe :/ . Jetzt bekommt laut Konsole das Gerät auch eine IP Adresse. Seit dem versucht er dauerhaft folgendes
1 | U-Boot 2014.10-rc2 (Sep 26 2017 - 14:50:18) |
2 | |
3 | CPU: Freescale i.MX6SOLO rev1.3 at 792 MHz |
4 | Reset cause: POR |
5 | Board: Vaillant comDialog/2 |
6 | Watchdog enabled |
7 | I2C: ready |
8 | DRAM: 512 MiB |
9 | MMC: FSL_SDHC: 0 |
10 | In: serial |
11 | Out: serial |
12 | Err: serial |
13 | Net: FEC [PRIME] |
14 | Hit any key to stop autoboot: 0 |
15 | Saving Environment to MMC... |
16 | Writing to MMC(0)... done |
17 | gpio: pin 125 (gpio 125) value is 0 |
18 | gpio: pin 17 (gpio 17) value is 0 |
19 | gpio: pin 126 (gpio 126) value is 0 |
20 | gpio: pin 125 (gpio 125) value is 1 |
21 | gpio: pin 126 (gpio 126) value is 1 |
22 | gpio: pin 125 (gpio 125) value is 0 |
23 | gpio: pin 17 (gpio 17) value is 0 |
24 | gpio: pin 126 (gpio 126) value is 0 |
25 | gpio: pin 125 (gpio 125) value is 1 |
26 | gpio: pin 126 (gpio 126) value is 1 |
27 | bootset=2, bootcount=0, emerg_flag=1, switch_flag=0, boottarget=vg-vr920.target |
28 | switch to partitions #0, OK |
29 | mmc0(part 0) is current device |
30 | Failed to mount ext2 filesystem... |
31 | ** Unrecognized filesystem type ** |
32 | gpio: pin 125 (gpio 125) value is 0 |
33 | gpio: pin 17 (gpio 17) value is 0 |
34 | gpio: pin 126 (gpio 126) value is 0 |
35 | gpio: pin 125 (gpio 125) value is 1 |
36 | => dhcp |
37 | BOOTP broadcast 1 |
38 | *** Unhandled DHCP Option in OFFER/ACK: 26 |
39 | *** Unhandled DHCP Option in OFFER/ACK: 42 |
40 | *** Unhandled DHCP Option in OFFER/ACK: 158 |
41 | *** Unhandled DHCP Option in OFFER/ACK: 26 |
42 | *** Unhandled DHCP Option in OFFER/ACK: 42 |
43 | *** Unhandled DHCP Option in OFFER/ACK: 158 |
44 | DHCP client bound to address 192.168.XXX.137 (27 ms) |
45 | *** Warning: no boot file name; using 'C0A82E89.img' |
46 | Using FEC device |
47 | TFTP from server 192.168.XXX.1; our IP address is 192.168.XXX.137 |
48 | Filename 'C0A82E89.img'. |
49 | Load address: 0x12000000 |
50 | Loading: T T T T T T T T T T |
51 | Retry count exceeded; starting again |
Fällt jemandem dazu etwas ein? Was ja ersichtlich ist, er versucht vom TFTP Server 192.168......, sprich meinem Gateway eine Datei herunter zu laden. Bekommt aber augenscheinlich keine Verbindung. Ich stelle mir jetzt die Frage, warum von meinem Gateway? Normalerweise müsste da doch eine IP Adresse eine FTP Servers sein? Könnte man die IP des TFTP Servers heruasfinden und eintragen? Für Ideen uder Interpretationen bin ich sehr dankbar. :) Schönes AdventsWE Sepp
:
Bearbeitet durch User
In meinen Zusamtzbeitrag vom 06.12.2024 08:00 habe ich eine liste von Befehlen gepostet. Von diesen habe ich folgende ausprovbiert:
1 | => base |
2 | Base Address: 0x00000000 |
3 | => bdinfo |
4 | arch_number = 0x0000113C |
5 | boot_params = 0x10000100 |
6 | DRAM bank = 0x00000000 |
7 | -> start = 0x10000000 |
8 | -> size = 0x20000000 |
9 | eth0name = FEC |
10 | ethaddr = 84:c3:e8:01:1c:5f |
11 | current eth = FEC |
12 | ip_addr = <NULL> |
13 | baudrate = 115200 bps |
14 | TLB addr = 0x2FFF0000 |
15 | relocaddr = 0x2FF85000 |
16 | reloc off = 0x18785000 |
17 | irq_sp = 0x2F582EC0 |
18 | sp start = 0x2F582EB0 |
1 | => tftpboot |
2 | *** Warning: no boot file name; using 'C0A82E89.img' |
3 | Using FEC device |
4 | TFTP from server 192.168.XXX.1; our IP address is 192.168.XXX.137 |
5 | Filename 'C0A82E89.img'. |
6 | Load address: 0x12000000 |
7 | Loading: T T |
8 | Abort |
1 | => nfs |
2 | *** Warning: no boot file name; using '/nfsroot/C0A82E89.img' |
3 | Using FEC device |
4 | File transfer via NFS from server 192.168.XXX.1; our IP address is 192.168.XXX.137 |
5 | Filename '/nfsroot/C0A82E89.img'. |
6 | Load address: 0x12000000 |
7 | Loading: T T T T T T T |
Vielleicht für den ein oder anderen noch ein Anhaltspunkt.
Was ist daran so schierig zu verstehen? Siehe bereits hier: Beitrag "Re: Vaillant VR920 - Hardreset - Werkseinst" Und mit LAN Verbindung versucht es U-Boot dann halt per TFTP um an ein gültiges Image zu kommen, das wird so konfiguriert sein. Das ändert nichts daran dass man das OS Image braucht um weiterzukommen. Alternativ könnte man den kompletten Flash auslesen und schauen ob man eventuell das beschädigte Image im Flash reparieren kann.
Vielen Dank für Deine Zeit. Dieter S. schrieb: > Was ist daran so schierig zu verstehen? Warum sucht er die Datei in einem lokalen Netzwerk? Müsste er nicht auf einen FTP Server von Vaillant zugreifen, mit öffentlicher IP? Warum im Gateway? Dieter S. schrieb: > Alternativ könnte man den kompletten Flash auslesen [...] Das werde ich mal versuchen. Ist zwar vollständig Neuland, aber man kann ja nur dazu lernen.
Sebastian D. schrieb: > > Warum sucht er die Datei in einem lokalen Netzwerk? Müsste er nicht auf > einen FTP Server von Vaillant zugreifen, mit öffentlicher IP? Warum im > Gateway? Das ist lediglich für die Entwicklung gedacht um die Software neu aufzuspielen (im lokalen Netz). Niemand wird ernsthaft TFTP über das öffentliche Internet verwenden um ein Software Update durchzuführen. Mit "printenv" kann man die Konfiguration anzeigen lassen, dann sollte man sehen wie das genau gedacht ist.
:
Bearbeitet durch User
Danke für den Tip:
1 | => printenv |
2 | baudrate=115200 |
3 | boot_fdt=try |
4 | boot_ok=1 |
5 | bootargs=console=ttymxc0,115200 root=/dev/mmcblk0p7 ro rootfstype=squashfs rootwait systemd.unit=vg-vr920.target systemd.setenv= quiet |
6 | bootcmd=run check_firstboot;run init_led;run led_status_ok;setenv boot_ok 1;run init_eol_check;run init_VAR03_check;run init_VAR02_check;run set_systemd_target; run choose_boot;run show_status;run bootset_cmd;run do_boot |
7 | bootcount=8 |
8 | bootcount_max=5 |
9 | bootcount_reg=0x20D8030 |
10 | bootdelay=0 |
11 | bootset=2 |
12 | bootset_cmd=if test ${bootset} -eq 1;then setenv mmcroot /dev/mmcblk0p6 ro;setenv mmcpart 2;else setenv mmcroot /dev/mmcblk0p7 ro;setenv mmcpart 3;fi |
13 | boottarget=vg-vr920.target |
14 | brand=0 |
15 | check_firstboot=setexpr bootcount $bootcount + 1;saveenv |
16 | check_por=setexpr.w por *${resetcause_reg} \\& 0x10 |
17 | choose_boot=run check_por;run get_mirrors;if test ${por} -eq 0;then run is_reboot;else run is_por;fi;run mmcargs |
18 | console=ttymxc0 |
19 | do_boot=mmc dev ${mmcdev};if mmc rescan;then if run loadimage;then run loadfdt;run mmcboot;fi;fi;run led_status_fail; |
20 | emerg_flag=1 |
21 | emerg_mirror=1 |
22 | emerg_mirror_reg=0x20D8034 |
23 | ethact=FEC |
24 | ethaddr=84:c3:e8:01:1c:5f |
25 | ethprime=FEC |
26 | fdt_addr=0x18000000 |
27 | fdt_file=devicetree.dtb |
28 | fdt_high=0xffffffff |
29 | get_mirrors=setexpr.l emerg_mirror *${emerg_mirror_reg};setexpr.l switch_mirror *${switch_mirror_reg} |
30 | gpio_blue=17 |
31 | gpio_green=126 |
32 | gpio_ok_led=17 |
33 | gpio_red=125 |
34 | image=uImage |
35 | increment_bootcount=setexpr.l bootcount *${bootcount_reg} + 1;mw.l ${bootcount_reg} ${bootcount} |
36 | init_VAR02_check=mw.l 0x020E04F8 0x70B1 1; mw.l 0x020E0128 0x05 1;setexpr var02_pin *0x020A0000 "&" 0x10000; |
37 | init_VAR03_check=mw.l 0x020E04FC 0x70B1 1; mw.l 0x020E012C 0x05 1;setexpr var03_pin *0x020B0000 "&" 0x40; |
38 | init_eol_check=mw.l 0x020E02E4 0x05 1;setexpr is_not_eol_pin *0x209c000 "&" 0x10000; |
39 | init_led=run remux_leds;run led_status_ok;if test ${brand} -eq 1;then setenv gpio_ok_led ${gpio_green};else setenv gpio_ok_led ${gpio_blue};fi |
40 | initrd_high=0xffffffff |
41 | is_emergency=if test ${bootcount} > ${bootcount_max};then if test ${emerg_flag} -ne 0;then echo "Maximum reboot count exceeded.";run led_status_fail;sleep 86400;else setenv emerg_flag 1;run switch_bootset;fi;fi; |
42 | is_noemergency=if test ${emerg_flag} -ne 0;then setenv emerg_flag 0;saveenv;fi |
43 | is_not_eol_pin=10000 |
44 | is_por=setenv emerg_mirror ${emerg_flag};setenv switch_mirror ${switch_flag};run store_mirrors;run reset_bootcount |
45 | is_reboot=if test ${emerg_flag} -ne 0;then run is_reboot_emerg;else run is_reboot_noemerg;fi;run increment_bootcount;run is_emergency |
46 | is_reboot_emerg=if test ${emerg_mirror} -ne ${emerg_flag};then setenv emerg_mirror ${emerg_flag};run store_mirrors;run reset_bootcount;fi |
47 | is_reboot_noemerg=if test ${switch_flag} -ne 0;then run is_reboot_noemerg_isswitch;else run is_reboot_noemerg_noswitch;fi |
48 | is_reboot_noemerg_isswitch=setenv emerg_flag 0;if test ${switch_mirror} -ne ${switch_flag};then setenv emerg_mirror 0;setenv switch_mirror ${switch_flag};run reset_bootcount;fi;run store_mirrors; |
49 | is_reboot_noemerg_noswitch=setenv switch_mirror 0;run store_mirrors; |
50 | led_status_fail=run led_status_off;gpio set ${gpio_red} |
51 | led_status_off=gpio clear ${gpio_red};gpio clear ${gpio_blue};gpio clear ${gpio_green} |
52 | led_status_ok=run led_status_off;gpio set ${gpio_red}; gpio set ${gpio_green} |
53 | loadaddr=0x12000000 |
54 | loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} /${fdt_file} |
55 | loadimage=load mmc ${mmcdev}:${mmcpart} 0x12000000 ${image} |
56 | mmcargs=setenv bootargs console=${console},${baudrate} ${optargs} root=${mmcroot} rootfstype=${mmcrootfstype} systemd.unit=${boottarget} systemd.setenv=${systemd_env} quiet |
57 | mmcboot=echo Booting from mmc ...;run mmcargs;bootm ${loadaddr} - ${fdt_addr}; |
58 | mmcdev=0 |
59 | mmcpart=3 |
60 | mmcroot=/dev/mmcblk0p7 ro |
61 | mmcrootfstype=squashfs rootwait |
62 | mux_disp0_data08=0x20e0108 |
63 | mux_sd_base=0x20e02e4 |
64 | por=0 |
65 | remux_leds=mw.l ${mux_sd_base} 0x05 5;mw.l ${mux_disp0_data08} 0x05 2 |
66 | reset_bootcount=setenv bootcount 0;mw.l ${bootcount_reg} ${bootcount} |
67 | resetcause_reg=0x20BC004 |
68 | script=boot.scr |
69 | set_systemd_target=if test ${var03_pin} -eq 0;then run set_target_to_vr900;else if test ${var02_pin} -eq 0;then if test ${is_not_eol_pin} -eq 0;then run set_target_to_eol;else run set_target_to_vr920;fi;else if test ${is_not_eol_pin} -eq 0;then run set_target_to_eol_wo_cc1310;else run set_target_to_vr920_wo_cc1310;fi;fi;fi; |
70 | set_target_to_eol=setenv boottarget vg-eol.target;setenv systemd_env EOL_TEST=1; |
71 | set_target_to_eol_wo_cc1310=setenv boottarget vg-eol_wo_cc1310.target;setenv systemd_env EOL_TEST=1; |
72 | set_target_to_vr900=setenv boottarget vg-vr900.target;setenv systemd_env; |
73 | set_target_to_vr920=setenv boottarget vg-vr920.target;setenv systemd_env; |
74 | set_target_to_vr920_wo_cc1310=setenv boottarget vg-vr920_wo_cc1310.target;setenv systemd_env; |
75 | show_status=echo bootset=${bootset}, bootcount=${bootcount}, emerg_flag=${emerg_flag}, switch_flag=${switch_flag}, boottarget=${boottarget} |
76 | splashpos=m,m |
77 | stderr=serial |
78 | stdin=serial |
79 | stdout=serial |
80 | store_mirrors=mw.l ${emerg_mirror_reg} ${emerg_mirror};mw.l ${switch_mirror_reg} ${switch_mirror} |
81 | switch_bootset=if test ${bootset} -eq 1;then setenv bootset 2;else setenv bootset 1;fi;setenv switch_flag 0;saveenv;run reset_bootcount |
82 | switch_flag=0 |
83 | switch_mirror=0 |
84 | switch_mirror_reg=0x20D8038 |
85 | var02_pin=0 |
86 | var03_pin=40 |
87 | vr900_u_boot_version=1 |
88 | |
89 | Environment size: 5386/8188 bytes |
Du könntest noch ein paar weitere Kommandos ausprobieren die zusätzliche Informationen liefern:
1 | mmcinfo |
2 | |
3 | mmc |
4 | |
5 | help mmc |
6 | |
7 | mmc dev 0 |
8 | mmc rescan |
Das Auslesen des Flash läuft vermulich darauf hinaus dass man mit den Kommandos des "MMC sub system" Teile des Flash in den RAM liest und diese dann per "md.b" als Hexdump über die Konsole ausgibt. Die Ausgabe schneidet man mit, den Dump kann man dann am Ende in binäre Dateien umwandeln. Eventuell gibt es Alternativen die schneller sind aber im moment sehe ich keine.
Um das an einigen Stellen diskutierte Thema zum Abschluss zu bringen: https://www.vaillant.at/privatanwender/produkte/mobile-apps/myvaillant-app/ " [...] Energieinformationen aus den Vorgänger-Apps aber nicht mehr möglich ist. Sollte Ihre Internet-Kommunikations-Box schont seit längerem offline sein und nicht bis zum 29.03.2024 für mind. 24 Stunden online gehen und Sie ihre Anlage nach dem 01.04.2024 wieder per App steuern wollen, ist eine kostenpflichtige Neuschaffung einer aktuellen Internet-Kommunikations-Box (VR-940f) notwendig." Selbst wenn ich es schaffen sollte Daten zu retten und es zum Laufen zu bekommen, kann das Teil sowiseo nicht wie gewünscht integriert werden. War mir bisher so nicht klar. Schade eigentlich. Immerhin habe ich dafür einen "Defekt-Preis" bezahlt. Besten Dank an alle, insbesondere DS1! Euch schöne eine schöne Weihnachtszeit!
Ja, das ist in der Tat nicht sehr kundenorientiert von Vaillant. Ich wurde mit meiner VR900 leider auch enttäuscht. Hatte die 2 Jahre im Schrank liegen, weil sie nicht wirklich stabil gelaufen ist und als ich letzte Woche mal schauen wollte, ob Vaillant inzwischen bei der Software nachgebessert hat, musste ich feststellen, dass die Box in die Tonne kloppen kann. Warum es nicht möglich sein soll, noch weiterhin ein Firmwareupdate anzubieten, ist mir schleierhaft (außer die Leute zu zwingen, eine neue Box kaufen zu müssen).
Falls jemand mit den VR 920 Gateways experimentieren will (das Ganze trifft vermutlich auch auf die VR 900 Gateways zu): Ein Login ins Linux-System über die serielle Konsole (siehe Bild, 3.3 Volt Pegel, 115200 Baud) ist nur als "root" mit Passwort möglich, das Passwort ist nicht bekannt. Wer versuchen will den Passwort-Hash zu knacken: die "/etc/shadow" Datei ist im Anhang. Das ist ein SHA-512 Hash und entsprechend rechenintensiv. U-Boot kann normalerweise nicht unterbrochen werden (außer im Fall des Geräts des TO bei dem das Booten des Linux-Systems nicht funktioniert), daher kommt man normalerweise auch nicht auf die U-Boot Kommandozeile. Allerdings ist JTAG für den i.MX6 verfügbar (siehe Bild, bitte beachten daß das Pinout auf dem Kopf steht), das ist das übliche 10-Pin ARM JTAG Pinout. JTAG auf dem i.MX6 ist nicht gesperrt, man kann daher relativ einfach U-Boot debuggen und z.B. einen Breakpoint setzen und dann die "bootdelay" Environment-Variable auf einen Wert größer 0 setzen. Von U-Boot kommt man dann z.B. durch Anhängen von "init=/bin/bash" an die Kernel Kommandozeile auch auf das Linux System.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.