Pages

2014年2月23日

[ Photography ] 將 TP-Link MR3040 改造成 DslrDashboard 可遙控的遠端伺服器

TL-MR3040-V2-04
[ Android App ] DslrDashboard ,全能 Nikon & Canon DSLR 操作 app! 中介紹過 DslrDashboard 可以透過 Wi-Fi 連接安裝了 OpenWRT 或 Linux 的機器進行遠端遙控。這篇就來示範如何在 TP-Link 的 TP-MR3040 上安裝 OpenWRT,讓 DslrDashboard 透過 TP-MR3040 遠端遙控你的 DSLR。

延伸閱讀

[ Android App ] DslrDashboard ,全能 Nikon DSLR 操作 app!介面介紹篇

[ Photography ] DslrDashboard 實戰:與聚焦攝影 ( Focus stacking ) 有關的對焦包圍 ( Focus BKT )

[ Android App ] DslrDashboard 操作應用篇–Live view,縮時攝影,聲控拍照

 


原理

00001
▲TP-Link TP-MR3040

TP-Link TP-MR3040(以下簡稱 MR3040)是一顆 3G/3.75G 網路分享器。MR3040 並沒有內建 SIM 卡插槽,而是利用上圖標示(二)的 USB 埠連接 3G/3.75G USB 網卡,然後透過有線網路(從標示(一)的網路埠)或是 Wi-Fi 分享網路。而標示(三)的 microUSB 埠則是充電埠。藉由 MR3040 提供的無線網路,讓運行 DslrDashboard 的 Android 連接 MR3040。

使用 MR3040 跟使用 Android 當被遙控的遠端伺服器有什麼差別?

雖然 DslrDashboard 可以在 Android 裝置上將自己當成遠端伺服器,供其他運行了 DslrDashboard 的裝置連進來操作,那麼為什麼還會有 MR3040 + OpenWRT 的方案?這個方案有什麼優勢呢?
  • 便宜。MR3040 不到新台幣一千元。要用這個價格買到有 USB Host 而且能運行 Android 4.x 的裝置有一定難度。
  • 電力支援。通常 Android 裝置都只有一個 USB 埠,接上 DSLR 後如果中途電力不足就沒辦法充電了!但是 MR3040 充電用的 USB 埠是獨立的。MR3040 連接 DSLR 工作中電力不足只需要拿出行動電源接上就可以充電,繼續奮戰。
  • 線材方便。不用準備 OTG 轉接線(頭)了。

開始動手改造吧!其實也只是安裝新韌體然後設定一下而已…

  1. 請先將 MR3040 充滿電。更新過程中因為沒電而中斷的話可是會變磚的,只能送回原廠維修了。

  2. https://code.google.com/p/dslrdashboard/downloads/list 下載韌體。目前 DslrDashboard 下載頁面提供以下四個檔案:
    openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-factory.bin
    openwrt-ar71xx-generic-tl-mr3040-v1-squashfs-sysupgrade.bin
    openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-factory.bin
    openwrt-ar71xx-generic-tl-mr3040-v2-squashfs-sysupgrade.bin
    主檔名末為 factory 的是供第一次安裝使用的。sysupgrade 則是給之前就安裝了 OpenWRT 的裝置升級用的。中間可以看到有 v1 與 v2 字樣。由於 MR3040 有分 v1 與 v2 兩個版本,所以請確定你手上的 MR3040 版本再下載對應的檔案。關於如何查看硬體版本,請參考 TP-Link 官方說明:如何查看 TP-LINK 裝置的硬體版本?

    本文描述的是第一次安裝的過程,所以下載主檔名末為 factory 的檔案。

  3. 準備一條網路線與一台有網路卡也可以跑瀏覽器的裝置(電腦/平板/Chromebook等),將 MR3040 開機,靜待一分鐘後用網路線將 MR3040 與網路卡連接。 沒有變更過設定的 MR3040 有啟動 DHCP 功能,因此網路線接上後,網路卡端的裝置應該會收到一組 IP,區段為 192.168.0.x。

  4. 開啟瀏覽器,連接到 192.168.0.1。這是預設的 MR3040 的 IP。

  5. 瀏覽器會跳出登入提示。預設的帳號是 admin,預設的密碼是 admin。
    00002

  6. 登入後看到的是 MR3040 的管理網頁。點擊左側選單列最下面的【System Tools】。
    00003

  7. 在【System Tools】向下展開的選單中,點擊【Firmware Upgrade】。
    00004

  8. 在中間的 Firmware Upgrade 處,先按【Choose File】選擇剛剛下載的檔案,然後按下【Upgrade】
    00005

  9. 瀏覽器會詢問是否更新韌體,選【OK】(或【是】)繼續。
    00006

  10. 畫面上會有聊勝於無的進度提示。
    00007

    更新完畢後 MR3040 會自動重開機。
    00008

  11. 數秒後網頁會自動更新。網頁更新後會瀏覽器會告知無法連上 192.168.0.1。因為 IP 已經不一樣了。請將網路線與 MR3040 斷開,等待數秒後重新接回去。此時運行瀏覽器的電腦/平板應該會得到一組新 IP,區段為 192.168.1.x。

  12. 瀏覽器連接上 192.168.1.1。這是現在的 MR3040 的新 IP。

  13. 因為這是第一次登入,是個乾淨的系統,什麼都沒有。畫面提示還沒有設定密碼。這樣很危險。為了避免使用的時候被有心人士入侵,所以建議設定密碼。先點標示為(一)的 Go to password configuration… 連結。畫面會閃一下又回到這邊。接下來點標示而(二)的 Login,就會進入密碼設定畫面。
    00009

  14. OpenWRT 支援 SSH 登入。如果你不知道什麼是 SSH,建議刪除。因為多一個對外連接的介面就是多一層風險。點下圖紅框的【Delete】刪除這組 SSH 設定。
    00010

  15. 在 Password 欄位輸入你想用的密碼,然後在 Confirmation 欄位再輸入同樣的密碼。接著按右下角的【Save & Apply】直接應用此密碼。
    00011

  16. 按照下圖所示,找到 System,選擇正確的時區,再點一下【Sync with browser】當 MR3040 調整到正確的時間。然後按下右下角的【Save & Apply】。
    00012

  17. 接下來要設定 MR3040 的 Wi-Fi 了。

    重要!由於 MR3040 本身沒有 SIM 卡插槽,連外能力是藉由插在 USB 埠上的 3G/3.75G USB 網卡達成的。如今 USB 埠被用來連接相機,因此 MR3040 沒有連外能力了。

    因為這個原因,接下來的設定將同時解說以下兩個不同需求。
    ►以 MR3040 為 AP,Android 裝置連上 MR3040,Android 裝置不需要連外。 (步驟 19)
    ►Android 開啟 Wi-Fi Hotspot 共享,MR3040 連上 Android 裝置。Android 依然可以連外。(步驟 20)

    關於 Wi-Fi 或其他網路的技術細節設定請自行學習。

  18. 到 Network 的 WiFi,然後點【Edit】
    00013

  19. ►以 MR3040 為 AP,Android 裝置連上 MR3040,Android 裝置不需要連外。
    (如果你的 Android 需要連線能力,請跳過此步驟直接看步驟 20)
    你可以先修改 ESSID。這是指 MR3040 提供的無線網路的名字,也就是你會在 Android 上看到的無線網路的名稱。然後按一下 Wireless network is disabled 旁的【Enable】啟動無線網路。
    00014

    啟動後 Status 處會變成如下圖。
    00015

    接下來到 Wireless Security,選擇一種加密方式。雖然可以不選擇,但是為了安全強烈建議加密無線訊號。至於要選哪一種無線加密方式需要看你的 Android 裝置最高支援到哪一種。因為如果 MR3040 選擇的加密方式高於 Android 裝置會導致無法連線。
    00016

    選擇好加密方式後,在 Key 輸入要使用的密碼。
    00017

    一切選擇完畢後,點右下角的【Save & Apply】。
    接下來請直接前往步驟21。

  20. ►Android 開啟 Wi-Fi Hotspot 共享,MR3040 連上 Android 裝置。Android 依然可以連外。
    請先啟動 Android 的 Hotspot。接著到 Network 的 WiFi。然後點【Scan】讓 MR3040 掃描無線網路。00022

    從掃描到的網路的清單中找到 Android 裝置分享的網路。以此為例,我的 Android 裝置分享的網路名稱為 DJXZ。找到後,點右側的【Join Network】
    00023

    在 WPA passphrase 填入密碼。Name of the new network 欄位可以填入喜歡的名稱。然後按下右下角的【Submit】
    00025

    【Submit】按下後會跳到 Wi-Fi 設定的畫面。將 Channel 修改為 auto,而且把 Mode 下面的 BSSID(圖片剛好沒截到)刪除。之後按右下角的【Save & Apply】即可。
    00024 
    最後要關閉 OpenWRT 內建的防火牆。內建的防火牆並沒有設定開啟必要的通訊埠的規則(作者預先的設計應該是以 MR3040 為 AP 提供無線網路,而 Android 裝置連上 MR3040,因此 MR3040 必須要有對外防禦的能力。但是我們現在的作法反過來了,反而會影響 Android 裝置上的 DslrDashboard 運作)。

    到 System 的 Startup,找到 firewall 後先按最右邊的【Stop】,然後按原本是綠色的【Enabled】使之變成紅色的【Disabled】,如下圖。然後按下右下角的【Submit】。
    00027 
    接下來,回到 Android 裝置上。進入 Hotspot 設定畫面,就可以看到有一個裝置連上來。下面的 IP 就是 MR3040 的 IP,請記住這組 IP。如果你的 Android 正分享網路給多個裝置使用,你就需要自己判斷哪一個是 MR3040。
    00026

  21. 將你的 DSLR 關機,用 USB 線與 MR3040 連接後開機。

  22. 接著在 Android 裝置上啟動 DslrDashboard 後長按 Connect to OpenWrt/Linux,在跳出來的對話框輸入 MR3040 的 IP。
    00028

    ►以 MR3040 為 AP,Android 裝置連上 MR3040,Android 裝置不需要連外。
    預設是 192.168.1.1。

    ►Android 開啟 Wi-Fi Hotspot 共享,MR3040 連上 Android 裝置。Android 依然可以連外。
    從 Hotspot 取得 IP,然後輸入於此處。

    接下來按下【Ok】後就會連上 MR3040。

  23. 開心的遠端遙控 DSLR 囉!

  24. 如果你的 DslrDashboard 一直連不上,請試著先關閉 DslrDashboard,然後把 MR3040 關機後重開機,一分鐘後再啟動 DslrDashboard 嘗試看看。

你也可以試用看看正在測試中的新版本

作者在 2014/02/06 於 LRTimeplase 論壇發佈了尚在測試中的韌體與 app。如果你有需要可以從下面連結取得:https://drive.google.com/folderview?id=0BxMZ8XY3H2wiNmtrS0FtLTJxR1E&usp=sharing 。其中

TP-Link MR3040 lastest DDServer firmware
這個目錄存放的是 MR3040 用的韌體。命名方式跟上面相同。
DslrDashboard current 這個目錄存放的是 DslrDashboard 的 app。

我的 Android 是原生系統,熱點(hotspot)管理看不到連上來的裝置!那我要怎麼知道 MR3040 的 IP!?

安裝 IPScanner。畫面雖然非常「工程人員」化,但是很有用。
  1. 選單中的 Show IP 可以呈現本機的 IP。當 Hotspot 啟動時是本機的 Hotspot IP,當 Wi-Fi 啟動時是本機的 Wi-Fi IP。
    00030

  2. 這個畫面是在 Hotspot 啟動時取得的 IP。所以接上了的 MR3040 的 IP 也會落在 192.168.43.x 區段。
    00031

  3. 然後在 “Hostname or IP Address” 輸入 “192.168.43.0/24” 之後選下面的【-sn】,接著按【Run】。等到跑完後下面會列出結果。被掃描到的使用中的 IP 就會列出來。例如本圖顯示只有 192.168.43.1 也就是本機被掃描到。如果 MR3040 開機了,那應該就會掃到第二組 IP。在 DslrDashboard 中使用該組 IP 連線。
    00032

沒有留言: