Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
toh:d-link:dcs-930l [2018/03/23 22:50] tmomastoh:d-link:dcs-930l [2024/09/10 18:10] – [IR LED support (932L only)] stokito
Line 1: Line 1:
 ====== D-Link DCS-930L/932L/933L ====== ====== D-Link DCS-930L/932L/933L ======
-D-Link DCS-930L/932L IP Camera 
  
-OpenWrt Forum Link : https://forum.openwrt.org/viewtopic.php?id=49212+{{section>meta:infobox:432_warning#infobox_for_dataentries&noheader&nofooter&noeditbutton}} 
 + 
 +The D-Link DCS-930L, DCS-932L and DCS-933L are IP cameras and WiFi repeaters based on custom Linux distribution.\\    
 + 
 +^ DCS-930L  ^ 933L (932L similar) ^ 
 +| {{:media:dlink:dcs-930l:side.jpg?direct&400|}} | {{:media:dlink:dcs-933l:front.jpg?direct&400|}} | 
 ===== Supported Versions ===== ===== Supported Versions =====
-^ Model      ^ Version   ^ OpenWrt Version Supported   ^ Version Specific Notes   ^ +<!-- ToH: { 
-| DCS-930L   | A1        | Barrier Breaker                                      | +  "source": "json", 
-DCS-930L   | B1        | Trunk @ r46042              |                          | +  "dom": "t", 
-DCS-932L   | A1        | Barrier Breaker                                      | +  "paging": false, 
-| DCS-932L   | B1        | Trunk @ r46042              |                          |+  "rotate": true, 
 +  "shownColumns": ["brand", "model", "version", "supportedcurrentrel", "oemdevicehomepageurl", "owrt_forum_topic_url", "deviceid"], 
 +  "filterColumns": {"model": "^DCS-930L/DCS-932L$"} 
 +--> 
  
 ===== Hardware Highlights ===== ===== Hardware Highlights =====
-^ Model           ^ H/W   ^ CPU                     ^ Ram    ^ Flash   ^ Network          ^ USB                ^ Serial   ^ JTag   ^ 
-| DCS-930L/932L   | A1    | RaLink RT3050@320MHz    | 32MB   | 4MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
-| DCS-930L/932L   | B1    | RaLink RT5350F@360MHz   | 32MB   | 4MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
-| DCS-933L        | A1    | RaLink RT3050@400MHz    | 64MB   | 8MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
-| DCS-933L*       | B1    | RaLink RT3352F@400MHz   | 64MB   | 8MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
  
-The DCS-93xL cameras are IP cameras by D-Link with a custom Linux distribution \\    +The 932L and 933L versions have built-in infrared LEDs for night visionIt allow for night time viewing of up to 5 meters (16 feet).\\ 
-A USB camera modules is attached internally to the system. \\ + 
-The 932L version has additional support for infrared LEDs (night vision).\\ +<!-- ToH: { 
-933L has double RAM and FLASH. Official webpage says that it only has 32 MB ram, however boot log and "freesuggests that its at least double of that amount. +  "source": "json", 
 +  "dom": "t", 
 +  "paging": false, 
 +  "rotate": true, 
 +  "shownColumns": ["model", "version", "cpu", "cpumhz", "flashmb", "rammb", "wlanhardware", "wlan24ghz", "wlan50ghz", "ethernet100mports", "ethernet1gports", "modem", "usbports"], 
 +  "filterColumns": {"model": "^DCS-930L/DCS-932L$"
 +} --> 
 + 
 + 
 +The DCS-933L is similar to 932L but it's stock firmware started to support streaming in H.264 codec in addition to MJPG
 +933L has double RAM and FLASH. Official webpage says that it only has 32 MB ram, however boot log and ''free'' suggests that its at least double of that amount.  
 +Note: The DCS-933L B1 is not compatible with the 930L rom, so don't flash it (yet). 
 + 
 +^ Model           ^ H/W Ver ^ CPU                     ^ Ram    ^ Flash   ^ Network          ^ USB                ^ Serial   ^ JTag   ^ 
 +| DCS-933L        | A1      | RaLink RT3050@400MHz    | 64MB   | 8MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
 +| DCS-933L*       | B1      | RaLink RT3352F@400MHz   | 64MB   | 8MB     | 1 x 10/100MBit   | No/Internal Only   | Yes      | No?    | 
 + 
 + 
 +Other models: 
 +  * The DCS-935L is based on a Realtek SoC and will not be supported 
 +  * The DCS-942L is based on a Grain Media GM8126 SoC and also incompatible 
 + 
 +A USB camera modules is attached internally to the system. 
 +===== Installation ===== 
 +<!-- ToH: { 
 +  "source": "json", 
 +  "dom": "t", 
 +  "paging": false, 
 +  "rotate": true, 
 +  "shownColumns": ["model", "version", "supportedcurrentrel", "firmwareopenwrtinstallurl", "firmwareopenwrtupgradeurl", "firmwareoemstockurl"], 
 +  "filterColumns": {"model": "^DCS-930L/DCS-932L$"
 +} -->
  
-* The DCS-933L B1 is not compatible with the 930l rom, so don't flash it (yet).+-> [[docs:guide-user:installation:generic.flashing|Install OpenWrt (generic explanation)]]
  
-* The DCS-935L is based on a Realtek SoC and will not be supported 
  
-The DCS-942L is based on a Grain Media GM8126 SoC and also incompatible+**Note:** Currently the instruction bellow doesn't work. Check the [[https://forum.openwrt.org/t/support-for-the-d-link-dcs-930l-webcam/89212/|forum topic]].
  
-===== OpenWrt Installation ===== 
  
 You do not need serial console to install OpenWrt. \\ You do not need serial console to install OpenWrt. \\
 There is an emergency web interface, which has to be used to flash OpenWrt. \\ There is an emergency web interface, which has to be used to flash OpenWrt. \\
-Uploading via the regular web interface does not work.+Uploading via the regular web interface doesn'work.
  
-  * Disconnect Power 
-  * Press and hold "Reset", connect Power and hold Reset until the blue LED goes out (about 8 seconds). 
-  * Release reset 
-  * Configure your computer to 192.168.0.x 
-  * Fire up a web browser and connect to 192.168.0.20 
-  * Upload your new firmware in the emergency web interface 
  
-After bootup, OpenWrt is reachable at 192.168.1.1 via LANDo not forget to reconfigure your network interface on the computer to DHCPBy default, OpenWrt hands out IP addresses on this interface.+  * Turn off the camera by removing the power cord. 
 +  * Press and hold the Reset button. 
 +  * Plug the power cord back into the device while holding down the Reset until the blue LED goes out (about 8-10 seconds). 
 +  * Release reset. 
 +  * The camera will boot and therefore the web interface for emergency recovery will default to IP 192.168.0.20 
 +  * Connect your computer to the camera with an Ethernet cable. 
 +  * Configure your computer to a static IP 192.168.0.10 with subnet mask 255.255.255.0 (/24). 
 +  * Now you need to upload your new firmware in the emergency web interface. 
 +  * Open in a web browser the emergency web interface on http://192.168.0.20
  
-==== IR LED support (932L only) ====+You should see the following message: "The browser you are using may have difficulty receiving images and video. If you experience any issues viewing this page, we suggest using Internet Explorer.".
  
-The IR LEDs and the IR cutoff filter can be controlled via 3 GPIO linesA userspace daemon that reads the light sensor and control the circuitry can be found at http://www.aboehler.at/hg/lightSensor-daemon. Makefiles for OpenWrt are also included, but you have to compile the package yourself for now. +The old camera mainly used ActiveX from IE to show a player in a browserSo it checks if the User-Agent of a browser to determine the browserBut the restriction mistakenly also applied for the emergency interface.
-After installing lightSensor-daemon, the sensor is polled for light changes and the filter and IR LEDs are controlled accordingly. It seems to react faster to changes in lightning than the original firmware does.+
  
-==== Motion Detection support ====+To bypass this limitation you can install the [[https://webextension.org/listing/useragent-switcher.html|User Agent switcher]] extension and select the Internet Explorer and Windows. Or you can upload the firmware directly from a command line with curl or wget like: 
 +<code> 
 +curl -F firmware=@/tmp/openwrt-ramips-rt305x-dcs-930-squashfs-factory.bin http://192.168.0.20/ 
 +</code> 
 + 
 +Wait until end of upload procedure and the camera will reboot. This can take up to 5 minutes. 
 +After bootup, OpenWrt is reachable at 192.168.1.1 via LAN. 
 +Do not forget to reconfigure your network interface on the computer back to DHCP. 
 +By default, OpenWrt hands out IP addresses on this interface. 
 + 
 + 
 + 
 +===== IR LED support (932L only) ===== 
 + 
 +The IR LEDs and the IR cutoff filter can be controlled via 3 GPIO lines. Use the [[https://gitlab.aboehler.at/andreas/lightsensor-daemon|lightSensor-daemon]] which is a user space daemon that reads the light sensor and control the circuitry. Makefiles for OpenWrt are also included, but you have to compile the package yourself for now. 
 +After installing the ''lightSensor-daemon'', the sensor is polled for light changes and the filter and IR LEDs are controlled accordingly. It seems to react faster to changes in lightning than the original firmware does. 
 + 
 +===== Motion Detection support =====
  
 You can use the OpenWrt "motion" package to enable motion detection and to stream camera images to other devices. 2-3 fps result in 60-80% CPU load. You can use the OpenWrt "motion" package to enable motion detection and to stream camera images to other devices. 2-3 fps result in 60-80% CPU load.
Line 55: Line 106:
 To send out E-Mail notification, you can use "msmtp" or "mini_sendmail". If you use coreutils-base64 (or enable base64 in the busybox configuration), you can even send attachments without the need to install the (much bigger) mutt. To send out E-Mail notification, you can use "msmtp" or "mini_sendmail". If you use coreutils-base64 (or enable base64 in the busybox configuration), you can even send attachments without the need to install the (much bigger) mutt.
  
-==== mjpg_streamer ====+===== mjpg_streamer =====
  
 mjpg_streamer works flawlessly and with very little CPU usage. Recently, I replaced the motion setup on my cameras by mjpg_streamer and put motion on my (more powerful) main router.  mjpg_streamer works flawlessly and with very little CPU usage. Recently, I replaced the motion setup on my cameras by mjpg_streamer and put motion on my (more powerful) main router. 
 +
 +===== Stock firmware =====
 +
 +The original firmware provides the http://camera_ip/vjview.htm to see the camera from a browser with Java applet. This is not supported nowadays but you may try to use IcedTea.
 +
 +You may watch the stream directly with VLC player or MXPlayer.
 +Here are some links that should work:
 +
 +  * /video/mjpg.cgi
 +  * /mjpeg.cgi
 +  * /mjpeg.cgi?user=[USERNAME]&password=[PASSWORD]&channel=[CHANNEL]
 +  * /video.cgi
 +  * /video.cgi?resolution=vga
 +  * /audio.cgi
 +  * /Image.jpg
 +  * /image/jpeg.cgi
 +
 +For the VLC or MXPlayer use a URL like ''http://admin:your_pasword@camera_ip/''.
 +
 +Usually the video delay is about a second over a cord and about 3 seconds over WiFi.
 +
 +Use the command to merge two streams of video and audio:
 +<code>
 +ffmpeg -f mjpeg -i http://1:1@192.168.1.9/mjpeg.cgi -i http://1:1@192.168.1.9/audio.cgi -ar 16000 /home/stivali/$FILENAME.avi
 +</code>
 +
 +
 +===== Hardware =====
  
 ==== Opening the Device ==== ==== Opening the Device ====
Line 67: Line 146:
 J2 is a 4-pin connector or blank header for a serial console. See Photos below. J2 is a 4-pin connector or blank header for a serial console. See Photos below.
  
-===== Internal Photos =====+==== Internal Photos ====
  
-=== DCS-932L-A1=== +=== DCS-930L-A2 ===
-{{:media:dlink:dcs-932l-00.jpg?400|}} +
-{{:media:dlink:dcs-932l-02.jpg?400|}}+
  
-<color green>**Serial Connection**</color>\\ +{{media:dlink:dcs-930l_pcb1.jpg?200|}} 
-{{:media:dlink:dcs-932l-03.jpg?400|}}+{{media:dlink:dcs-930l_pcb2.jpg?200|}}
  
-JP2 is 4-pin connector or blank header serial consoleSoftware settings for the serial port are 57600 8N1.\\+PCB is marked A2, exterior case is marked "H/W Ver.: A3". 
 +U12 is W29GL032CB7S, MiB Flash memory. 
 +U9 is W9825G6JH, 32 MiB SDRAM.
  
 === DCS-930L-B1 === === DCS-930L-B1 ===
Line 83: Line 162:
  
 JP1 is a 4-pin connector or blank header serial console. Software settings for the serial port are 57600 8N1. JP1 is a 4-pin connector or blank header serial console. Software settings for the serial port are 57600 8N1.
 +
 +=== DCS-932L-A1===
 +{{:media:dlink:dcs-932l-00.jpg?400|}}
 +{{:media:dlink:dcs-932l-02.jpg?400|}}
 +
 +<color green>**Serial Connection**</color>\\
 +{{:media:dlink:dcs-932l-03.jpg?400|}}
 +
 +JP2 is a 4-pin connector or blank header serial console. Software settings for the serial port are 57600 8N1.\\
  
 === DCS-933L-A1 === === DCS-933L-A1 ===
Line 92: Line 180:
   * JP2 is the serial port 57600 8n1   * JP2 is the serial port 57600 8n1
   * PCB is marked B1, exterior case is marked "H/W Ver.: A1". Which one should be considered?   * PCB is marked B1, exterior case is marked "H/W Ver.: A1". Which one should be considered?
-  * U6 is RT3352F (although according to this wiki H/W Ver.A1 should be another chip)+  * U6 is RT3352Falthough according to this wiki H/W Ver.A1 should be another chip RT3050. The RT3352F should be for Ver. B1.
   * U7 is M14D5121632A, 64 MiB DDR2 SDRAM.   * U7 is M14D5121632A, 64 MiB DDR2 SDRAM.
   * U11 with ID "OV00780-L28G" is the "Omnivision Technologies IC IMAGE SENSOR" or "Omnivision OV780 H.264 video encoder chip"   * U11 with ID "OV00780-L28G" is the "Omnivision Technologies IC IMAGE SENSOR" or "Omnivision OV780 H.264 video encoder chip"
Line 108: Line 196:
   * 12: IR_LED_OUT_1   * 12: IR_LED_OUT_1
   * 13: WPS_LED: Blue Power LED   * 13: WPS_LED: Blue Power LED
-  * 14: IR_LED_OUT_2: IR Cut-off filter controler+  * 14: IR_LED_OUT_2: IR Cut-off filter controller
   * 17: OV780_SPI_OUT   * 17: OV780_SPI_OUT
   * 18: OV780_SPI_IN   * 18: OV780_SPI_IN
   * 19: PIR_IN: PIR Sensor Input   * 19: PIR_IN: PIR Sensor Input
   * 20: OV780_BOOT_IN   * 20: OV780_BOOT_IN
- 
-=== DCS-930L-A2 === 
- 
-{{media:dlink:dcs-930l_pcb1.jpg?200|}} 
-{{media:dlink:dcs-930l_pcb2.jpg?200|}} 
- 
-PCB is marked A2, exterior case is marked "H/W Ver.: A3". 
-U12 is W29GL032CB7S, 4 MiB Flash memory. 
-U9 is W9825G6JH, 32 MiB SDRAM. 
  
  
-===== Factory Bootlog dcs-933l=====+===== Bootlogs ===== 
 +==== Factory Bootlog DCS-933L ====
 <WRAP bootlog> <WRAP bootlog>
 <nowiki>Linux version 2.6.21 (andy@ipcam-linux.alphanetworks.com) (gcc version 3.4.2) #1619 Mon Apr 21 15:07:52 CST 2014 <nowiki>Linux version 2.6.21 (andy@ipcam-linux.alphanetworks.com) (gcc version 3.4.2) #1619 Mon Apr 21 15:07:52 CST 2014
Line 343: Line 423:
 </WRAP>\\ </WRAP>\\
  
-===== Factory Bootlog dcs-930/932l=====+==== Factory Bootlog DCS-930/932L ====
 <WRAP bootlog> <WRAP bootlog>
 <nowiki>U-Boot 1.1.3 <nowiki>U-Boot 1.1.3
Line 1094: Line 1174:
 ===== Useful links ===== ===== Useful links =====
  
-  * Taking apart and putting together stock firmware(Russian)(DCS-933L) [[http://forum.dlink.ru/viewtopic.php?f=13&t=164084&start=15#p892794]] \\+  * Taking apart and putting together stock firmware(Russian)(DCS-933L) [[http://forum.dlink.ru/viewtopic.php?f=13&t=164084&start=15#p892794]]
   * Automated scripts to take apart firmware image file. [[http://dose.0wnz.at/ipcams/]]   * Automated scripts to take apart firmware image file. [[http://dose.0wnz.at/ipcams/]]
 +  * Thread in the old OpenWrt forum: [[https://forum.archive.openwrt.org/viewtopic.php?id=49212]]
  
 ===== Tags ===== ===== Tags =====
 [[meta:tags|How to add tags]] [[meta:tags|How to add tags]]
 {{tag>ramips rt3050 FastEthernet 32RAM 4Flash MIPS ip_camera}} {{tag>ramips rt3050 FastEthernet 32RAM 4Flash MIPS ip_camera}}
  • Last modified: 2024/09/10 18:42
  • by stokito