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.

I would appreciate if anyone confirm that a DCS930L-A1 or DCS932L-A1 can work with openwrt.
Also, if they ever succeeded with serial console on these devices.....thanks.

I have a DCS932L H/W version B1. I followed @veti's instructions, and it works fine. However I built my image with DHCP/DNS and without Luci. Again, it doesn't leave much JFFS space. For this particular model, the serial port is easy, no soldering involved. I crammed some jumper wires into the holes. I had to make sure nothing bumped the board while interfacing, but it was enough to tftp the sysupgrade-image. The Chaos Calmer sysupgrade file listed in the tech data page works also (via tftp). I tried the emergency web page upload with no success.
The light sensor daemon works too. Again, followed @veti's instructions and changed the buf[0] != code, then compiled with the mipsel-gcc compiler found in the ramips/rt305x SDK.

I'm on the fence about this cam... deciding whether to buy more. I found mine at a thrift store, but online they are under $40US. I think it has a lot of potential even though it lacks resources. If someone wanted to buy a RaspberryPi with IR camera, wifi, SD card, and power supply, JUST so they can build a net camera to monitor a location, it would could cost well over $50US. I'd tell them to get one of these instead. These things run on 5Volts. I measured mine and it only drew about 300mA while running mjpg-streamer and 1 client connected. You can power these things with those USB cell phone charging battery packs that they sell in every other gas station nowadays. The cheap lipstick sized ones are usually ~2000mAh. That would power this thing for over 4 hours. Then add an Arduino with senors to the ethernet port, and you've got a decent portable environment monitoring device. Arduino nano clones run about $5US now, and their ethernet shields can be found for about $5US also. This camera looks easy to weather proof too. I want to buy more, but most sites don't indicate if their DCS932L is a B1 or A1. Has anyone had success on the A1 version yet?
I noticed snd-usb-audio show up in the logs. I'm assuming there is a way to activate the microphone. Any success?? I plan to play with it this weekend.

(Last edited by mike402 on 30 Dec 2016, 08:40)

The microphone works!!! Install alsa-utils. I had to rebuild the image to fit it. I took out everything IPv6 & PPP related and kept iptables, firewall, and DHCP/DNS, in case I want to use the camera as router. No luci. I only added mjpg-streamer, libjpeg, and alsa-utils. When all is said and done, I only have about 160kb of free JFFS space available. That's fine with me... I'm buying two more.

@ mike402
If you want to assemble really cheap solution, you can try Pogoplug Mobile. Adorama still sells them on Amazon and eBay for under $10 (from time to time they drop price to $6,99 with free shipping). You can install OpenWRT in NAND (128 MB) and enjoy about 100MB for your OpenWRT packages.
usb hub + usb wifi adapter add about $10. Even with good HD USB Webcam you will have the whole system under $40.

If you can live with ethernet connection, you need only pogoplug and usb camera.

dmknob wrote:

So, i need help tongue

With usb-serial and solder skills, i get these bootlog on DCS930L A1:

"U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB
relocate_code Pointer at: 81fac000
config usb..

Set info->start[0]=BF000000
flash_protect ON: from 0xBF000000 to 0xBF021767
flash_protect ON: from 0xBF030000 to 0xBF030FFF
*** Warning - bad CRC, using default environment

Ralink UBoot Version:
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 "

The "Signature" and other lines does not comes from serial.
And i have solid Red and Blue leds.

Any advises?
i have more 2 cams death (1 even shows up the red led..).

Thanks all in advance.

I'm in the same situation. Any help?


No one who can help me?

I have what seems to be a DCS-930L A2. The top sticker says P/N CCS930LANA...A2 H/W Ver.: A2 F/W Ver: 1.08. I can flash the *factory.bin via the rescue web interface, but it never seems to boot. I get an Ethernet connection, but no IP connectivity. Ping says is "Destination Host Unreachable". The front LED is red and the blue LED stays on.

I had a lot of trouble using Chrome and Firefox to upload firmwares via the recovery interface. In Chrome most of the interface became invisible. That didn't happen in Firefox, but I never got an upload to work. Wireshark shows TCP errors. I tried both Windows 7 and Linux.

However, it works perfectly from cURL in Linux, using "curl -F firmware=@firmware.bin URL". (Edited because I can't post links.) I copied the firmware to firmware.bin in case the long file name is a problem. This never failed for *factory.bin but always failed for *sysupgrade.bin. When it succeeds, cURL outputs a short web page "IMAGE UPLOADED SUCCESSFULLY" and a JavaScript 90 second countdown.

I've tried a whole bunch of things, including openwrt-15.05.1-ramips-rt305x-dcs-930-squashfs-factory.bin
openwrt-15.05-ramips-rt305x-dcs-930l-b1-squashfs-factory.bin, openwrt-ramips-rt305x-dcs-930-squashfs-factory.bin, and DCS-930 and DCS-930-B1 custom builds of 15.05.1. They all gave the same result. When I instead used dcs930l_v1.16.04.bin from, I got the original firmware back without problem. It even kept the settings.

I would like to try OpenWrt, but don't know what else to try to make it work. Probably I should open up the cam and look at serial output, but I don't feel like dealing with the clips holding it together now. Is there some trick to make it easy?

I managed to open my camera without breaking any clips. I used one of those iPod opening tools with a simple wedge along the end. Placing the tool flat against the grey rim caused it to slip and scratch the front a bit. But, placing the tool at an angle with the cut surface of the wedge parallel to the rim allowed me to disengage the clips. I was pushing at approximately the midpoint of one side. The grey rim stays with the back and the front separates from the grey rim.

Then I hooked up a serial connection. I could boot various sysupgrade.bin files, but they failed to find root, giving a lot of JFFS errors like jffs2: jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x000e0024: 0xc1a8 instead. Flashing them didn't help either. i could not boot factoryupgrade.bin files directly from TFTP, because the bootloader said "Verifying Checksum ... Bad Data CRC".

Then I finally tried to flash openwrt-ramips-rt305x-dcs-930-squashfs-factory.bin and I bricked the device. They factory.bin files ar exactly 4 megabytes, the same size as the flash, but they're "u-boot legacy uImage" files. They start with a header, which starts with a magic number. However, the original firmware DCS-930L_REVA_FIRMWARE_1.16.04.BIN, which is the same size, starts with MIPS code, with a branch instruction going to what definitely seems like startup code. The original firmware also contains bootloader strings.

So, I overwrote the bootloader with garbage, and bricked the device such that only JTAG or maybe the apparently undocumented iNIC boot using internal ROM could recover it. I'm left wondering what's the point of the factory.bin files. How could they work with this device? Why is OpenWrt releasing them?

(Last edited by dreamlayers on 1 Jan 2018, 04:32)

Got the same set of problems that dreamlayers had, but with the DCS-930L B2. Original firmware dcs930lb1_v2.14.04.bin works fine though, and also looks more or less the same

openwrt-15.05-ramips-rt305x-dcs-930l-b1-squashfs-factory.bin: u-boot legacy uImage, MIPS OpenWrt Linux-3.18.20, Linux/MIPS, OS Kernel Image (lzma), 3514304 bytes, Fri Sep 11 17:26:57 2015, Load Address: 0x80000000, Entry Point: 0x80000000, Header CRC: 0x7044DC9E, Data CRC: 0x2FED1041

dcs930lb1_v2.14.04.bin: u-boot legacy uImage, SPI Flash Image, Linux/MIPS, Standalone Program (Not compressed), 111116 bytes, Fri Sep  9 14:07:58 2016, Load Address: 0x80200000, Entry Point: 0x80200000, Header CRC: 0x5ACE9A9B, Data CRC: 0xEE0479B8

Okay, I see dcs930lb1_v2.14.04.bin original firmware for B version cameras with RT535x is u-boot format. However, dcs930l_v1.16.04.bin original firmware for A version cameras is not in u-boot format. OpenWrt firmware which seems to be for A version cameras is in u-boot format, for example openwrt-15.05.1-ramips-rt305x-dcs-930-squashfs-factory.bin. That definitely seems to be intended for A version because the same directory also contains dcs-930l-b1-squashfs-factory.bin for B version.

(Last edited by dreamlayers on 13 Jan 2018, 07:44)

The discussion might have continued from here.