{"id":209,"date":"2013-01-22T17:21:24","date_gmt":"2013-01-22T17:21:24","guid":{"rendered":"http:\/\/blog.knofafo.de\/?p=209"},"modified":"2013-09-05T06:59:31","modified_gmt":"2013-09-05T06:59:31","slug":"openwrt-on-tp-link-wdr3600","status":"publish","type":"post","link":"https:\/\/blog.knofafo.de\/?p=209","title":{"rendered":"OpenWRT on TP-Link WDR3600"},"content":{"rendered":"<p>For the history leading to this post, read <a href=\"http:\/\/blog.knofafo.de\/?p=4\" title=\"TP-Link WDR3600: Router! Print-Server?\">TP-Link WDR3600: Router! Print-Server?<\/a> and <a href=\"http:\/\/blog.knofafo.de\/?p=197\" title=\"TP-Link WDR3600 \u2013 no information available\">TP-Link WDR3600 \u2013 no information available<\/a>.<\/p>\n<p>After all the annoying information, I decided to change the firmware of my router. <!--more-->The main reason is that I had a weekend with 4 linux machines in my flat (all dual-boot) and none of them could access the usb-ip interface to the printer. As they also had Windows installed we just rebooted into Windows to install the driver there, which didn&#8217;t work out. Somehow you have to have the printer installed already, then the software can link the usb-ip interface to the already installed printer (correct me if I&#8217;m wrong). In summary: no possibility to use the network-printing under Linux, under Windows it is not very convenient. Actually I can use it only with one machine, so I had no reason to stay with the original firmware. Instead I decided to install <a href=\"https:\/\/openwrt.org\/\" title=\"OpenWRT\" target=\"_blank\">OpenWRT<\/a> (a Linux distribution for embedded devices). In the case it does not improve the situation it actually can&#8217;t make it worse.<\/p>\n<h5>Installing OpenWRT<\/h5>\n<p>OpenWRT has a very comprehensive documentation. It is worth having a closer look at it as mistakes in the process are not easily corrected. My further steps:<\/p>\n<ol>\n<li>Download an appropriate image. I chose openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin from <a href=\"http:\/\/downloads.openwrt.org\/attitude_adjustment\/12.09-rc1\/\" target=\"_blank\">http:\/\/downloads.openwrt.org\/attitude_adjustment\/12.09-rc1\/<\/a>. In the filename you can see that I chose the image for my router, with a squashfs and the factory version. How to decide which filesystem to chose is explained on the OpenWRT page, the factory version allows for being installed via the original firmware&#8217;s webinterface.<\/li>\n<li>This is already step 2. Direct your browser to your router&#8217;s interface, choose &#8220;System Tools&#8221; -> &#8220;Upgrade Firmware&#8221;, upload your image and let the router do the update and the reboot. Note: I kept all the important manual pages of OpenWRT open as it should be expected that the internet connection does not work directly after the upgrade.<\/li>\n<li>Afterwards change the password as explained in the OpenWRT documentation and setup your internet connection, Wifi networks and so on.<\/li>\n<\/ol>\n<h5>Configuring OpenWRT<\/h5>\n<p>With these steps done I can do the same as with the firmware before or as with any normal router. The strengths of OpenWRT should lie within its flexibility and the possibility to install additional packages. Which ones do fulfill my needs? To learn about the possibilities a lot of busy persons wrote a lot of HowTos located under <a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/start\" title=\"http:\/\/wiki.openwrt.org\/doc\/howto\/start\" target=\"_blank\">http:\/\/wiki.openwrt.org\/doc\/howto\/start<\/a>.<\/p>\n<p>An important one might be <a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/generic.uninstall\" title=\"Back to original firmware\">Back to original firmware<\/a>.<\/p>\n<p>I postponed going through the following HowTos (not instantly needed but interesting for me):<\/p>\n<ul>\n<li><a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/lamp\" title=\"Set up a LAMP stack on OpenWrt\">Set up a LAMP stack on OpenWrt<\/a><\/li>\n<li><a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/port.forwarding\" title=\"Port Forwarding\">Port Forwarding<\/a><\/li>\n<li><a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/upnp\" title=\"Universal Plug'n'Play and NAT-PMP on OpenWrt\">Universal Plug&#8217;n&#8217;Play and NAT-PMP on OpenWrt<\/a><\/li>\n<\/ul>\n<h5>Basis USB support<\/h5>\n<p>I started with <a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/usb.essentials\" title=\"USB Basic Support\">USB Basic Support<\/a> which told me that all the important modules are already installed. For convenience I also installed the usbutils package. This is what <code>lsusb<\/code> tells me:<br \/>\n<code><br \/>\nBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub<br \/>\nBus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB<br \/>\n<\/code><\/p>\n<p>Sounds good so far. I installed attached 4-port hub on one port and a my printer on the second port. In the hub I put a 4GB USB stick. They appear as<br \/>\n<code><br \/>\nBus 001 Device 003: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB<br \/>\nBus 001 Device 006: ID 18a5:0304 Verbatim, Ltd<br \/>\nBus 001 Device 005: ID 04e8:328e Samsung Electronics Co., Ltd CLP-310 Color Laser Printer<br \/>\n<\/code><\/p>\n<h5>USB storage<\/h5>\n<p>First I thought, CUPS would be a good solution for the print server and as this needs storage space for spooling installing additional hard disc space seemed a good idea. Eventually I chose another print server than CUPS which needs no space for spooling. Thus the part on external storage has been moved to <a href=\"http:\/\/blog.knofafo.de\/?p=227\" title=\"OpenWRT USB storage\">a separate post<\/a>. If you only want to use the router as a print server, that&#8217;s fine to skip or to do it later. I did it before as more storage opens up nice opportunities as the router acting as central file server, as a media server etc.<\/p>\n<h5>Printer installation<\/h5>\n<p>My choice fell on the <a href=\"http:\/\/wiki.openwrt.org\/doc\/howto\/p910nd.server\" title=\"p910nd Printer Server\" target=\"_blank\">p910nd Printer Server<\/a>. For the installation I simply followed the HowTo (you can do a ssh-login or install the package vie the web interface). The most complicated part was the installation on the client which is not part of this blog entry. Printers can be accessed directly via IPP on <code>socket:\/\/router.ip:9100<\/code>. And now the most important information: I can print from within Linux!<\/p>\n<p>To give you an impression, my configuration <code>\/etc\/config\/p910nd<\/code> reads:<br \/>\n<code><br \/>\nconfig p910nd 'cfg1'<br \/>\n        option device '\/dev\/usb\/lp0'<br \/>\n        option port '0'<br \/>\n        option bidirectional '1'<br \/>\n        option enabled '1'<br \/>\n<\/code><\/p>\n<p>Technical notes:<\/p>\n<ul>\n<li>I installed kmod-usb-printer locally the printer server itself onto the USB disc.<\/li>\n<li>For the installation on the USB storage the tutorial of the <a href=\"http:\/\/wiki.openwrt.org\/doc\/techref\/opkg#installation.destinations\" title=\"OPKG Package Manager\">OPKG Package Manager<\/a> is quite useful.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>For the history leading to this post, read TP-Link WDR3600: Router! Print-Server? and TP-Link WDR3600 \u2013 no information available. After all the annoying information, I decided to change the firmware of my router.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0},"categories":[3,19,4],"tags":[7,38,27],"_links":{"self":[{"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/posts\/209"}],"collection":[{"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=209"}],"version-history":[{"count":27,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/posts\/209\/revisions"}],"predecessor-version":[{"id":243,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=\/wp\/v2\/posts\/209\/revisions\/243"}],"wp:attachment":[{"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=209"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=209"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.knofafo.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=209"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}