Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

FLEX-442 Szukam sposobu na ożywienie, wgranie firmware?

k.marcin 24 Sie 2016 20:16 1851 10
  • #1 24 Sie 2016 20:16
    k.marcin
    Poziom 18  

    Rejestrator NVR Flex-442, dysk sata 1tb.

    Zawiesza mi się to cudo na ekranie startowym ("loading") .

    Zastanawiam się czy jest jakiś sposób na wgranie nowego firmware np z pendrive po usb?

    Google nie pomaga.

    Nagrywarka po gwarancji 2 miesiące.

    W środku bateryjka od podtrzymania, wyciągałem ją resetowałem zasilanie, formatowałem na komputerze dysk twardy.
    Nic nie przyniosło efektu.

    Ktoś męczył ten temat może ?

    Będę wdzięczny za pomoc.

    0 10
  • #2 25 Sie 2016 20:58
    sosarek

    Poziom 43  

    Zadzwoń do Delty, może mają firmware i Ci go podeślą.

    0
  • #3 27 Sie 2016 20:50
    marek216

    Poziom 43  

    O ile pamiętam to w tym FW wgrywa się z poziomu menu, a do niego dostępu brak.
    Możesz ew. mając FW sprawdzić czy siedzi w procku czy w jakiejś pamięci osobnej. Wtedy kopia tego co masz i ew. wgranie BINa na programatorze.
    Nie robiłem takiej operacji na tym sprzęcie więc poradę traktuj tylko jako wskazówkę.

    Inne pytanie: czy ten model nie jest jeszcze na gwarancji?

    0
  • #4 28 Sie 2016 21:40
    dj_volt
    Poziom 22  

    Proszę bardzo.
    Flex-442. Ale jak go wrzucić na rejestrator? nie wiem. Chyba programatorem. Spróbuj namierzyć na płytce RS232. Pewnie będzie w TTL'u więc podepnij się konwerterem. Potem próbuj - bootloader powinien dać Ci możliwość załadowania firmware. Tylko uważaj na adresy - jak coś kasujesz napierw spisz na kartkę jak było :)
    Tą metodą ożywiłem już sporo kamer i kilka rejestratorów "jedynej słusznej firmy".
    Oczywiście prostsze rozwiązanie - dogadaj się z serwisem Delty, pewnie zrobią Ci to samo za rozsądne pieniądze i bez ryzyka upalenia sprzętu.

    0
    Załączniki:
  • #5 01 Wrz 2016 15:07
    k.marcin
    Poziom 18  

    Bardzo dziękuję za odpowiedzi.
    Nie odzywałem się gdyż powiadomienia mi nie przychodzą na mail :)
    Gwarancja oczywiście skończyła się w czerwcu.

    DJ_Volt, rs232 ok, a później czym to ruszasz? telnet, jakiś tftp, czy jakiś chiński soft?

    edit.

    Pogrzebałem trochę.

    Chip to HI3520D.
    Instrukcje programowania i adresy jeśli się nie mylę to tutaj :
    http://www.programering.com/a/MDM3QTNwATU.html

    Znalazłem tez reboot tool, lecz nie działa mi - update nie startuje, sprawdzę na mniejszym pen drive.
    Jak zadziała to wrzuce pliki w dowload.
    http://www.urcctvstore.com/Reboot_tool.jpg

    Znalazłem tez zlacze rs232 w ttl, konwerter usb>rs.ttl mam na pl2303.

    Na razie jestem w kropce i na dzis odpuszczam, może ktoś coś podpowie jeszcze.

    0
  • Pomocny post
    #6 02 Wrz 2016 00:28
    dj_volt
    Poziom 22  

    k.marcin napisał:
    ...

    DJ_Volt, rs232 ok, a później czym to ruszasz? telnet, jakiś tftp, czy jakiś chiński soft?
    Znalazłem tez zlacze rs232 w ttl, konwerter usb>rs.ttl mam na pl2303....

    Jesteś prawie w domu. Podepnij przez PL2303 tego RS'a do kompa i odpal Putty, Hyperterminal lub cokolwiek innego, terminalowego :) Prędkość transmisji - zacznij od 115200 i próbuj "w dół". Aż zobaczysz tekst (czytelny) z bootloadera.

    0
  • #7 02 Wrz 2016 13:02
    k.marcin
    Poziom 18  

    OK. Mamy postęp.

    U-Boot 2010.06 (Dec 05 2013 - 16:53:16)

    Check spi flash controller v350... Found
    Spi(cs1) ID: 0xC2 0x20 0x19 0xC2 0x20 0x19
    Spi(cs1): Block:64KB Chip:32MB Name:"MX25L25635E/735E/635F"
    *** Warning - bad CRC, using default environment

    In: serial
    Out: serial
    Err: serial
    32768 KiB hi_sfc at 0:0 is now current device

    mmu_enable
    <<imgwidth=1024, imgheight=768, linebytes=2048>>
    decode success!!!!
    dev 0 set background color!
    dev 2 set background color!
    dev 0 opened!
    dev 2 opened!
    graphic layer 0 opened!
    graphic layer 2 opened!
    (Re)start USB...
    USB: scanning bus for devices... 1 USB Device(s) found
    scanning bus for storage devices... 0 Storage Device(s) found
    Hit any key to stop autoboot: 0
    32768 KiB hi_sfc at 0:0 is now current device

    ## Booting kernel from Legacy Image at 82000000 ...
    Image Name: Linux-3.0.8
    Image Type: ARM Linux Kernel Image (uncompressed)
    Data Size: 1551556 Bytes = 1.5 MiB
    Load Address: 80008000
    Entry Point: 80008000
    Loading Kernel Image ... OK
    OK

    Starting kernel ...

    Uncompressing Linux... done, booting the kernel.
    Linux version 3.0.8 (root@localhost.localdomain) (gcc version 4.4.1 (Hisilicon_v100(gcc4.4-290+uclibc_0.9.32.1+eabi+linuxpthread)) ) #32 Tue Oct 15 16:37:28 HKT 2013
    CPU: ARMv7 Processor [414fc091] revision 1 (ARMv7), cr=10c53c7f
    CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
    Machine: hi3520d
    Memory policy: ECC disabled, Data cache writeback
    Built 1 zonelists in Zone order, mobility grouping on. Total pages: 33528
    Kernel command line: mem=132M console=ttyAMA0,115200 root=/dev/mtdblock2 rootfstype=squashfs mtdparts=hi_sfc:320K(uboot),1536K(kernel),4M(rfs),25792K(app),768K(config),256K(logo)
    PID hash table entries: 1024 (order: 0, 4096 bytes)
    Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
    Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
    Memory: 132MB = 132MB total
    Memory: 129716k/129716k available, 5452k reserved, 0K highmem
    Virtual kernel memory layout:
    vector : 0xffff0000 - 0xffff1000 ( 4 kB)
    fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
    DMA : 0xffc00000 - 0xffe00000 ( 2 MB)
    vmalloc : 0xc8800000 - 0xfe000000 ( 856 MB)
    lowmem : 0xc0000000 - 0xc8400000 ( 132 MB)
    modules : 0xbf000000 - 0xc0000000 ( 16 MB)
    .init : 0xc0008000 - 0xc0024000 ( 112 kB)
    .text : 0xc0024000 - 0xc03a6000 (3592 kB)
    .data : 0xc03a6000 - 0xc03c18a0 ( 111 kB)
    .bss : 0xc03c18c4 - 0xc040ddc0 ( 306 kB)
    SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
    NR_IRQS:128 nr_irqs:128 128
    sched_clock: 32 bits at 75MHz, resolution 13ns, wraps every 57266ms
    Console: colour dummy device 80x30
    Calibrating delay loop... 1196.85 BogoMIPS (lpj=5984256)
    pid_max: default: 32768 minimum: 301
    Mount-cache hash table entries: 512
    CPU: Testing write buffer coherency: ok
    NET: Registered protocol family 16
    Serial: AMBA PL011 UART driver
    uart:0: ttyAMA0 at MMIO 0x20080000 (irq = 40) is a PL011 rev2
    console [ttyAMA0] enabled
    uart:1: ttyAMA1 at MMIO 0x20090000 (irq = 41) is a PL011 rev2
    uart:2: ttyAMA2 at MMIO 0x200a0000 (irq = 42) is a PL011 rev2
    bio: create slab <bio-0> at 0
    SCSI subsystem initialized
    usbcore: registered new interface driver usbfs
    usbcore: registered new interface driver hub
    usbcore: registered new device driver usb
    cfg80211: Calling CRDA to update world regulatory domain
    Switching to clocksource timer1
    NET: Registered protocol family 2
    IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
    TCP established hash table entries: 8192 (order: 4, 65536 bytes)
    TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
    TCP: Hash tables configured (established 8192 bind 8192)
    TCP reno registered
    UDP hash table entries: 256 (order: 0, 4096 bytes)
    UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
    NET: Registered protocol family 1
    NetWinder Floating Point Emulator V0.97 (double precision)
    L2cache cache controller enabled
    VFS: Disk quotas dquot_6.5.2
    Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
    squashfs: version 4.0 (2009/01/31) Phillip Lougher
    JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
    fuse init (API version 7.16)
    msgmni has been set to 253
    sqy test his lot is : 0x34 0xd1 0x6a 0x3e 0x44 0x69 0x10 0x10
    encryption ok
    Block layer SCSI generic (bsg) driver version 0.4 loaded (major 254)
    io scheduler noop registered
    io scheduler deadline registered (default)
    io scheduler cfq registered
    brd: module loaded
    loop: module loaded
    ahci: SSS flag set, parallel bus scan disabled
    ahci ahci.0: AHCI 0001.0200 32 slots 2 ports 3 Gbps 0x3 impl platform mode
    ahci ahci.0: flags: ncq sntf stag pm led clo only pmp pio slum part ccc sxs boh
    scsi0 : ahci_platform
    scsi1 : ahci_platform
    ata1: SATA max UDMA/133 mmio [mem 0x10080000-0x1008ffff] port 0x100 irq 52
    ata2: SATA max UDMA/133 mmio [mem 0x10080000-0x1008ffff] port 0x180 irq 52
    Spi id table Version 1.22
    Spi(cs1) ID: 0xC2 0x20 0x19 0xC2 0x20 0x19
    SPI FLASH start_up_mode is 3 Bytes
    Spi(cs1):
    Block:64KB
    Chip:32MB
    Name:"MX25L25635E/735E/635F"
    spi size: 0x33554432
    chip num: 1
    6 cmdlinepart partitions found on MTD device hi_sfc
    Creating 6 MTD partitions on "hi_sfc":
    0x000000000000-0x000000050000 : "uboot"
    0x000000050000-0x0000001d0000 : "kernel"
    0x0000001d0000-0x0000005d0000 : "rfs"
    0x0000005d0000-0x000001f00000 : "app"
    0x000001f00000-0x000001fc0000 : "config"
    0x000001fc0000-0x000002000000 : "logo"
    Fixed MDIO Bus: probed
    ata1: SATA link down (SStatus 0 SControl 300)
    himii: probed
    ata2: SATA link down (SStatus 0 SControl 300)
    Invalid HW-MAC Address: 00:00:00:00:00:00
    Set Random MAC address: 3E:4D:27:0F:23:03
    ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
    hiusb-ehci hiusb-ehci.0: HIUSB EHCI
    hiusb-ehci hiusb-ehci.0: new USB bus registered, assigned bus number 1
    hiusb-ehci hiusb-ehci.0: irq 53, io mem 0x100b0000
    hiusb-ehci hiusb-ehci.0: USB 0.0 started, EHCI 1.00
    hub 1-0:1.0: USB hub found
    hub 1-0:1.0: 2 ports detected
    ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
    hiusb-ohci hiusb-ohci.0: HIUSB OHCI
    hiusb-ohci hiusb-ohci.0: new USB bus registered, assigned bus number 2
    hiusb-ohci hiusb-ohci.0: irq 54, io mem 0x100a0000
    hub 2-0:1.0: USB hub found
    hub 2-0:1.0: 2 ports detected
    usbcore: registered new interface driver cdc_wdm
    Initializing USB Mass Storage driver...
    usbcore: registered new interface driver usb-storage
    USB Mass Storage support registered.
    usbcore: registered new interface driver usbserial
    usbserial: USB Serial Driver core
    mousedev: PS/2 mouse device common for all mice
    usbcore: registered new interface driver usbhid
    usbhid: USB HID core driver
    TCP cubic registered
    NET: Registered protocol family 17
    Registering the dns_resolver key type
    registered taskstats version 1
    VFS: Mounted root (squashfs filesystem) readonly on device 31:2.
    Freeing init memory: 112K

    _ _ _ _ _ _ _ _ _ _ _ _
    \ _ _ _ _ _ ___
    / /__/ \ |_/
    / __ / - _ ___
    / / / / / /
    _ _ _ _/ / / \_/ \_ ______
    ___________\___\__________________

    [RCS]: /etc/init.d/S00devs
    [RCS]: /etc/init.d/S01udev
    Jan 1 00:00:04 udevd[488]: main: error opening /dev/nuludevd (488): /proc/488/oom_adj is deprecated, please use /proc/488/oom_score_adj instead.
    l: No such file or directory
    [RCS]: /etc/init.d/S03ants
    init hotplug
    start hotplug ok
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd29c: 0xb3af instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2a0: 0x7ed3 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2a4: 0x432f instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2a8: 0xe916 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2ac: 0x279c instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2b0: 0x3ce7 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2b4: 0xf8e7 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2b8: 0x0447 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2bc: 0x1f76 instead
    jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x010fd2c0: 0x53d0 instead
    Further such events for this erase block will not be printed
    SDK_TYPE type is 8d1
    Hisilicon Media Memory Zone Manager
    hi3520D_base: module license 'Proprietary' taints kernel.
    Disabling lock debugging due to kernel taint
    Hisilicon UMAP device driver interface: v3.00
    load sys.ko for Hi3520D...OK!
    Load tde.ko ...OK!
    load venc.ko for Hi3520D...OK!
    load group.ko for Hi3520D...OK!
    load chnl.ko for Hi3520D...OK!
    load h264e.ko for Hi3520D...OK!
    load rc.ko for Hi3520D...OK!
    load jpege.ko for Hi3520D...OK!
    load viu.ko for Hi3520D...OK!
    load vou.ko ....OK!
    load vpss.ko ....OK!
    load vda.ko ....OK!
    load region.ko ....OK!
    cp: can't stat '/root/res_xml/DeviceDisplay32.xml': No such file or directory
    load vdec.ko ....OK
    load vhd firmware.ko OK
    load hdmi.ko ....OK!
    Load jpeg6b.ko success. (SDK_VERSION:[jpeg6bv1.0] Build Time:[Jul 30 2013, 17:13:35])
    USB Serial support registered for GSM modem (1-port)
    usbcore: registered new interface driver option
    option: v0.7.2:USB Driver for GSM modems
    rtusb init rt2870 --->
    usbcore: registered new interface driver rt2870
    PPP generic driver version 2.4.2
    rm: can't remove '/usr/etc/config.tar.gz': No such file or directory
    mkdir: can't create directory '/usr/etc/tmp': File exists
    mkdir: can't create directory '/usr/etc/var': File exists
    mkdir: can't create directory '/usr/etc/var/run': File exists
    mkdir: can't create directory '/usr/etc/var/lock': File exists
    mkdir: can't create directory '/usr/etc/ppp': File exists
    mkdir: can't create directory '/usr/etc/ppp/peers': File exists
    rm: can't remove '/usr/etc/tmp/qtembedded-0/fonts/fontdb': No such file or directory
    ln: /usr/etc/web/web: File exists
    cp: can't create '/etc/ppp/peers/ppp-off': No space left on device
    cp: can't stat '/usr/sbin/wcdma-chat-disconnect': No such file or directory
    no usb-storage
    [RCS]: /etc/init.d/S80network
    Auto login as root ...
    Jan 1 18:22:03 login[810]: root login on 'ttyS000'
    Welcome to HiLinux.
    # begin dvr//////////////////////////////////////////////////////////////
    argc 2, argv ./ants_dvr
    open /usr/etc/mycfg.xml

    open /root/res_xml/Keyboard.xml

    QWSServerSocket::init: No space left on device
    QWSServerSocket: could not bind to file /tmp/qtembedded-0/QtEmbedded-0
    QWSServerPrivate::initServer: server socket not listening: No space left on device
    Failed to bind to /tmp/qtembedded-0/QtEmbedded-0


    Teraz tylko muszę poszukać komendy i z czym to się je, jak wysyłać, kasować pliki.. ahh linux był daawno temu..
    Wygląda na to że zgubił kilka plików, dobrze kombinuję ?

    0
  • #8 04 Wrz 2016 16:24
    dj_volt
    Poziom 22  

    "Warning - bad CRC, using default environment" masz przyczynę.
    Musisz przerwać bootowanie w tym miejscu:
    "Hit any key to stop autoboot: 0"
    Następnie wybrać komendę pozwalającą na podejrzenie zawartości flasha. Sprawdzić co siedzi i na jakich adresach. Potem X-Modem i upload nowego firmware'u.

    0
  • #9 04 Wrz 2016 20:10
    k.marcin
    Poziom 18  

    Witam kolegów.

    Po skasowaniu miliona plików śmieci z /tmp/ nagrywarka zbootowała.
    Wygląda na to że działa poprawnie, lecz potwierdzę to dopiero po podłączeniu kamer.

    Nagrywarka nie przyjmuje plików aktualizacyjnych od kolegi powyżej.

    Zgrałem zawartość flash dla potomnych.
    Zgrałem strukturę katalogów i plików po odpaleniu NVR (przez ftp), może się z tym pobawię jeszcze.

    Polutowałem ten stary konwerter na pl2303 na płytkę uniweersalną z gniazdem usb i wyciągnąłem na niej sobie pełny rs232 (w ttl) , dodałem też piny zasilające +5vdc i +3,3vdc

    podłączenie do NVR, 115200 8n1

    FLEX-442 Szukam sposobu na ożywienie, wgranie firmware?

    Struktura danych na wewn flash chip HI3520D (32mb) :
    0x000000000000-0x000000050000 : "uboot" /dev/mtdblock0
    0x000000050000-0x0000001d0000 : "kernel" /dev/mtdblock1
    0x0000001d0000-0x0000005d0000 : "rfs" /dev/mtdblock2
    0x0000005d0000-0x000001f00000 : "app" /dev/mtdblock3
    0x000001f00000-0x000001fc0000 : "config" /dev/mtdblock4
    0x000001fc0000-0x000002000000 : "logo" /dev/mtdblock5

    Po podłączeniu pod terminal i wystartowaniu nagrywarki można przerwać bootowanie z flash wysyłając do terminala dowolny znak (np. enter) i jeżeli dobrze zrozumiałem odpali nam się bardzo okrojony uBoot z dosłownie kilkoma zaimplementowanymi komendami pozwalający na podejrzenie i zmianę pamięci, ściąganie i flashowanie firmware po tftp, usb, terminal: kermit i kilkoma innymi opcjami.

    Tutaj skasowałem zapisany environment.

    Zrzut z terminala:

    ###

    Hisilicon # help
    ? - alias for 'help'
    base - print or set address offset
    bootm - boot application image from memory
    bootp - boot image via network using BOOTP/TFTP protocol
    cmp - memory compare
    cp - memory copy
    crc32 - checksum calculation
    ddrp - ddrp training tools v200
    ddrt - ddr training tools v200
    decjpg - jpgd - decode jpeg picture.

    erase_env- erase_env erase the environment

    ext2load- load binary file from a Ext2 filesystem
    ext2ls - list files in a directory (default /)
    fatinfo - print information about filesystem
    fatload - load binary file from a dos filesystem
    fatls - list files in a directory (default /)
    getinfo - print hardware information
    go - start application at address 'addr'
    help - print command description/usage
    loadb - load binary file over serial line (kermit mode)
    loady - load binary file over serial line (ymodem mode)
    loop - infinite loop on address range
    md - memory display
    mii - MII utility commands
    mm - memory modify (auto-incrementing address)
    mtest - simple RAM read/write test
    mw - memory write (fill)
    nm - memory modify (constant address)
    ping - send ICMP ECHO_REQUEST to network host
    printenv- print environment variables
    rarpboot- boot image via network using RARP/TFTP protocol
    reset - Perform RESET of the CPU
    saveenv - save environment variables to persistent storage
    setenv - set environment variables
    setvobg - setvobg - set vo backgroud color.
    - setvobg [dev color]
    sf - SPI flash sub-system
    startgx - startgx - open graphics layer.
    - startgx [layer addr stride x y w h]

    startvo - startvo - open interface of vo device.
    - startvo [dev type sync]
    stopgx - stopgx - close graphics layer.
    - stopgx [layer]
    stopvo - stopvo - close interface of vo device.
    - stopvo [dev]
    tftp - tftp - download or upload image via network using TFTP protocol
    update - update uboot
    update kernel
    update app
    update rfs
    update logo
    update all

    usb - USB sub-system
    usbboot - boot from USB device
    version - print monitor version


    ###

    Pliki w postaci binarnej jak by komuś to cudo padło kompletnie zamieszczam w załączniku.

    Znalazłem też bootowalny pendrive dla bliźniaczego projektu hikvision, ale nie startuje mi na tym nvr.


    Ciekawi mnie jak wyciągnąć i skąd np hasło root'a żeby wbić się np po telnecie. To zapisanie gdzieś w strukturze plików nie pasuje.

    Soft prawdopodobnie siedzi w mtdblock3, ale nie wiem jak go wgrać w postaci binarnej przez uboot, u kolegi spakowany rarem, tam jest jakiś linuxowy system kompresji. Może ktoś pokieruje to się pobawię.

    Reasumując dużo ciekawych rzeczy się dowiedziałem i nauczyłem, może komuś się przyda.


    Zobaczymy co z tego będzie.

    0
  • #11 06 Wrz 2016 08:09
    k.marcin
    Poziom 18  

    Wczoraj podłączyłem u kolegi i wszystko wygląda na sprawne, podłączone są trzy kamery IP na 1080p po protokole i8, nagrywanie jak i odtwarzanie działa poprawnie.

    Dziękuję za pomocne rady.
    Uważam, że zadaniem forum jest pomagać sobie nawzajem i rozwiązywać problemy - dlatego też zamieściłem materiały.

    Pozdrawiam!

    0