This Fork is to continue the excellent job of fliphess and ghoost82, they made it !
This projects provides an alternate firmware for the Xiaomi Chuangmi 720p IP Camera's. This camera, based on the Grain Media GM8136S SOC, normally only works using a cloud service.
With this firmware you can use the camera without being bound to the cloud service and does not require an internet uplink.
Please read the security considerations in the wiki.
Please debug any issues appearing while using the hack and file a pull request to get things fixed in this repo.
As I'm losing way too much time on solving configuration issues that are documented in the wiki, I've decided to close all issues and started working with a feature tracking tool.
This does not mean I'm not open to new features and pull requests. Feel welcome to fix and add!
This project is a collection of scripts and binaries file to hack your Xiaomi Chuangmi 720P camera. Have a look in the wiki for all the available options.
Screenshots of the web interface can be found in the wiki
To use install the hack on your SD card, use the compiled sources. Copying the files in the repository to your sd card without building the binaries wil Not work.
For new users it is recommended to use the precompiled binaries that are created with every release. You can download the release builds from the github releases page.
If you prefer to build the binaries yourself, have a look at the instructions in the wiki to find instructions on how to do it yourself.
When the camera is started for the first time, it is waiting for the MiiHome app to send the credentials. Setup the camera with the MiiHome app, and wait till the camera is connected to the wifi.
If the firmware is too recent, the hack cannot always be activated. To work around this issue, you can downgrade the firmware to a working version using the instructions on the wiki
Format a micro SD card in fat32 (vfat) format and copy the content of the sdcard/ folder in the root of your SD card.
To configure a wifi network to connect to, edit the file config.cfg.
If you configured the wifi prior to this hack using the MiiHome app, the settings are stored in nvram, and not required to set in config.cfg
.
- If plugged, unplug the Chuangmi camera
- Insert the SD card in the Chuangmi camera
- Plug the Chuangmi camera
If all is well, the camera will start.
The led will indicate the current status:
- yellow: camera startup
- blue blinking: network configuration in progress (connec to wifi, set up the IP address)
- blue: network configuration is OK. Camera is ready to use.
You can test is your camera is up and running this hack with your browser on url http://your-camera-ip/.
FIRST START ISSUES :
- you'd better configure your wifi through mi-home app first, without download the last firmware. Doing this, you're going to save your wifi credentials in the NVRAM, so nothing to configure when loading the hack with sd card
- when this is the first start you're using the hack, an NVRAM key is missing, messing the system, especially the web interface settings. You just need to log with ssh into your cam, then issue this command : 'nvram set ir_cut=off'. The key is now created, and then everything is working in the interface :) -> To fix it permanently, add this command in script/.boot/sh. It has been fixed in the source of this fork
Using the web interface and over MQTT many settings and services can be enabled and disabled.
Have a look at the api docs in the web interface for a list of all available http calls you can use to control the camera.
For controlling the camera over MQTT, have a look at the MQTT wiki page
The short version: DO NOT EVER PUBLICLY EXPOSE THIS WEBCAM TO THE INTERNETZ!
The longer version can be read in the wiki
There are no files altered on the camera so simply remove the SD card to uninstall the hack.
As I'm an chaotic idiot that talks to himself a lot, I recommend not to watch this repository, as you will receive lots of very useless notifications. Choose the "Releases Only" flag to make yourself more zen :)
I've spend many hours documenting everything I ran into in the wiki. Please read the troubleshooting guide for solving the most common issues. If something is not documented, please extend the wiki for future generations.
Feel welcome to bring pull requests to the table.
If you're good at making a nice web interface, please go wild! I'm quite tasteless when it comes to the web and layout, so I could use some help :)