Skip to content

Commit

Permalink
Significantly revamp Readme.
Browse files Browse the repository at this point in the history
Further simplified default configuration for ProxyChains-ng.
Made default configuration more inline with how most people will be using ProxyChains-ng.
This results in much better performance for those with multiple proxy servers setup.
  • Loading branch information
shadow-1 committed Apr 24, 2017
1 parent 3817eec commit 5eb71bc
Show file tree
Hide file tree
Showing 3 changed files with 75 additions and 30 deletions.
98 changes: 73 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,16 @@ Currently this project supports:

- [Features](#features)
- [Cameras that are Region Locked to Mainland China](#cameras-that-are-region-locked-to-mainland-china)
- [Getting Started](#getting-started)
- [Prepare the microSD Card](#prepare-the-microsd-card)
- [Starting the Camera](#starting-the-camera)
- [Configuring the Camera](#configuring-the-camera)
- [Getting Started - Step by Step Guide](#getting-started---step-by-step-guide)
- [Which Smartphone App to use?](#which-smartphone-app-to-use)
- [Chinese Version of the Camera](#chinese-version-of-the-camera)
- [International Version of the Camera](#international-version-of-the-camera)
- [Using the Camera](#using-the-camera)
- [Telnet Server](#telnet-server)
- [FTP Server](#ftp-server)
- [Startup Shell Script](#startup-shell-script)
- [Which Version is Installed?](#which-version-is-installed)
- [Going Back to Stock Firmware](#going-back-to-stock-firmware)
- [Development](#development)
- [Acknowledgments](#acknowledgments)

Expand All @@ -30,8 +31,8 @@ The supported cameras have the following features by default:
* Wifi
* Motion detection - a video file is generated if a motion have been detected in the last 60 seconds.
* Send video/audio data through a cloud service to allow people to view camera data from their smartphone wherever they are.
* Setup thanks to a smartphone application.
* Local video storage on a microSD card
* Setup thanks to a smartphone app.
* Local video storage on a microSD card.

This firmware includes:
* Telnet server - _Enabled by default._
Expand All @@ -44,52 +45,91 @@ This firmware includes Proxychains-ng. This allows communication between the cam

Performance is not degraded as the cameras video/audio feed is not routed through the proxy server.

## Getting Started
## Getting Started - Step by Step Guide
1. Check that you have a correct Xiaomi Yi camera. Currently 3 cameras are supported:
* Yi 1080p Dome Camera
* Yi 1080p Home Camera
* Yi Dome Camera

### Prepare the microSD Card
Download a release firmware binaries from Github. Two firmware files are required. One firmware file is for the rootfs partition on the camera whilst the second firmware file is for the home partition on the camera.

Format a microSD card in FAT32 format and copy the two firmware files onto the camera.
2. Get an microSD card, preferably of capacity 16gb or less and format it by selecting File System as FAT32.

**_Note: The microSD card must be formatted in FAT32. exFAT formatted microSD cards will not work._**

The memory card will contain:
3. Get the correct firmware files for your camera from this link: https://github.com/shadow-1/yi-hack-v3/releases

| Camera | rootfs partition | home partition | Remarks |
| --- | --- | --- | --- |
| **Yi 1080p Dome** | rootfs_h20 | home_h20 | Firmware files required for the Yi 1080p Dome camera. |
| **Yi 1080p Home** | rootfs_y20 | home_y20 | Firmware files required for the Yi 1080p Home camera. |
| **Yi Dome** | rootfs_v201 | home_v201 | Firmware files required for the Yi Dome camera. |

**_Note: Both the rootfs and home partitions must be upgraded on the camera. The additional features implemented in the home partition will not work unless the rootfs partition has also been upgraded._**
4. Save both files on root path of microSD card.

**_IMPORTANT: Make sure that the filename stored on microSD card are correct and didn't get changed. e.g. The firmware filenames for the Yi 1080p Dome camera must be home_h20 and rootfs_h20._**

5. Remove power to the camera, insert the microSD card, turn the power back ON.

### Starting the Camera
* If the camera is plugged in, unplug the camera.
* Insert the microSD card containing the firmware files.
* Plug in the camera.
6. The yellow light will come ON and flash for roughly 30 seconds, which means the firmware is being flashed successfully. The camera will boot up.

The camera will start, however it will take approximately 30 seconds longer to start as it is upgrading the firmware on the camera.
7. Install the _correct_ smartphone app onto your smartphone. Refer to [Which Smartphone App to use?](#which-smartphone-app-to-use) for guidance.

**_Note: The camera will not be fully operational through the smartphone app until a valid configuration has been entered for Proxychains-ng or Proxychains-ng is disabled._**
8. Configure the camera as normal by scanning the QR code on the smartphone. Ensure that your smartphone is connected to 2.4GHz wireless network.

### Configuring the Camera
The cameras web interface is directly accessible by entering the IP address of the camera into a web browser [http://IP_of_Camera/](http://IP_of_Camera/).
9. Blue light should come ON indicating that your Wifi connection has been successful.

If your camera does not have Wifi setup. Pair the camera with your smartphone as per usual using the smartphone app.
10. Although the WiFi connection on your camera has been successful but you won't be able to pair it with your phone yet until you perform the following steps.

11. Find the IP address has been assigned to your camera. This can be found on most routers. Alternatively you can install an app on your phone to scan your wifi network. Android users can install "Network Scanner" and run it to find the IP address of the camera. e.g. 192.168.1.5. The camera should be listed as “Shenzhen Zowee Technology Co. Ltd”.

12. Go in the browser and open it as a website e.g. http://192.168.1.5

13. It will open a configuration page of the camera.
![Alt text](web_interface.png?raw=true "Web Interface")

14. For those with the **International Version of the Camera**. ProxyChains-ng is not required. It can be disabled by going to "System Config", select "No" against Proxy-Chains-ng and clicking "Apply". No further configuration is required.

15. For those with the **Chinese Version of the Camera**. Enter socks4 or socks5 proxy servers under [ProxyList] in the configuration. The proxy servers listed below are an example only. These might or might not be working. Find a working socks4 or socks5 proxy server and list it under [ProxyList] in the given syntax.
```
socks5 183.232.25.100 3080
socks5 27.152.181.217 80
socks5 125.67.236.195 8080
socks4 115.29.192.194 1080
```

16. Click "Save"

17. Give it about 30-40 seconds and try to connect from your smartphone.

18. If it is not connecting, most likely reason is that the proxy entered is not working.

19. If it gives you the alert "This camera can only be used in China", this means that the proxy that you entered in not based in Mainland China.

## Which Smartphone App to use?
### Chinese Version of the Camera
The Chinese version of the camera will **only** work with the Chinese version of the app.

Android users, download the Chinese version of the Yi Home app and install the apk file manually. You can download the app from here under the directory 'Yi Home - Android': https://app.box.com/s/cibs7n1mgvhqaqjlidtveegu1uajt5yr

iPhone users will need to change their App Store to the Chinese App Store and install Chinese version of the Yi Home app.

### International Version of the Camera
The International version of the camera will **only** work with the International version of the app.

Android users can download the International version of the Yi Home app from the Google Play Store. Link: https://play.google.com/store/apps/details?id=com.ants360.yicamera.international

iPhone users can download the International version of the Yi Home app from the App Store. Link: https://itunes.apple.com/au/app/yi-home/id1011626777?mt=8

## Using the Camera

### Telnet Server
The telnet server is on port 23.

No authentication is needed, default user is root.
Default user is root. Password is _blank_.

### FTP Server
The FTP server is on port 21.

No authentication is needed, you can login as anonymous.
Default user is root. Password is _blank_.

### Startup Shell Script
On the microSD card. The following shell script is executed after the camera has booted up:
Expand All @@ -99,6 +139,15 @@ On the microSD card. The following shell script is executed after the camera has
### Which Version is Installed?
The base firmware (Xiaomi firmware) version and y-hack-v3 firmware version is accessible through the webinterface on the About page.

## Going Back to Stock Firmware
Recovery images have been created to go back to stock firmware. You can download the recovery images from here under the directory 'yi-hack-v3/Recovery': https://app.box.com/s/cibs7n1mgvhqaqjlidtveegu1uajt5yr

| Camera | rootfs partition | home partition | Remarks |
| --- | --- | --- | --- |
| **Yi 1080p Dome** | rootfs_h20 | home_h20 | Stock firmware is version 1.9.2.0C_201611011902. |
| **Yi 1080p Home** | rootfs_y20 | home_y20 | Stock firmware is version 2.0.0.1A_201612051401. |
| **Yi Dome** | rootfs_v201 | home_v201 | Stock firmware is version 1.9.1.0F_201701041701. |

## Development
**TODO**

Expand All @@ -111,4 +160,3 @@ Special thanks to the following projects for their efforts on other Xiaomi camer
**niclet** : https://github.com/niclet/yi-hack-v2

**xmflsct** : https://github.com/xmflsct/yi-hack-1080p

7 changes: 2 additions & 5 deletions src/home/app/proxychains.conf
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
dynamic_chain
random_chain

proxy_dns

remote_dns_subnet 224
chain_len = 1

tcp_read_time_out 15000
tcp_connect_time_out 8000

[ProxyList]

Binary file modified web_interface.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 5eb71bc

Please sign in to comment.