Disclaimer: you have a high risk of bricking your camera. Make sure you understand what you are doing.
In this repository you can find a bit reworked scripts acquired from zsgx1hacks and 4PDA (in Russian). The main difference is modularity and flexibility allowing to select needed functionalities one by one.
These scripts offer customization of firmwares for GOKE GK7102/GK7102S based web-cameras.
Main features:
root
password is cxlinux
mod/
directory to test multiple versions at the same time. Just copy everything and point to another DEST/main.sh
, everything else should be detected automaticallyconfig.txt
files. Each module can be configured separatelyboot
and run
. This defines the order of execution/root/
home directory is on SD card: .ash_history
and authorized_keys
are editablefake_hw_clock
saves the current time into a file on SD, recovers the time on rebootinqmega_patches
copies devParam.dat from SD to /home/openrtsp
is a pre-compiled tool to capture live streams. E.g. the original IL-HIP291 does not save videos if cannot access its serversEdit mod/config.txt
to activate/deactivate modules or other settings.
Tested on:
passwd
will not allow to change password, because it cannot create a file on a read-only /etc/. Mount the whole directory containing passwd
, group
and shadow
files via --bind
on /etc
: mount --bind PATH_TO_PASSWD_DIR /etc/
, change the password and unmount. The new password will be saved on the SD card./mod/logs/
to analyze boot logs and search for errorsDifferent firmwares offer different entry points to hook into to run these scripts.
INQMEGA uses debug_cmd.sh
as an entry point, which is executed before the main application and allows to customize everything.
Though Wanscam K21 uses zskj_script_run.sh
as an entry point, which is executed by the camera application itself (ipc
) and has some limits. For example, it is not possible to pre-load drivers.
If you need to run these scripts earlier, it is possible to use this entry-point:
/data/pre_init.sh
, see /home/run_init.sh
in K21 firmware. installer.sh
can do it, currently there is no need to use it.
Many thanks go to PauS and slydiman from https://4pda.ru/forum/index.php?showtopic=928641 who built this firmware.
The difference here is only allowing to run it in a chroot environment on INQMEGA IL-HIP291 without needing to flash it.
IMPORTANT: never use the update mechanism in this mode as it will destroy your firmware. There are some prevention techniques used, but still the update might destroy everything.
Check custom_firmware/readme.md
for more details.
Tools are either pre-compiled, when taking from other sources or written in shell or Go (https://golang.org/doc/install).
swap_bytes
- converts a firmware image to be flashable via a CH341A programmerwanscam_wifi_config
- generates a Wi-Fi configuration file used by the K21 firmwarebackup_mtd.sh
- backs up the firmware into the current directoryflashwriterFlash
- flash writer was taken from the custom firmware from 4PDAmemory_dumper.sh
- dumps memory of an active processHow to find an IP address of my camera? Connect via the native application first and obtain the address either from this application or from your Wi-Fi router.
Type | URL |
---|---|
HD | rtsp://login:pass@IP_ADDR:554/0/av0 |
SD | rtsp://login:pass@IP_ADDR:554/0/av1 |
JPEG | http://login:pass@IP_ADDR:554/snapshot |
Audio | rtsp://login:pass@IP_ADDR:554/0/audio |
Onvif | rtsp://IP_ADDR:554/onvif1 |
Type | URL |
---|---|
HD | rtsp://IP_ADDR:554/ch0_0.h264 |
640x360 | rtsp://IP_ADDR:554/ch0_1.h264 |
JPEG | http://IP_ADDR/cgi-bin/net_jpeg.cgi |
Audio | - |
Onvif | http://IP_ADDR/onvif/device_service |
Web Interface | http://IP_ADDR/ user: admin pass: admin |
It is possible to access any file via web: http://IP_ADDR/anything/
results in a 404 error listing all files. Then it is possible to navigate and open other pages like static.html
in httpd
module.