OpenWrt Forum Archive

Topic: D-Link DCS-930/932 IP Camera

The content of this topic has been archived between 19 Apr 2018 and 28 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

@ldpinney
My logs above are from D-Link DCS-930L B1 (Ralink RT5350, ASIC 5350_MP).

Hi, I have a 2 year old DCS-932L that stopped working a couple days ago. It's both RED power led and blue WPS light turned on all the time. I tried resetting it by inserting a clip for >10 seconds on reset button but nothing happens, neither pressing WPS button. It was on latest D-Link firmware. I have 2 of these and one is still working.

I have a USB-TTL device so I think I may be able to debug it via serial. I'm just not sure which pins to connect (only tx/rx/gnd, or 3.3v too?). Also, will I be able to flash a firmware through serial console? I'm not very used to serial thing, I've only used it once to fix another device by following a tutorial.
I'm not sure if it's fried. Once I took it for more than an hour out of power and when I turned it on I heard a sound like the lens turning on/off.
I also tried the 192.168.0.20 thing but without success.
Thanks for any suggestions.

@ vitorm
only tx/rx/gnd, NOT 3.3v

an wrote:
Starting kernel ...

Probably means that bootloader does not know where the kernel starts.

Sorry did not post the full boot log, after that the system actually boots fine, here the full log:

Starting kernel ...
                   
[    0.000000] Linux version 3.10.32 (build@saturnine) (gcc version 4.6.4 (OpenWrt/Linaro GCC 4.6-2013.05 r39854) ) #1 Sun Apr 265
[    0.000000] SoC Type: Ralink RT3350 id:1 rev:2
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=0002f157
[    0.000000] Readback ErrCtl register=0002f157
[    0.000000] Memory: 29416k/32768k available (2124k kernel code, 3352k reserved, 530k data, 160k init, 0k highmem)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:128
[    0.000000] CPU Clock: 320MHz
[    0.000000] Calibrating delay loop... 212.58 BogoMIPS (lpj=1062912)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 512
[    0.090000] pinctrl core: initialized pinctrl subsystem
[    0.100000] NET: Registered protocol family 16
[    0.150000] bio: create slab <bio-0> at 0
[    0.160000] rt2880_gpio 10000600.gpio: registering 24 gpios
[    0.170000] rt2880_gpio 10000600.gpio: registering 24 irq handlers
[    0.180000] Switching to clocksource MIPS
[    0.190000] NET: Registered protocol family 2
[    0.200000] TCP established hash table entries: 512 (order: 0, 4096 bytes)
[    0.220000] TCP bind hash table entries: 512 (order: -1, 2048 bytes)
[    0.230000] TCP: Hash tables configured (established 512 bind 512)
[    0.240000] TCP: reno registered
[    0.250000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.260000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.270000] NET: Registered protocol family 1
[    0.280000] rt-timer 10000100.timer: maximum frequncy is 6510Hz
[    0.340000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.350000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.370000] msgmni has been set to 57
[    0.380000] io scheduler noop registered
[    0.390000] io scheduler deadline registered (default)
[    0.400000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.430000] console [ttyS0] enabled, bootconsole disabledirq = 20) is a 16550A
[    0.430000] console [ttyS0] enabled, bootconsole disabled
[    0.460000] 1f000000.cfi: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x0000c2 Chip ID 0x0022a8
[    0.480000] Amd/Fujitsu Extended Query Table at 0x0040
[    0.490000]   Amd/Fujitsu Extended Query version 1.1.
[    0.500000] number of CFI chips: 1
[    0.510000] 6 ofpart partitions found on MTD device 1f000000.cfi
[    0.520000] Creating 6 MTD partitions on "1f000000.cfi":
[    0.530000] 0x000000000000-0x000000030000 : "u-boot"
[    0.550000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.560000] 0x000000040000-0x000000050000 : "factory"
[    0.580000] 0x000000050000-0x0000001a0000 : "kernel"
[    0.590000] 0x000000150000-0x000000400000 : "rootfs"
[    0.610000] mtd: device 4 (rootfs) set to be root filesystem
[    0.620000] mtd: partition "rootfs_data" created automatically, ofs=0x300000, len=0x100000
[    0.630000] 0x000000300000-0x000000400000 : "rootfs_data"
[    0.650000] 0x000000050000-0x000000400000 : "firmware"
[    0.670000] eth0: done loading
[    0.680000] rt2880_wdt 10000120.watchdog: Initialized
[    0.700000] TCP: cubic registered
[    0.700000] NET: Registered protocol family 17
[    0.710000] 8021q: 802.1Q VLAN Support v1.8
[    0.730000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[    0.750000] Freeing unused kernel memory: 160K (80298000 - 802c0000)
procd: Console is alive
procd: - watchdog -
procd: - preinit -
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    4.440000] usbcore: registered new interface driver usbfs
[    4.460000] usbcore: registered new interface driver hub
[    4.470000] usbcore: registered new device driver usb
[    4.500000] dwc_otg: version 2.72a 24-JUN-2008
[    4.510000] dwc_otg: Core Release: 2.66a
[    4.710000] dwc_otg: Periodic Transfer Interrupt Enhancement - disabled
[    4.730000] dwc_otg: Multiprocessor Interrupt Enhancement - disabled
[    4.740000] dwc_otg: Using DMA mode
[    4.750000] dwc_otg: Device using Buffer DMA mode
[    4.760000] dwc_otg 101c0000.otg: DWC OTG Controller
[    4.770000] dwc_otg 101c0000.otg: new USB bus registered, assigned bus number 1
[    4.780000] dwc_otg 101c0000.otg: irq 26, io mem 0x101c0000
[    4.790000] dwc_otg: Init: Port Power? op_state=1
[    4.800000] dwc_otg: Init: Power Port (0)
[    4.810000] hub 1-0:1.0: USB hub found
[    4.820000] hub 1-0:1.0: 1 port detected
[    4.830000] leds-gpio gpio-leds.3: pins are not configured from the driver
[    5.210000] usb 1-1: new full-speed USB device number 2 using dwc_otg
mount_root: No jffs2 marker was found
procd: - early -
procd: - watchdog -
procd: - ubus -
procd: - init -
Please press Enter to activate this console.
[    9.300000] NET: Registered protocol family 10
[    9.330000] nf_conntrack version 0.5.0 (462 buckets, 1848 max)
[    9.350000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    9.400000] Loading modules backported from Linux version master-2014-01-23-0-g62c147d
[    9.420000] Backport generated by backports.git backports-20140124-0-g1256d3e
[    9.440000] ip_tables: (C) 2000-2006 Netfilter Core Team
[    9.530000] xt_time: kernel timezone is -0000
[    9.580000] cfg80211: Calling CRDA to update world regulatory domain
[    9.610000] cfg80211: World regulatory domain updated:
[    9.620000] cfg80211:  DFS Master region: unset
[    9.620000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[    9.640000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[    9.660000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[    9.670000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
[    9.690000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (300 mBi, 2000 mBm)
[    9.700000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (300 mBi, 2000 mBm)
[    9.720000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm)
[    9.860000] PPP generic driver version 2.4.2
[    9.870000] NET: Registered protocol family 24
[    9.940000] rt2800_wmac 10180000.wmac: failed to load eeprom property
[    9.950000] ieee80211 phy0: rt2x00lib_request_eeprom_file: Info - Loading EEPROM data from 'soc_wmac.eeprom'.
[   10.140000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 2872, rev 0200 detected
[   10.160000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 0005 detected
[   19.200000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x16ce instead
[   19.260000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000004: 0xcb90 instead
[   19.290000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000008: 0x91a2 instead
[   19.320000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000000c: 0x159a instead
[   19.350000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000010: 0x033c instead
[   19.380000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000014: 0x621a instead
[   19.410000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000018: 0xfc9f instead
[   19.440000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0000001c: 0xa503 instead
[   19.470000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000020: 0x879b instead
[   19.500000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000024: 0x6c18 instead
[   19.510000] jffs2: Further such events for this erase block will not be printed
[   19.580000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010000: 0xc8bd instead
[   19.640000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010004: 0x8c3c instead
[   19.670000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010008: 0x14da instead
[   19.700000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0001000c: 0xda14 instead
[   19.730000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010010: 0x1e45 instead
[   19.760000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010014: 0xe547 instead
[   19.790000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010018: 0xdf83 instead
[   19.820000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0001001c: 0x8359 instead
[   19.850000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010020: 0xee3d instead
[   19.880000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00010024: 0xa9b3 instead
[   19.890000] jffs2: Further such events for this erase block will not be printed
[   19.960000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020000: 0xfb77 instead
[   20.020000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020004: 0x543f instead
[   20.050000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020008: 0x2615 instead
[   20.080000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0002000c: 0xa0a5 instead
[   20.110000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020010: 0xc5a3 instead
[   20.140000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020014: 0x9be6 instead
[   20.170000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020018: 0x5307 instead
[   20.200000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0002001c: 0xdc6b instead
[   20.230000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020020: 0x88a0 instead
[   20.260000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00020024: 0x9c05 instead
[   20.270000] jffs2: Further such events for this erase block will not be printed
[   20.340000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030000: 0xd89f instead
[   20.400000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030004: 0xda0c instead
[   20.430000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030008: 0xb107 instead
[   20.460000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0003000c: 0xb351 instead
[   20.490000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030010: 0x0bf8 instead
[   20.520000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030014: 0xb9ab instead
[   20.550000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030018: 0x7507 instead
[   20.580000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0003001c: 0x4398 instead
[   20.610000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030020: 0x5752 instead
[   20.640000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00030024: 0x1d14 instead
[   20.650000] jffs2: Further such events for this erase block will not be printed
[   20.720000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040000: 0xb853 instead
[   20.780000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040004: 0x558a instead
[   20.810000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040008: 0xb66b instead
[   20.840000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0004000c: 0xbe0a instead
[   20.870000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040010: 0x73e8 instead
[   20.900000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040014: 0xf902 instead
[   20.930000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040018: 0x5742 instead
[   20.960000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0004001c: 0x7e3d instead
[   20.990000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040020: 0x8fa8 instead
[   21.020000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00040024: 0xc6ca instead
[   21.030000] jffs2: Further such events for this erase block will not be printed
[   21.100000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050000: 0x8b10 instead
[   21.180000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050004: 0xc44c instead
[   21.220000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050008: 0xabbe instead
[   21.260000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0005000c: 0x9eef instead
[   21.300000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050010: 0xa84c instead
[   21.340000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050014: 0x875c instead
[   21.390000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050018: 0x8481 instead
[   21.430000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0005001c: 0x74ed instead
[   21.470000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050020: 0x40dd instead
[   21.510000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00050024: 0x14e9 instead
[   21.520000] jffs2: Further such events for this erase block will not be printed
[   21.620000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060000: 0x0aa7 instead
[   21.700000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060004: 0x60b5 instead
[   21.740000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060008: 0xf513 instead
[   21.780000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0006000c: 0x4e01 instead
[   21.820000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060010: 0xd7a6 instead
[   21.860000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060014: 0xa507 instead
[   21.900000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060018: 0x1e72 instead
[   21.940000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0006001c: 0xa382 instead
[   21.970000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060020: 0x4a06 instead
[   22.030000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00060024: 0x0665 instead
[   22.040000] jffs2: Further such events for this erase block will not be printed
[   22.110000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070000: 0x8206 instead
[   22.170000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070004: 0x785e instead
[   22.200000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070008: 0x035f instead
[   22.230000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0007000c: 0xc159 instead
[   22.260000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070010: 0xff0c instead
[   22.290000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070014: 0xe87b instead
[   22.320000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070018: 0x4021 instead
[   22.350000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0007001c: 0x2de0 instead
[   22.380000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070020: 0x93b7 instead
[   22.410000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00070024: 0x7ce2 instead
[   22.420000] jffs2: Further such events for this erase block will not be printed
[   22.490000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080000: 0xfd28 instead
[   22.550000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080004: 0xabad instead
[   22.580000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080008: 0xfc2e instead
[   22.610000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0008000c: 0x511d instead
[   22.640000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080010: 0xe685 instead
[   22.670000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080014: 0x9b46 instead
[   22.700000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080018: 0x9499 instead
[   22.730000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0008001c: 0x6f83 instead
[   22.760000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080020: 0xb274 instead
[   22.790000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00080024: 0xacd1 instead
[   22.800000] jffs2: Further such events for this erase block will not be printed
[   22.870000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090000: 0x0672 instead
[   22.930000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090004: 0xf685 instead
[   22.960000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090008: 0x0e18 instead
[   22.990000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0009000c: 0x7798 instead
[   23.020000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090010: 0x53a1 instead
[   23.050000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090014: 0x97f6 instead
[   23.080000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090018: 0x1fdc instead
[   23.110000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x0009001c: 0x094a instead
[   23.140000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090020: 0x4168 instead
[   23.170000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00090024: 0xaf9e instead
[   23.180000] jffs2: Further such events for this erase block will not be printed
[   23.250000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0000: 0x501b instead
[   23.310000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0004: 0x088d instead
[   23.340000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0008: 0xaced instead
[   23.370000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a000c: 0x1b42 instead
[   23.400000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0010: 0x69a8 instead
[   23.430000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0014: 0x04d3 instead
[   23.460000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0018: 0x9046 instead
[   23.490000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a001c: 0x739b instead
[   23.520000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0020: 0x31ce instead
[   23.550000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000a0024: 0xe32c instead
[   23.560000] jffs2: Further such events for this erase block will not be printed
[   23.630000] jffs2: Old JFFS2 bitmask found at 0x000aae4c
[   23.640000] jffs2: You cannot use older JFFS2 filesystems with newer kernels
[   23.670000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0000: 0x8540 instead
[   23.730000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0004: 0x9839 instead
[   23.760000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0008: 0x55ed instead
[   23.790000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b000c: 0x140f instead
[   23.820000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0010: 0xf8c3 instead
[   23.850000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0014: 0xb720 instead
[   23.880000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0018: 0xeaa7 instead
[   23.910000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b001c: 0x76ee instead
[   23.940000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0020: 0x7202 instead
[   23.970000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000b0024: 0x38b5 instead
[   23.980000] jffs2: Further such events for this erase block will not be printed
[   24.050000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0000: 0xffef instead
[   24.110000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0004: 0x47cd instead
[   24.140000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0008: 0x932a instead
[   24.170000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c000c: 0xf692 instead
[   24.200000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0010: 0x945e instead
[   24.210000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0014: 0x8ada instead
[   24.270000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0018: 0x98de instead
[   24.300000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c001c: 0x3ef4 instead
[   24.330000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0020: 0x8dd0 instead
[   24.360000] jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000c0024: 0x2e1e instead
[   24.370000] jffs2: Further such events for this erase block will not be printed
[   24.410000] jffs2: Cowardly refusing to erase blocks on filesystem with no valid JFFS2 nodes
[   24.430000] jffs2: empty_blocks 3, bad_blocks 0, c->nr_blocks 16
procd: - init complete -
[   27.400000] device eth0 entered promiscuous mode
[   27.420000] br-lan: port 1(eth0) entered forwarding state
[   27.430000] br-lan: port 1(eth0) entered forwarding state
[   29.430000] br-lan: port 1(eth0) entered forwarding state

@an big thank you for the explanations on the memory restrictions! I guess I was lucky with my own kernel build and got it stripped down enough to not break those limits then. I haven't really tried it beyond booting and configuring the network, so it might be too stripped down to be really useful. Will do some more testing.

ldpinney wrote:

ASIC 3052_MP2   <-- 930 A1 Hardware ?

Yup, 930 A1! Got an 930L A3 as well but I haven't soldered console to that one, guess that part isn't something one can see without serial console?

ldpinney wrote:

@ vitorm
only tx/rx/gnd, NOT 3.3v

Thank you!

I managed to connect it via serial but I think it's indeed fried.
This is the output message:

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  256 kB
relocate_code Pointer at: 7ffec000

Then nothing else is showed. It's really strange it's showing DRAM as 256kB, since it should be 32MB, right?
Any suggestion? Is it really fried?
Thanks!

(Last edited by vitorm on 17 Jun 2015, 21:16)

@ vitorm
Doesn't look good.
It should be :

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

@ honken
Thank you for clarification. I had silent "Starting kernel ..." messages in some of my experiments as well, that's why I was just thinking you faced the same problem smile

By the way, I did not solder the serial: my camera has nice holes for rx/tx and gnd - I just plugged the pins into these holes. Looks pretty solid and still attached after a week or two smile

an wrote:

By the way, I did not solder the serial: my camera has nice holes for rx/tx and gnd - I just plugged the pins into these holes. Looks pretty solid and still attached after a week or two smile

Ah that's convenient, I was really worried I would fry my board. Tiny tiny connectors smile

I've managed to get my DCS-930 to upgrade from the emergency web interface using an image I've built from the latest sources. I took the default config that I got r39854 running on to begin with. Kernel size in that one was ~900KB I think. Stripped it down by removing stuff I did not see need for on a camera (PPP, IPv6 and a few other things) and got the kernel down to 860KB. After that I pulled the most recent sources and used the same config without any additional modification really. Compiled it and got a kernel at about 970KB and a Squashfs-image of 1MB. Using this it upgrades and can successfully boot:

U-Boot 1.1.3
            
Board: Ralink APSoC DRAM:  32 MB
relocate_code Pointer at: 81fac000
config usb..                      
flash_protect ON: from 0xBF000000 to 0xBF021767
flash_protect ON: from 0xBF030000 to 0xBF030FFF
============================================   
Ralink UBoot Version: 3.5.2.0                
-------------------------------------------- 
ASIC 3052_MP2 (Port5<->None)                 
DRAM component: 256 Mbits SDR
DRAM bus: 16 bit             
Total memory: 32 MBytes
Flash component: NOR Flash
============================================ 
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384 
                                                 
 ##### The CPU freq = 320 MHZ #### 
 estimate memory size =32 Mbytes   
                                
Signature: DCS-930                  Release 1.11 (2011-05-31)
                                                             

Please choose the operation: 
   1: Load system code to SDRAM via TFTP. 
   2: Load system code then write to Flash via TFTP. 
   3: Boot system code via Flash (default).          
   4: Entr boot command line interface.    
   7: Load Boot Loader code then write to Flash via Serial. 
   9: Load Boot Loader code then write to Flash via TFTP.   
 0                                                        
***** detect reset button pressed *****
                                       
Entering HTTP server.
do_httpsvr: argc = 1 
do_httpsvr: 0:[httpsvr]
do_httpsvr: loadaddr = 0x80100000
NetLoop: NetRxPackets[0] = 0x81fe7080
NetLoop: NetRxPackets[1] = 0x81fe7680
NetLoop: NetRxPackets[2] = 0x81fe7c80
NetLoop: NetRxPackets[3] = 0x81fe8280
NetLoop: NetRxPackets[4] = 0x81fe8880
NetLoop: NetRxPackets[5] = 0x81fe8e80
NetLoop: NetRxPackets[6] = 0x81fe9480
NetLoop: NetRxPackets[7] = 0x81fe9a80
NetLoop: NetRxPackets[8] = 0x81fea080
NetLoop: NetRxPackets[9] = 0x81fea680
NetLoop: NetRxPackets[10] = 0x81feac80
NetLoop: NetRxPackets[11] = 0x81feb280
NetLoop: NetRxPackets[12] = 0x81feb880
NetLoop: NetRxPackets[13] = 0x81febe80
NetLoop: NetRxPackets[14] = 0x81fec480
NetLoop: NetRxPackets[15] = 0x81feca80
NetLoop: NetRxPackets[16] = 0x81fed080
NetLoop: NetRxPackets[17] = 0x81fed680
NetLoop: NetRxPackets[18] = 0x81fedc80
NetLoop: NetRxPackets[19] = 0x81fee280
NetLoop: NetTxPacket = 0x81fe6a80     
NetLoop: KSEG1ADDR(NetTxPacket) = 0xa1fe6a80
Trying Eth0 (10/100-M)                      
                      
 Waitting for RX_DMA_BUSY status Start... done
                                              

 Header Payload scatter function is Disable !! 
                                               
 ETH_STATE_ACTIVE!! 
NetLoop: NetOurEther: 00:0C:43:30:52:77
Using Eth0 (10/100-M) device           
Start HTTP server on port 80, 192.168.100.80
Running ...                                 
NetInitTcp: port = 80
HandleTCP: Clear old session !!!
NetInitTcp: port = 80           
send_syn_ack: iphdr->check = 0x3a68
send_syn_ack: tcphdr->check = 0xec7e
HttpHandler: prepare for new session!
HttpHandler: HEADER[GET / HTTP/1.1]  
HttpHandler: End of header!        
HttpHandler: got method GET!
HandleTCP: 0x00000200 = 0x64e66d90 - 0x64e66b90
HandleTCP: bufsize = 0x00000000                
HttpHandler: HEADER[POST / HTTP/1.1]
HttpHandler: End of header!         
mpfd_decode: start, boundary = [---------------------------3364105661315862172129949915], 55 bytes, clen = 4194707
mpfd_decode: FOUND [---------------------------3364105661315862172129949915]                                      
mpfd_decode: BOUNDARY end with []                                           
mpfd_decode: PARTHEAD [Content-Disposition: form-data; name="firmware"; filename="openwrt-ramips-rt305x-dcs-930-squashfs-factory.0
mpfd_decode: PARTHEAD [Content-Type: application/octet-stream] 38                                                                
mpfd_decode: PARTHEAD [] 0                                       
mpfd_decode: entering MPFD_WAIT!
mpfd_decode: load_addr = 0x80100000
mpfd_decode: UPLOADED, upsize = 4194304
HttpHandler: DONE!!! upsize = 4194304  
==============================================
 Image Name     : MIPS OpenWrt Linux-3.18.16  
 Image Size     : 2003938                   
==============================================
HttpHandler: HEADER[]                         
HttpHandler: End of header!
HandleTCP: 0x00000360 = 0x64e670f0 - 0x64e66d90
HandleTCP: bufsize = 0x00000000                
Entering program & boot linux. 
Erase linux block (0xbf050000 ~ 0xbf23ffff)
                                           
 b_end =BF3FFFFF
Erase Flash from 0xbf050000 to 0xbf23ffff in Bank # 1 
**********Erased 31 sectors                           
                           
 Copy linux image[0 byte] to Flash[0xBF050000].... 
Copy to Flash...                                   
 Copy 2003938 byte to Flash... 
 addr = 0xBF0B2832 ,cnt=1600432 
 addr = 0xBF115066 ,cnt=1196924 
 addr = 0xBF17789A ,cnt=793416  
 addr = 0xBF1DA0CE ,cnt=389908 done
## Booting image at bf050000 ...   
   Image Name:   MIPS OpenWrt Linux-3.18.16
   Created:      2015-06-18   0:03:35 UTC  
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    2003874 Bytes =  1.9 MB                  
   Load Address: 80000000               
   Entry Point:  80000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd                           
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 32                         
                                 
Starting kernel ...
                   
[    0.000000] Linux version 3.18.16 (build@saturnine) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r46021) ) #1 Thu Jun 185
[    0.000000] SoC Type: Ralink RT3350 id:1 rev:2
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=0002f1d7
[    0.000000] Readback ErrCtl register=0002f1d7
[    0.000000] Memory: 29216K/32768K available (2388K kernel code, 119K rwdata, 304K rodata, 188K init, 177K bss, 3552K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 320MHz
[    0.000000] clocksource_of_init: no matching clocksources found
[    0.000000] Calibrating delay loop... 212.58 BogoMIPS (lpj=1062912)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] pinctrl core: initialized pinctrl subsystem
[    0.110000] NET: Registered protocol family 16
[    0.160000] rt2880_gpio 10000600.gpio: registering 24 gpios
[    0.170000] rt2880_gpio 10000600.gpio: registering 24 irq handlers
[    0.180000] Switched to clocksource MIPS
[    0.190000] NET: Registered protocol family 2
[    0.200000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.210000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.220000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.240000] TCP: reno registered
[    0.240000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.250000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.270000] NET: Registered protocol family 1
[    0.280000] rt-timer 10000100.timer: maximum frequency is 6510Hz
[    0.290000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.330000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.340000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.390000] msgmni has been set to 57
[    0.400000] io scheduler noop registered
[    0.410000] io scheduler deadline registered (default)
[    0.420000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.440000] console [ttyS0] disabled
[    0.450000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 6666666) is a 16550A
[    0.460000] console [ttyS0] enabled
[    0.460000] console [ttyS0] enabled
[    0.480000] bootconsole [early0] disabled
[    0.480000] bootconsole [early0] disabled
[    0.500000] 1f000000.cfi: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x0000c2 Chip ID 0x0022a8
[    0.520000] Amd/Fujitsu Extended Query Table at 0x0040
[    0.530000]   Amd/Fujitsu Extended Query version 1.1.
[    0.540000] number of CFI chips: 1
[    0.550000] 6 ofpart partitions found on MTD device 1f000000.cfi
[    0.570000] Creating 6 MTD partitions on "1f000000.cfi":
[    0.580000] 0x000000000000-0x000000030000 : "u-boot"
[    0.590000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.600000] 0x000000040000-0x000000050000 : "factory"
[    0.620000] 0x000000050000-0x0000001a0000 : "kernel"
[    0.630000] 0x000000150000-0x000000400000 : "rootfs"
[    0.640000] mtd: device 4 (rootfs) set to be root filesystem
[    0.650000] 1 squashfs-split partitions found on MTD device rootfs
[    0.660000] 0x000000240000-0x000000400000 : "rootfs_data"
[    0.680000] 0x000000050000-0x000000400000 : "firmware"
[    0.700000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.710000] rt2880_wdt 10000120.watchdog: Initialized
[    0.720000] TCP: cubic registered
[    0.730000] NET: Registered protocol family 17
[    0.740000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if .
[    0.760000] 8021q: 802.1Q VLAN Support v1.8
[    0.800000] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[    0.820000] Freeing unused kernel memory: 188K (802c1000 - 802f0000)
[    2.320000] init: Console is alive
[    2.330000] init: - watchdog -
[    2.450000] random: kmodloader urandom read with 3 bits of entropy available
[    3.330000] init: - preinit -
/etc/preinit: line 1: swconfig: not found
[    3.800000] 8021q: adding VLAN 0 to HW filter on device eth0
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[    7.240000] jffs2: notice: (268) jffs2_build_xattr_subsystem: complete building xattr subsystem, 2 of xdatum (2 unchecked, 0 o.
[    7.270000] mount_root: overlay filesystem has not been fully initialized yet
[    7.340000] mount_root: switching to jffs2 overlay
[    7.400000] procd: - early -
[    7.410000] procd: - watchdog -
[    8.190000] procd: - ubus -
[    9.210000] procd: - init -
Please press Enter to activate this console.
[   10.350000] nf_conntrack version 0.5.0 (459 buckets, 1836 max)
[   10.440000] xt_time: kernel timezone is -0000
[   10.450000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   17.110000] 8021q: adding VLAN 0 to HW filter on device eth0
[   17.150000] device eth0 entered promiscuous mode
[   17.180000] br-lan: port 1(eth0) entered forwarding state
[   17.190000] br-lan: port 1(eth0) entered forwarding state
[   19.190000] br-lan: port 1(eth0) entered forwarding state
[   81.260000] random: nonblocking pool is initialized



BusyBox v1.23.2 (2015-06-18 01:53:18 CEST) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (Bleeding Edge, r46021)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@OpenWrt:/#

I've stripped it down a bit too much to make it useful as a camera, but networking works and it's a starting point to build an image that's of more use. If anyone wants to try the image I can make it available for download. I'll try adding a few more things to it that are missing and see if I can keep it within the size restrictions.

@ honken
I had to sharpen the ends of my standard breadboarding wires a little bit with sand paper to fit into the holes, but that took no more than 3-5 minutes all together.

Great results! I never tried to optimize that hard, my root fs was never less than 2 MiB.

I would appreciate if you could share your make config (I prefer to compile images myself as I prefer to build network configuration into the image for convenience).

Looking at your log I would suggest to include swconfig into the image - I had some issues without this program.

Could you please try the latest mjpg-streamer with your build?

@ an

Put the config here: http://www.tributary.se/openwrt/config_ … _r39854.gz

I'm going through the config now to make it a bit more useful and add more stuff to the squashfs-image. One thing I couldn't get to work was USB, in the older version there was a separate kernel module supporting the USB controller, but I cannot find it now. Any hints on how you got USB running?

ldpinney wrote:

@ vitorm
Doesn't look good.
It should be :

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

Yeah.. Probably ralink soc is fried. Maybe it's time to get a newer one.
I was wondering what could've caused that. I updated its firmware two weeks ago in both cameras. The other one is still working though.
I'm thinking in trying to apply heat to the board, as a last resort..

(Last edited by vitorm on 18 Jun 2015, 20:36)

@ ldpinney
Thank you!

@ honken
Thank you again for your efforts!
I downloaded you config and shall give it a try when I have some free time, probably only next week.

I did nothing to enable USB support. Both dcs-930 profile as well as ldpinney's patch include kernel usb modules for video and audio. Maybe the following commands help you:

This is from my working config:

an@debian ~/OpenWRT/15.05/openwrt$ grep -i usb .config
CONFIG_DEFAULT_kmod-usb-audio=y
CONFIG_DEFAULT_kmod-usb-core=y
CONFIG_DEFAULT_kmod-usb-ohci=y
CONFIG_DEFAULT_kmod-usb2=y
CONFIG_USB_SUPPORT=y
# CONFIG_BUSYBOX_DEFAULT_LSUSB is not set
CONFIG_BUSYBOX_DEFAULT_FEATURE_WGET_STATUSBAR=y
# CONFIG_BUSYBOX_CONFIG_LSUSB is not set
CONFIG_BUSYBOX_CONFIG_FEATURE_WGET_STATUSBAR=y
# CONFIG_PACKAGE_kmod-ledtrig-usbdev is not set
CONFIG_PACKAGE_kmod-usb-audio=y
# USB Support
# CONFIG_PACKAGE_kmod-usb-acm is not set
# CONFIG_PACKAGE_kmod-usb-atm is not set
# CONFIG_PACKAGE_kmod-usb-cm109 is not set
CONFIG_PACKAGE_kmod-usb-core=y
# CONFIG_PACKAGE_kmod-usb-dwc2 is not set
# CONFIG_PACKAGE_kmod-usb-dwc3 is not set
# CONFIG_PACKAGE_kmod-usb-hid is not set
# CONFIG_PACKAGE_kmod-usb-net is not set
CONFIG_PACKAGE_kmod-usb-ohci=y
# CONFIG_PACKAGE_kmod-usb-printer is not set
# CONFIG_PACKAGE_kmod-usb-serial is not set
# CONFIG_PACKAGE_kmod-usb-storage is not set
# CONFIG_PACKAGE_kmod-usb-storage-extras is not set
# CONFIG_PACKAGE_kmod-usb-uhci is not set
# CONFIG_PACKAGE_kmod-usb-wdm is not set
# CONFIG_PACKAGE_kmod-usb-yealink is not set
CONFIG_PACKAGE_kmod-usb2=y
# CONFIG_PACKAGE_kmod-usb3 is not set
# CONFIG_PACKAGE_kmod-usbip is not set
# CONFIG_PACKAGE_kmod-usbip-client is not set
# CONFIG_PACKAGE_kmod-usbip-server is not set
# CONFIG_PACKAGE_kmod-usbmon is not set
# CONFIG_PACKAGE_kmod-libertas-usb is not set
# CONFIG_PACKAGE_kmod-p54-usb is not set
# CONFIG_PACKAGE_kmod-rt2500-usb is not set
# CONFIG_PACKAGE_kmod-rt2800-usb is not set
# CONFIG_PACKAGE_kmod-rt73-usb is not set
# CONFIG_PACKAGE_libusb-1.0 is not set
# CONFIG_PACKAGE_libusb-compat is not set
# CONFIG_PACKAGE_usb-modeswitch is not set
# CONFIG_PACKAGE_usbreset is not set
# CONFIG_PACKAGE_usbutils is not set

And on the camera itself:

root@WebCamPA ~# opkg list-installed | grep usb
kmod-usb-audio - 3.18.14-1
kmod-usb-core - 3.18.14-1
kmod-usb-ohci - 3.18.14-1
kmod-usb2 - 3.18.14-1

@ honken

In your config you have usb as modules. Maybe you just need to build it into the kernel.

@ an

Thanks for the info! I found some indications that the dwc2 driver is what's needed, I don't have it compiled currently. Recompiling now, will see in a bit if that helps smile

kmod-usb-dwc2 not being present was the problem, can see the USB hub and camera with lsusb now. Unfortunately mjpg_streamer does not work though:

[  144.160000] dwc2 101c0000.otg: DWC OTG HCD URB Enqueue failed adding QTD. Error status -28
[  144.180000] uvcvideo: Failed to submit URB 0 (-28).
[  144.190000] ------------[ cut here ]------------
[  144.200000] WARNING: CPU: 0 PID: 811 at drivers/media/v4l2-core/videobuf2-core.c:2135 0x80c396cc [videobuf2_core@80c38000+0x6b)
[  144.230000] Modules linked in: snd_usb_audio uvcvideo snd_usbmidi_lib input_core videobuf2_vmalloc videobuf2_memops videobuf2_6
[  144.300000] CPU: 0 PID: 811 Comm: mjpg_streamer Not tainted 3.18.16 #2
[  144.320000] Stack : 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  144.320000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  144.320000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  144.320000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  144.320000]    00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  144.320000]    ...
[  144.390000] Call Trace:[<80013884>] 0x80013884
[  144.400000] [<80013884>] 0x80013884
[  144.400000] [<80c396cc>] 0x80c396cc [videobuf2_core@80c38000+0x6b30]
[  144.420000] [<80023b58>] 0x80023b58
[  144.420000] [<80c396cc>] 0x80c396cc [videobuf2_core@80c38000+0x6b30]
[  144.440000] [<80023c10>] 0x80023c10
[  144.440000] [<81bafbb4>] 0x81bafbb4 [usbcore@81ba0000+0x1a850]
[  144.460000] [<80c396cc>] 0x80c396cc [videobuf2_core@80c38000+0x6b30]
[  144.470000] [<80c39fe4>] 0x80c39fe4 [videobuf2_core@80c38000+0x6b30]
[  144.480000] [<80c52dbc>] 0x80c52dbc [uvcvideo@80c50000+0xed40]
[  144.490000] [<80c5782c>] 0x80c5782c [uvcvideo@80c50000+0xed40]
[  144.510000] [<80045612>] 0x80045612
[  144.510000] [<80c547e8>] 0x80c547e8 [uvcvideo@80c50000+0xed40]
[  144.530000] [<81be11b0>] 0x81be11b0 [dwc2@81be0000+0xb0b0]
[  144.540000] [<80045612>] 0x80045612
[  144.540000] [<80c263d0>] 0x80c263d0 [videodev@80c20000+0x16c80]
[  144.560000] [<81be3128>] 0x81be3128 [dwc2@81be0000+0xb0b0]
[  144.570000] [<80c53998>] 0x80c53998 [uvcvideo@80c50000+0xed40]
[  144.580000] [<81be3c50>] 0x81be3c50 [dwc2@81be0000+0xb0b0]
[  144.590000] [<81be7268>] 0x81be7268 [dwc2@81be0000+0xb0b0]
[  144.600000] [<80045612>] 0x80045612
[  144.610000] [<80c207c0>] 0x80c207c0 [videodev@80c20000+0x16c80]
[  144.620000] [<80045612>] 0x80045612
[  144.630000] [<800a7950>] 0x800a7950
[  144.630000] [<8004850c>] 0x8004850c
[  144.640000] [<8004ac78>] 0x8004ac78
[  144.650000] [<80047d78>] 0x80047d78
[  144.660000] [<80045612>] 0x80045612
[  144.660000] [<800a7aac>] 0x800a7aac
[  144.670000] [<80010c30>] 0x80010c30
[  144.680000] [<80045612>] 0x80045612
[  144.680000] [<8000675c>] 0x8000675c
[  144.690000] [<80045612>] 0x80045612
[  144.700000] 
[  144.700000] ---[ end trace e7ddf7f591a12747 ]---

The above comes when running "mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.
so"" but it does not seem to matter so much what options I use. I think I've narrowed it down to the camera being connected as USB 1.1:

root@OpenWrt:/# lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Video, Driver=uvcvideo, 12M
    |__ Port 1: Dev 2, If 1, Class=Video, Driver=uvcvideo, 12M
    |__ Port 1: Dev 2, If 2, Class=Audio, Driver=snd-usb-audio, 12M
    |__ Port 1: Dev 2, If 3, Class=Audio, Driver=snd-usb-audio, 12M

But I cannot figure out how to solve that unfortunately hmm I've tried loading the modules from kmod-usb2 but without any success. It might be something else too, but it's the closest explanation I got so far. Can someone that successfully accessed the camera check what outout lsusb -t gives?

The camera itself seems to work, or at least I can query it:

root@OpenWrt:/# v4l2-ctl -V
Format Video Capture:
        Width/Height  : 640/480
        Pixel Format  : 'MJPG'
        Field         : None
        Bytes per Line: 0
        Size Image    : 307712
        Colorspace    : SRGB

@ honken

Today I logged in to my camera and started

 mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so -p 80 -w /www/webcam/" & 

To my surprise I got a normal 640x480 picture and mjpeg stream. The problem (green screen) I reported earlier does not show up!

The only change to "green screen" setup is that the camera is no more connected through both the serial interface and ethernet. Should not be related, but I cannot note any other change...

It is now running r45924 with ldpinney's patch. openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin image size is 3 670 020 bytes, contains mjpg-streamer and motion built in.
kmod-usb-dwc2 is not installed. lsusb and v4l2-ctl are absent too due to image size restrictions.

(Last edited by an on 19 Jun 2015, 20:31)

vitorm wrote:
ldpinney wrote:

@ vitorm
Doesn't look good.
It should be :

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

Yeah.. Probably ralink soc is fried. Maybe it's time to get a newer one.
I was wondering what could've caused that. I updated its firmware two weeks ago in both cameras. The other one is still working though.
I'm thinking in trying to apply heat to the board, as a last resort..

Actually I'm thinking that what's damaged/corrupted is the flash memory. The flash chip is a MX 29lv320dbti-70g, which is different from DCS-932L-A1 photo in openwrt wiki page. Mine is also 932L A1.
http://s23.postimg.org/xfwysiu23/mxchip.png

Is it possible to force rewrite firmware via serial? Does it worth try to fix it?

(Last edited by vitorm on 20 Jun 2015, 05:03)

### DCS-930l-B1 and DCS-932-B1 ###
In case anyone is interested in reverting to D-Link Firmware :

These files [dcs930lb1_v201_b3-cut.bin] and [dcs932lb1_v201_b3-cut.bin] can be loaded via u-Boot.

https://drive.google.com/open?id=0B0CKg … authuser=0

They are factory firmware with uBoot and D-Link "junk" removed.

Tested on my 930 B1 and 932 B1

@ vitorm
It's BROKEN...You have little to lose in attempting a repair.

(Last edited by ldpinney on 22 Jun 2015, 06:44)

ldpinney wrote:

They are factory firmware with uBoot and D-Link "junk" removed.

@ldpinney

Could you please tell us a little bit more about "D-Link junk". What exactly did you remove from the factory firmware?

Did you activate telnetd in this firmware? If yes, could you please provide more details on how you did it?

Personally, since early May I am using one of my DCS-930L with self-customized factory firmware with most of /mydlink folder content deleted. However, I am still using alphapd there. I would also call alphapd as a D-Link junk, but this junk is essential for webcam functionality sad

I have telnetd running putting

::respawn:/usr/sbin/telnetd

to /etc_ro/inittab, but this approach generates ongoing restarts of telnet daemon sad

Thank you in advance.

(Last edited by an on 18 Aug 2015, 03:11)

The bootloader partition for this device also contains some other "junk" ...
I didn't examine the "junk" very closely since my goal was to provide a way to go to/from OpenWrt and factory firmware.

Hi and thanks to all of you for the hard work! smile

I would like to flash my DCS-930L B1 with OpenWRT but i am a bit confused about the current status. The wiki says it should work with (from?) version 46042.

@an: Which configuration should i use then? Could you please share one with USB working?
Are the snapshot builds such as http://downloads.openwrt.org/snapshots/ … actory.bin expected to be usable? The camera remains in power cycle loop hmm

Thanks for your support!

(Last edited by maclord on 20 Aug 2015, 21:01)