드론의 FC(Flight controller)를 과연 100% 독자적으로 개발 했을까요?
오픈소스를 통해서,나만의 플랫폼화를 이루었다고 생각한다.그런데,지금 DJI사는 어떠한 디버그 툴도 제공하지 않는다.제품이 고장나면,기본적으로 제품에서 나오는 데이터를 활용한 1차적인 증상을 다루어야 하는데,이툴조차 중국 DJI는 제공하지 않는다. 조만간 해킹을 통해서,이런 정보는 곧 뚫릴수 있을거라 감히 짐작해본다.. 오픈소스의 장점을 자신들의 돈을 벌기위한 방패로 사용한다면,결국엔 뚫릴것이라고 본다.
2. Disclaimer
● The instructions provided here are provided
as-is and with no warranty expressed or
implied.
● You are responsible for any issues that arise
from following these instructions.
● Follow at your own risk!
3. Quick Explanation
● The DJI Phantom 2 Vision/Vision+ and DJI FPV WiFi Repeater both
operate a free and opensource WiFi ROM called ‘OpenWRT’
● Because OpenWRT supports many different routers and platforms, and is
a VERY common ROM, there are LOTs of packages available for
installation.
● The procedure outlined here will provide a means of connecting your DJI
gear to the internet and download/install some of these extra packages.
● We will be using port-forwarding to accomplish this, along with some
simple modifications on the DJI gear.
● This guide intends to be step-by-step, so even if you’re not familiar with the
technology, you should be able to accomplish some quick tasks.
4. Prerequisites
1. A computer with both WiFi and Wired
internet capability
2. An available WIRED internet connection with
an IP range NOT using 192.168.1.x
3. An SSH client (either the built in one on
Linux / Mac OSX, or PuTTy on Windows)
5. Preparation
1. Power on your:
a. Repeater
b. DJI Controller
c. Phantom 2 Vision/Vision+
2. Connect to your Repeater's WiFi with your computer
3. AFTER you're connected via WiFi to the repeater, Plug in your Wired
Internet Connection
4. Verify Internet Access (Go to your favorite web-site)
5. Verify Repeater Access (Go to http://192.168.1.2, you should get a 404 or
similar page)
6. NOTE
Note that this document uses IP 192.168.1.2
which is the IP of the DJI FPV WiFi Repeater,
however these instructions can be applied to
the DJI Phantom 2 Vision/Vision+ as well.
Simply substitute 192.168.1.1 in place of
references to 192.168.1.2.
7. Free Port 80 for Forwarding
1. Establish an SSH session to your device:
a. Linux/Mac OSX: In a terminal window, issue:ssh root@192.168.1.2
b. Windows: Launch PuTTy, in the 'Host Name' field,
enter:root@192.168.1.2
c. Click ‘Open’
d. Use Password: 19881209
2. In the remote SSH session, enter:/etc/init.d/lighttpd stop
/etc/init.d/lighttpd disable
echo 127.0.0.1 downloads.openwrt.org openwrt.org >> /etc/hosts
That last line allows us to bypass DNS
8. Establish Port Forward (*nix)
Linux/Mac OSX (Windows on Next Slide)
1. In the remote SSH Terminal, issue:exit
2. In the local terminal window, issue:ssh -g -R
80:downloads.openwrt.org:80 root@192.168.1.2
3. Use Password: 19881209
9. Establish Port Forward (Win)
1. Right click on the PuTTy Title Bar
2. Click ‘Change Settings’
3. Under 'Connection', click the +
beside 'SSH' (to expand the SSH
section)
4. Click 'Tunnels'
5. Select 'Remote' in the lower right
section of the Dialog
6. For 'Source port', enter '80'
7. For 'Destination', enter
'downloads.openwrt.org:80'
8. Click 'Add'
9. Click 'Apply'
10. Package Processing
● Issue the following commands in the remote
SSH session:opkg update
opkg remove firewall3
opkg install luci
/etc/init.d/uhttpd enable
● An updated firewall package is installed with the WebUI
which will conflict and fail if the old one is not removed
first. Thus the ‘opkg remove firewall’ line above.
11. Remove Port Forward (*nix)
Linux/Mac OSX (Windows on Next Slide)
1. In the remote SSH Terminal, issue:exit
2. In the local terminal window, issue:ssh
root@192.168.1.2
3. Use Password: 19881209
12. Remove Port Forward (Win)
1. Right click on the PuTTy Title Bar
2. Click ‘Change Settings’
3. Under 'Connection', click the +
beside 'SSH' (to expand the SSH
section)
4. Click 'Tunnels'
5. Under 'Forwarded Ports', click the
'R80 downloads.openwrt.org:80'
line
6. Click 'Remove'
7. Click 'Apply'
13. Start the WebUI
● Issue the following commands in the remote
SSH session:/etc/init.d/uhttpd start
exit
14. Prosper!
In your web browser, go to:
http://192.168.1.2/cgi-bin/luci
Login: root
Password: 19881209