New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

22.x.x.x firmware - GOKE GK7102 SoC #2

Closed
mada3k opened this Issue Jan 16, 2017 · 19 comments

Comments

Projects
None yet
10 participants
@mada3k

mada3k commented Jan 16, 2017

Just for information.

I bought this ESCAM "button" Q6. It uses 22.x.x.x series of the same style of firmware. The SoC is a GOKE Electronics GK7102. My plan is to enable telnetd and reconfigure video bitrate (it's rather low for the moment)

http://www.gokemicro.com/GK7102.html

Example firmware upgrade file it tries to fetch:
http://upg.cloudlinks.cn/upg/22/00/npcupg_22.00.00.14.bin

@hhrhhr

This comment has been minimized.

Show comment
Hide comment
@hhrhhr

hhrhhr Apr 11, 2017

the latest firmware (22.00.00.16) already has a working telnetd and an empty root password.

hhrhhr commented Apr 11, 2017

the latest firmware (22.00.00.16) already has a working telnetd and an empty root password.

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Sep 20, 2017

hi,
unfortunately the later firmwares close telnet option, but reduce bitrate and quality. Is there a way to add possibility to work with exec_sz=0x18c7 firmwares too?
br.
Feri

csirk51 commented Sep 20, 2017

hi,
unfortunately the later firmwares close telnet option, but reduce bitrate and quality. Is there a way to add possibility to work with exec_sz=0x18c7 firmwares too?
br.
Feri

@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Oct 14, 2017

Contributor

@mada3k / @csirk51, please have a look at the my PR #3, which adds support for 22.x.x.x versions.

Contributor

ohinckel commented Oct 14, 2017

@mada3k / @csirk51, please have a look at the my PR #3, which adds support for 22.x.x.x versions.

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Oct 19, 2017

Thanks for the help, it works great:)

csirk51 commented Oct 19, 2017

Thanks for the help, it works great:)

@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Oct 19, 2017

Contributor

Just because I'm interested: @csirk51 can you tell me which modification do you do with the firmware? How to enable telnetd for later firmware which do not open this port? And: do you know how to flash the device in a manual way? Or how do you do the flashing?

Contributor

ohinckel commented Oct 19, 2017

Just because I'm interested: @csirk51 can you tell me which modification do you do with the firmware? How to enable telnetd for later firmware which do not open this port? And: do you know how to flash the device in a manual way? Or how do you do the flashing?

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Oct 19, 2017

Before (no telnet available firmwares) I had to use serial pins to get into the device to open telnet for modifications, it was really annoying.
To enable telnet, just put /bin/busybox telnetd into /npc/boot.sh, so it will load on boot (user is root and there is no password).
The changes I often make on Digoo M1Q (/npc/config/video_sc1135.xml) and M1Z (/npc/config/video_sc1135.xml) Stream0 are the following:

  • increase vi_framerate to 25
  • increase fps to 25
  • reduce h264_gop_N to 25
  • increase h264_cbr_avg_bps to 4000000 (6000000 on M1Z)
  • increase h264_vbr_min_bps to 2000000 (3000000 on M1Z)
  • increase h264_vbr_max_bps to 4000000 (6000000 on M1Z)
  • reduce h264_qp_min_I to 12
  • reduce h264_qp_min_P to 15

csirk51 commented Oct 19, 2017

Before (no telnet available firmwares) I had to use serial pins to get into the device to open telnet for modifications, it was really annoying.
To enable telnet, just put /bin/busybox telnetd into /npc/boot.sh, so it will load on boot (user is root and there is no password).
The changes I often make on Digoo M1Q (/npc/config/video_sc1135.xml) and M1Z (/npc/config/video_sc1135.xml) Stream0 are the following:

  • increase vi_framerate to 25
  • increase fps to 25
  • reduce h264_gop_N to 25
  • increase h264_cbr_avg_bps to 4000000 (6000000 on M1Z)
  • increase h264_vbr_min_bps to 2000000 (3000000 on M1Z)
  • increase h264_vbr_max_bps to 4000000 (6000000 on M1Z)
  • reduce h264_qp_min_I to 12
  • reduce h264_qp_min_P to 15
@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Oct 19, 2017

Contributor

Do you do this all manually or do you use some script or patch files to modify the firmware? Maybe you provide your final configuration since I'm also using a Digoo M1Q.

Do you have some documentation about all these settings? How do you know what to change?

Contributor

ohinckel commented Oct 19, 2017

Do you do this all manually or do you use some script or patch files to modify the firmware? Maybe you provide your final configuration since I'm also using a Digoo M1Q.

Do you have some documentation about all these settings? How do you know what to change?

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Oct 31, 2017

I got my camera into bootloop before with wrong config, so I do it manually on the new firmwares for safety, than flash it to the cameras.
About settings... I searched a lot what they could stand for, these are the ones I can see some improvement in quality after the modifications.

csirk51 commented Oct 31, 2017

I got my camera into bootloop before with wrong config, so I do it manually on the new firmwares for safety, than flash it to the cameras.
About settings... I searched a lot what they could stand for, these are the ones I can see some improvement in quality after the modifications.

@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Oct 31, 2017

Contributor

@csirk51 thanks for your feedback.

But how do you flash an img file? Simply do a dd of the parts (app, jffs) into the correct mdblock devices on the camera? I'm interested in the concrete flashing procedure because I don't want to brick the cam by simply coping the data into the md devices. But maybe this is the way of manual flashing.

Contributor

ohinckel commented Oct 31, 2017

@csirk51 thanks for your feedback.

But how do you flash an img file? Simply do a dd of the parts (app, jffs) into the correct mdblock devices on the camera? I'm interested in the concrete flashing procedure because I don't want to brick the cam by simply coping the data into the md devices. But maybe this is the way of manual flashing.

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Oct 31, 2017

I just use the gm_app_fw.py script the way it is written on the main page:

  • unpack the firmware (-u)
  • mount the firmware (-m)
  • modify the parameters on the mounted filesystem (in /mnt/fw_app/)
  • create a new image of the modified filesystem (mkfs.jffs2 -r /mnt/fw_app/ -o modified.jffs2)
  • pack the firmware using the new jffs and the old elf files
  • flash the modified firmware with ipc debugging tool or tinyipctools

csirk51 commented Oct 31, 2017

I just use the gm_app_fw.py script the way it is written on the main page:

  • unpack the firmware (-u)
  • mount the firmware (-m)
  • modify the parameters on the mounted filesystem (in /mnt/fw_app/)
  • create a new image of the modified filesystem (mkfs.jffs2 -r /mnt/fw_app/ -o modified.jffs2)
  • pack the firmware using the new jffs and the old elf files
  • flash the modified firmware with ipc debugging tool or tinyipctools
@WRH2000

This comment has been minimized.

Show comment
Hide comment
@WRH2000

WRH2000 Nov 27, 2017

I have one of the more recent M1Q's with the 22.0.0.17 firmware, it does not have Telnet open, just 53, 554, and 5000...@csirk51 how are you getting access to the Telnet port? Can busybox be loaded without tapping the serial pins on the pcb?

WRH2000 commented Nov 27, 2017

I have one of the more recent M1Q's with the 22.0.0.17 firmware, it does not have Telnet open, just 53, 554, and 5000...@csirk51 how are you getting access to the Telnet port? Can busybox be loaded without tapping the serial pins on the pcb?

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Nov 27, 2017

You can download the .17 firmware from here (sent by digoo support).
Modify this one if you need .17 with working telnet.

csirk51 commented Nov 27, 2017

You can download the .17 firmware from here (sent by digoo support).
Modify this one if you need .17 with working telnet.

@mookyu

This comment has been minimized.

Show comment
Hide comment
@mookyu

mookyu Nov 30, 2017

How can I modify the resolution and bitrate of rtsp video stream?

mookyu commented Nov 30, 2017

How can I modify the resolution and bitrate of rtsp video stream?

@zzerrg zzerrg self-assigned this Apr 29, 2018

@ciast

This comment has been minimized.

Show comment
Hide comment
@ciast

ciast Aug 10, 2018

I've M1Z version with 22.0.0.40 firmware. @csirk51 how to enable ftp access? I tried to put boot.sh in npc folder (microsd card) with:

#!/bin/sh

/bin/busybox telnetd

but without success. Do You have any solution?

ciast commented Aug 10, 2018

I've M1Z version with 22.0.0.40 firmware. @csirk51 how to enable ftp access? I tried to put boot.sh in npc folder (microsd card) with:

#!/bin/sh

/bin/busybox telnetd

but without success. Do You have any solution?

@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Aug 10, 2018

Contributor

@ciast, I guess the script is not executed when put on SD card. You need to flash a custom firmware to the device which includes the modified boot.sh script.

Just download a official firmware and try to extract the contents using the script from this repo.

Contributor

ohinckel commented Aug 10, 2018

@ciast, I guess the script is not executed when put on SD card. You need to flash a custom firmware to the device which includes the modified boot.sh script.

Just download a official firmware and try to extract the contents using the script from this repo.

@csirk51

This comment has been minimized.

Show comment
Hide comment
@csirk51

csirk51 Aug 15, 2018

"/bin/busybox telnetd" is for telnet, not for ftp.
For ftp, you should check https://github.com/ant-thomas/zsgx1hacks, I didnt try it yet but maybe...

csirk51 commented Aug 15, 2018

"/bin/busybox telnetd" is for telnet, not for ftp.
For ftp, you should check https://github.com/ant-thomas/zsgx1hacks, I didnt try it yet but maybe...

@k4300m

This comment has been minimized.

Show comment
Hide comment
@k4300m

k4300m Aug 24, 2018

Firmware 22.0.0.40
Just unpacked/mounted/modified/repacked/flashed the firmware.
I had put "/bin/busybox telnetd" after rows:

#start npc boot

and

ulimit -s 2048

After reboot telnet works, root without password.

k4300m commented Aug 24, 2018

Firmware 22.0.0.40
Just unpacked/mounted/modified/repacked/flashed the firmware.
I had put "/bin/busybox telnetd" after rows:

#start npc boot

and

ulimit -s 2048

After reboot telnet works, root without password.

@hrch3k

This comment has been minimized.

Show comment
Hide comment
@hrch3k

hrch3k Aug 26, 2018

I have yoosee cam with 21.00.00.90 version firmware. What do we need so we can we add support for 21.xx.xx.xx?

hrch3k commented Aug 26, 2018

I have yoosee cam with 21.00.00.90 version firmware. What do we need so we can we add support for 21.xx.xx.xx?

@ohinckel

This comment has been minimized.

Show comment
Hide comment
@ohinckel

ohinckel Aug 27, 2018

Contributor

I think this issue can be closed since PR #3 is already merged which adds support for 22.xx.xx.xx firmwares.

@hrch3k, I suggest to create a new issue for this version.

Contributor

ohinckel commented Aug 27, 2018

I think this issue can be closed since PR #3 is already merged which adds support for 22.xx.xx.xx firmwares.

@hrch3k, I suggest to create a new issue for this version.

@zzerrg zzerrg closed this Sep 10, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment