Skip to content

ipctool backup bug #234

Closed
Closed

Description

@sansarus

ipctool backup ./backup_oipc_nt500
Warning: 1 partition(s) could not be read and are not in the backup

ipctool upload --note club-SNYJ-W86Q --host openipc.ru

chip:
vendor: Novatek
model: NT98566
board:
vendor: Xiongmai
ethernet:
mac: " "
rom:

  • type: nand
    block: 128K
    partitions:
    • name: loader
      size: 0x40000
      sha1: d15e95ed
    • name: fdt
      size: 0x40000
      sha1: ea3b2b0e
    • name: fdt.restore
      size: 0x40000
      sha1: 83bf57ae
    • name: uboot
      size: 0x200000
      sha1: a6bb4fe1
    • name: uenv
      size: 0x20000
      sha1: b81b4a67
    • name: defcfg
      size: 0x20000
      sha1: ee9aaeb3
    • name: kernel
      size: 0x500000
      sha1: 97219942
    • name: rootfs
      size: 0x5800000
      dump_type: ubifs
      ubi_device: 0
      ubi_volumes:
      • vol_id: 0
        vol_name: rootfs
        data_bytes: 0x3e7c000
        sha1: 2548d572
    • name: custom
      size: 0x1000000
      path: /mnt/special,squashfs
      sha1: 49c0926f
    • name: config
      size: 0xc00000
      dump_type: ubifs
      ubi_device: 1
      ubi_volumes:
      • vol_id: 0
        vol_name: config
        data_bytes: 0xa6a000
        sha1: 9066c5b7
        size: 124M
        ram:
        total: 128M
        firmware:
        kernel: "4.19.91 (PREEMPT Fri Nov 11 16:34:34 CST 2022)"
        toolchain: gcc version 8.4.0 (Buildroot 2020.02.9-10-g744f210)
        libc: uClibc 1.0.32
        main-app: hunter

This sends the report above to http://openipc.ru/api/v1/reports, over plain HTTP (stock camera firmware has no TLS).
It is reviewed before it is published, and the MAC, chip ID and cloud ID in the report are replaced with hashes.

A backup of the whole flash, sent with the report, is what porting OpenIPC
to this board starts from. It holds everything the camera keeps: its
settings, Wi-Fi keys, passwords, cloud IDs.
no send the report only
private send the backup too; only OpenIPC's maintainers can read it
public send the backup too, and let anyone download it once the
report is reviewed, with the MAC, chip ID and cloud ID in clear
Send a backup? [no/private/public]: public
Not sent: 1 partition(s) of the flash could not be read, and a backup missing any of them is not the whole flash.

nand flash giga device 5f1gq5uey1g

nand: device found, Manufacturer ID: 0xc8, Chip ID: 0x51
nand: ESMT GD5F1GQ5UExxG 1GiB 3.3V
nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
Scanning device for bad blocks
random: fast init done
spi_nand f0400000.nand: 4-bit mode @ 120000000 Hz
12 fixed-partitions partitions found on MTD device spi_nand.0
Creating 12 MTD partitions on "spi_nand.0":
0x000000000000-0x000000040000 : "loader"
0x000000040000-0x000000080000 : "fdt"
0x000000080000-0x0000000c0000 : "fdt.restore"
0x0000000c0000-0x0000002c0000 : "uboot"
0x0000002c0000-0x0000002e0000 : "uenv"
0x0000002e0000-0x000000300000 : "defcfg"
0x000000300000-0x000000800000 : "kernel"
0x000000800000-0x000006000000 : "rootfs"
0x000006000000-0x000007000000 : "custom"
0x000007000000-0x000007c00000 : "config"
0x000007c00000-0x000008000000 : "encrypt"
0x000000000000-0x000008000000 : "all"

Activity

  1. openipc-ai commented on Oct 9, 2026

    @openipc-ai
    Contributor

    Fixed in #235, and in the current ipctool on openipc.org and in the latest release. This camera had three problems:

    • The "1 partition could not be read": the backup read each UBI volume into RAM whole, all at once. The 62.5 MB rootfs volume is more than the camera has free. Volumes are now read in pieces while they are sent or saved. Verified on a 128 MB NAND camera in the lab: a 124 MB backup went through, every partition byte-for-byte.
    • encrypt and all missing: ipctool read only the first 10 of your 12 MTD partitions, so encrypt (4 MB) was missing from the report and would have been missing from the backup. That's why the report said 124M on a 128 MiB chip. All of them are read now, except all, which is just another name for the whole chip and would put it in twice.
    • Clearer errors: a partition that can't be read is now named, with the reason.

    Please fetch ipctool again and retry:

    wget -O ipctool http://openipc.org/ipctool && chmod +x ipctool
    ./ipctool upload --note club-SNYJ-W86Q
    

    --host is no longer needed from your network: openipc.org now sends the upload on to a route that gets through. The backup will be about 128 MB, so the upload takes a while. If anything still fails, the output now names the partition and the reason; please paste it here.

  2. sansarus commented on Oct 9, 2026

    @sansarus
    MemberAuthor

    Backing up 11 partitions, 102200 KB.
    openipc.org sends the report to http://openipc.ru/api/v1/reports.Sending 100%
    openipc.ru did not take the report (400): backup: read tcp 172.18.0.5:3002->172.18.0.1:58258: i/o timeout

  3. openipc-ai commented on Oct 9, 2026

    @openipc-ai
    Contributor

    Thanks, that output helped. This time ipctool did its part: all 11 partitions were read and the upload went the long way round through openipc.ru. The server then gave up after 60 s: it allowed any one request a minute in total, and 100 MB from your network takes longer than that.

    That's fixed (OpenIPC/website#424, live now). An upload is now cut off only if it goes 60 s without any data arriving, however long it takes overall. Nothing on the camera needs to change; please run the same command again:

    ./ipctool upload --note club-SNYJ-W86Q
    
  4. marked ipctool backup bug #236 as a duplicate of this issue on Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions