Sony NCP-HG100/Cellular is a IoT Gateway with 2.4/5 GHz band 11ac
(WiFi-5) wireless function, based on IPQ4019.
Specification:
- SoC : Qualcomm IPQ4019
- RAM : DDR3 512 MiB (H5TC4G63EFR)
- Flash : eMMC 4 GiB (THGBMNG5D1LBAIT)
- WLAN : 2.4/5 GHz 2T2R (IPQ4019)
- Ethernet : 10/100/1000 Mbps x2
- Transceiver : Qualcomm QCA8072
- WWAN : Telit LN940A9
- Z-Wave: Silicon Labs ZM5101
- Bluetooth : Qualcomm CSR8811
- Audio DAC : Realtek ALC5629
- Audio Amp.: Realtek ALC1304
- Voice Input Processor : Conexant CX20924
- Micro Controller Unit : Nuvoton MINI54FDE
- RGB LED, Fan, Temp. sensors
- Touch Sensor : Cypress CY8C4014LQI
- RGB LED driver: TI LP55231 (2x)
- LEDs/Keys : 11x, 6x
- UART : through-hole on PCB
- J1: 3.3V, TX, RX, GND from tri-angle marking
- 115200n8
- Power : 12 VDC, 2.5 A
Flash instruction using initramfs image:
1. Prepare TFTP server with the IP address 192.168.132.100 and place the
initramfs image to TFTP directory with the name "C0A88401.img"
2. Boot NCP-HG100/Cellular and interrupt after the message
"Hit any key to stop autoboot: 2"
3. Perform the following commands and set bootcmd to allow booting from
eMMC
setenv bootcmd "mmc read 0x8400 0x2e22 0x4000 && bootm 0x8400"
saveenv
4. Perform the following command to load/boot the OpenWrt initramfs image
tftpboot && bootm
5. On the initramfs image, perform sysupgrade with the sysupgrade image
(if needed, backup eMMC partitions by dd command and download to
other place before performing sysupgrade)
6. Wait for ~120 seconds to complete flashing
Known issues:
- There are no drivers for audio-related chips/functions in Linux Kernel
and OpenWrt, they cannot be used.
- There is no driver for MINI54FDE Micro-Controller Unit, customized for
this device by the firmware in the MCU. This chip controls the
following functions, but they cannot be controlled in OpenWrt.
- RGB LED
- Fan
this fan is controlled automatically by MCU by default, without
driver
- Thermal Sensors (2x)
- Currently, there is no driver or tool for CY8C4014LQI and cannot be
controlled. It cannot be exited from "booting mode" and moved to "normal
op mode" after booting. And also, the 4x buttons (mic mute, vol down,
vol up, alexa trigger) connected to the IC cannot be controlled.
- it can be exited from "booting mode" by installing and executing
i2cset command:
opkg update
opkg install i2c-tools
i2cset -y 1 0x14 0xf 1
- There is a connection issue on the control by uqmi for the WWAN module.
But modemmanager can be used without any issues and the use of it is
recommended.
- With the F2FS format, too many errors are reported on erasing eMMC
partition "rootfs_data" while booting:
[1.360270] sdhci: Secure Digital Host Controller Interface driver
[1.363636] sdhci: Copyright(c) Pierre Ossman
[1.369730] sdhci-pltfm: SDHCI platform and OF driver helper
[1.374729] sdhci_msm 7824900.sdhci: Got CD GPIO
...
[1.413552] mmc0: SDHCI controller on 7824900.sdhci [7824900.sdhci] using
ADMA 64-bit
[1.528325] mmc0: new HS200 MMC card at address 0001
[1.530627] mmcblk0: mmc0:0001 004GA0 3.69 GiB
[1.533530] mmcblk0boot0: mmc0:0001 004GA0 partition 1 2.00 MiB
[1.537831] mmcblk0boot1: mmc0:0001 004GA0 partition 2 2.00 MiB
[1.542918] mmcblk0rpmb: mmc0:0001 004GA0 partition 3 512 KiB, chardev
(247:0)
[1.550323] Alternate GPT is invalid, using primary GPT.
[1.561669] mmcblk0: p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15
p16 p17
...
[8.841400] mount_root: loading kmods from internal overlay
[8.860241] kmodloader: loading kernel modules from //etc/modules-boot.d/*
[8.863746] kmodloader: done loading kernel modules from
//etc/modules-boot.d/*
[9.240465] block: attempting to load /etc/config/fstab
[9.246722] block: unable to load configuration (fstab: Entry not found)
[9.246863] block: no usable configuration
[9.254883] mount_root: overlay filesystem in /dev/mmcblk0p17 has not been
formatted yet
[9.438915] urandom_read: 5 callbacks suppressed
[9.438924] random: mkfs.f2fs: uninitialized urandom read (16 bytes read)
[ 12.243332] mmc_erase: erase error -110, status 0x800
[ 12.246638] mmc0: cache flush error -110
[ 15.134585] mmc_erase: erase error -110, status 0x800
[ 15.135891] mmc_erase: group start error -110, status 0x0
[ 15.139850] mmc_erase: group start error -110, status 0x0
...(too many the same errors)...
[ 17.350811] mmc_erase: group start error -110, status 0x0
[ 17.356197] mmc_erase: group start error -110, status 0x0
[ 17.439498] sdhci_msm 7824900.sdhci: Card stuck in wrong state!
card_busy_detect status: 0xe00