Coder Social home page Coder Social logo

zigfisher / openipc-1.0 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from openwrt/chaos_calmer

82.0 82.0 24.0 907.16 MB

Experiments with OpenWrt + Hi35xx and other SoC's

Home Page: https://openipc.org

License: GNU General Public License v2.0

Makefile 11.48% Awk 0.02% Shell 4.76% C 76.76% Assembly 2.19% C++ 0.08% M4 0.97% CMake 0.01% Perl 1.53% Lex 0.05% Yacc 0.10% Python 0.12% Roff 1.94%
flyrouter hi3516 hi3518 hisi hisilicon ipcam openipc openwrt zftlab

openipc-1.0's Introduction

  • 👋 Hi, My name is Igor
  • 💞️ I’m developing hardware and firmware for embedded Linux devices (routers, IP cameras, etc)
  • 🌱 I am currently working hard on the OpenIPC project

Telegram Gmail LinkedIn

openipc-1.0's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openipc-1.0's Issues

Job

Hello, I need to insert my logo on a camera based on HI3516CV300 IMX307 keeping the original firmware. Firmware 3516CV300_IMX307_B1T0A1M0C1P1_W_20.1.3.2
You do?
What the value ?
Thank you

Build issues in modern environments

This is a pain to build in newer environments, due to gcc and glibc moving on. Is this project still active? I'm currently trying to compile it because I need a toolchain for my 3516ev100 board, but if there are easier ways to get that I'm open to suggestions.
I can create a PR if I get this to compile on my machine, if there is interest.

kernel menuconfig can't save .config

When i was run make kernel_menuconfig, after saving the .config, Outputing follow error information. I don't know why? Could you tell me how to fix, please!
Error: Parse error at /media/linuxdata/hisi/openipc-1.0/scripts/kconfig.pl line 137, <FILE> line 1043.

It sam like not save correctly. When i was run make V=s,terminal let me to configurate config. As follow:

make -C /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35 HOSTCFLAGS="-O2 -I/media/linuxdata/hisi/openipc-1.0/staging_dir/host/include -I/media/linuxdata/hisi/openipc-1.0/staging_dir/host/usr/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="arm-openwrt-linux-uclibcgnueabi-" ARCH="arm" KBUILD_HAVE_NLS=no CONFIG_SHELL="bash" V='' CC="arm-openwrt-linux-uclibcgnueabi-gcc" modules
make[5]: Entering directory '/media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35'
scripts/kconfig/conf --silentoldconfig Kconfig
warning: (USB_DWC3 && HIUSB_HOST3_0) selects USB_XHCI_PLATFORM which has unmet direct dependencies (USB_SUPPORT && USB_XHCI_HCD)
*
* Restart config...
*
*
* General setup
*
Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [N/y/?] (NEW) 

duapple@duapple-vm:/media/linuxdata/hisi/openipc-1.0$ make kernel_menuconfig 
fatal: No names found, cannot describe anything.
fatal: No names found, cannot describe anything.
make[1]: Entering directory '/media/linuxdata/hisi/openipc-1.0/target/linux'
make[2]: Entering directory '/media/linuxdata/hisi/openipc-1.0/target/linux/hi35xx'
rm -f /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35/.configured
/media/linuxdata/hisi/openipc-1.0/scripts/kconfig.pl   /media/linuxdata/hisi/openipc-1.0/target/linux/hi35xx/config-3.4.35 > /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35/.config
export MAKEFLAGS= ;make -C /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35 -C /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35 HOSTCFLAGS="-O2 -I/media/linuxdata/hisi/openipc-1.0/staging_dir/host/include -I/media/linuxdata/hisi/openipc-1.0/staging_dir/host/usr/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="arm-openwrt-linux-uclibcgnueabi-" ARCH="arm" KBUILD_HAVE_NLS=no CONFIG_SHELL="bash" V='' CC="arm-openwrt-linux-uclibcgnueabi-gcc" menuconfig
make[3]: Entering directory '/media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35'
scripts/kconfig/mconf Kconfig
warning: (USB_DWC3 && HIUSB_HOST3_0) selects USB_XHCI_PLATFORM which has unmet direct dependencies (USB_SUPPORT && USB_XHCI_HCD)
#
# configuration written to .config
#


*** End of the configuration.
*** Execute 'make' to start the build or try 'make help'.

make[3]: Leaving directory '/media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35'
/media/linuxdata/hisi/openipc-1.0/scripts/kconfig.pl '>'   /media/linuxdata/hisi/openipc-1.0/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hi35xx_18ev200/linux-3.4.35/.config > /media/linuxdata/hisi/openipc-1.0/target/linux/hi35xx/config-3.4.35
Parse error at /media/linuxdata/hisi/openipc-1.0/scripts/kconfig.pl line 137, <FILE> line 1043.
Makefile:29: recipe for target 'menuconfig' failed
make[2]: *** [menuconfig] Error 255
make[2]: Leaving directory '/media/linuxdata/hisi/openipc-1.0/target/linux/hi35xx'
Makefile:13: recipe for target 'menuconfig' failed
make[1]: *** [menuconfig] Error 2
make[1]: Leaving directory '/media/linuxdata/hisi/openipc-1.0/target/linux'
/media/linuxdata/hisi/openipc-1.0/include/toplevel.mk:134: recipe for target 'kernel_menuconfig' failed
make: *** [kernel_menuconfig] Error 2

U-Boot bootargs

U-Boot 2010.06 (Oct 26 2015 - 11:01:19)
не влезает в строку bootargs=...

Built environment

I saw you added support for wifi (great!), so I would like to compile the latest version. Till now I didn't succeed.

I tried to compile using Ubuntu 18.0.3 and 14.04.6 (because chaos_calmer is quite an old version).

The commands I executed:

sudo apt-get install --no-install-recommends build-essential gawk git libncurses-dev python subversion unzip zlib1g-dev
git clone https://github.com/ZigFisher/chaos_calmer.git
cd chaos_calmer
cp ./feeds.conf.default ./feeds.conf
./scripts/feeds update -a
./scripts/feeds install -a
echo "src-git glutinium https://github.com/ZigFisher/Glutinium.git" >>./feeds.conf
./scripts/feeds update glutinium
./scripts/feeds list -r glutinium  
./scripts/feeds install empty etherdump homes-smart httping i2c-telemetry i2c-tools littlewire micronucleus mercury236 microbe mini_snmpd remserial rs485conf tg-bot1 vtun-lite

 ./Project_OpenIPC.sh hi3516cv200

Changing the make command in 'Project_OpenIPC.sh' using one thread (-j1) results in this output:

arm-openwrt-linux-uclibcgnueabi-gcc -D_LARGEFILE_SOURCE=1 -D_LARGE_FILES -D_FILE_OFFSET_BITS=64 -D_REENTRANT 	-DXTABLES_LIBDIR=\"/usr/lib/iptables\" -DXTABLES_INTERNAL -I../include -I.. -I../include -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include/uapi -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include/uapi -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21/include -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include -I/home/osboxes/chaos_calmer/staging_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/usr/include -I/home/osboxes/chaos_calmer/staging_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/include -I/home/osboxes/chaos_calmer/staging_dir/toolchain-arm_arm926ej-s_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/usr/include -I/home/osboxes/chaos_calmer/staging_dir/toolchain-arm_arm926ej-s_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/include  -Wp,-MMD,./.libxt_udp.o.d,-MT,libxt_udp.o -Wall -Waggregate-return -Wmissing-declarations 	-Wmissing-prototypes -Wredundant-decls -Wshadow -Wstrict-prototypes 	-Winline -pipe -DNO_SHARED_LIBS=1 -D_INIT=libxt_udp_init -DPIC -fPIC -Os -pipe -march=armv5te -mtune=arm926ej-s -fno-caller-saves -fhonour-copts -Wno-error=unused-but-set-variable -Wno-error=unused-result -mfloat-abi=soft -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21/include -I/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/linux-3.4.35/user_headers/include -ffunction-sections -fdata-sections -DNO_LEGACY  -o libxt_udp.o -c libxt_udp.c;
arm-openwrt-linux-uclibcgnueabi-gcc -Wl,--no-undefined -shared -L/home/osboxes/chaos_calmer/staging_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/usr/lib -L/home/osboxes/chaos_calmer/staging_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/lib -L/home/osboxes/chaos_calmer/staging_dir/toolchain-arm_arm926ej-s_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/usr/lib -L/home/osboxes/chaos_calmer/staging_dir/toolchain-arm_arm926ej-s_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/lib -Wl,--gc-sections  -o libiptext.so initext.o libxt_AUDIT.o libxt_CHECKSUM.o libxt_CLASSIFY.o libxt_CONNMARK.o libxt_CONNSECMARK.o libxt_CT.o libxt_DSCP.o libxt_HMARK.o libxt_IDLETIMER.o libxt_LED.o libxt_MARK.o libxt_NFLOG.o libxt_NFQUEUE.o libxt_RATEEST.o libxt_SECMARK.o libxt_SET.o libxt_SYNPROXY.o libxt_TCPMSS.o libxt_TCPOPTSTRIP.o libxt_TEE.o libxt_TOS.o libxt_TPROXY.o libxt_TRACE.o libxt_addrtype.o libxt_bpf.o libxt_cluster.o libxt_comment.o libxt_connbytes.o libxt_connlimit.o libxt_connmark.o libxt_conntrack.o libxt_cpu.o libxt_dccp.o libxt_devgroup.o libxt_dscp.o libxt_ecn.o libxt_esp.o libxt_hashlimit.o libxt_helper.o libxt_id.o libxt_iprange.o libxt_ipvs.o libxt_length.o libxt_limit.o libxt_mac.o libxt_mark.o libxt_multiport.o libxt_nfacct.o libxt_osf.o libxt_owner.o libxt_physdev.o libxt_pkttype.o libxt_policy.o libxt_quota.o libxt_rateest.o libxt_recent.o libxt_rpfilter.o libxt_sctp.o libxt_set.o libxt_socket.o libxt_standard.o libxt_statistic.o libxt_string.o libxt_tcp.o libxt_tcpmss.o libxt_time.o libxt_tos.o libxt_u32.o libxt_udp.o -L../libxtables/.libs -lxtables ;
../libxtables/.libs/libxtables.so: warning: gethostbyaddr is obsolescent, use getaddrinfo() instead.
../libxtables/.libs/libxtables.so: warning: gethostbyname is obsolescent, use getnameinfo() instead.
libxt_RATEEST.o: In function `RATEEST_final_check':
libxt_RATEEST.c:(.text.RATEEST_final_check+0xc0): undefined reference to `log'
libxt_statistic.o: In function `statistic_parse':
libxt_statistic.c:(.text.statistic_parse+0xd0): undefined reference to `lround'
collect2: error: ld returned 1 exit status
make[6]: *** [libiptext.so] Error 1
make[6]: Leaving directory `/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21/extensions'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21'
make[4]: *** [all] Error 2
make[4]: Leaving directory `/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21'
make[3]: *** [/home/osboxes/chaos_calmer/build_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/linux-hisilicon_armv5tej/iptables-1.4.21/.built] Error 2
make[3]: Leaving directory `/home/osboxes/chaos_calmer/package/network/utils/iptables'
make[2]: *** [package/network/utils/iptables/compile] Error 2
make[2]: Leaving directory `/home/osboxes/chaos_calmer'
make[1]: *** [/home/osboxes/chaos_calmer/staging_dir/target-arm_arm926ej-s_uClibc-0.9.33.2_eabi/stamp/.package_compile] Error 2
make[1]: Leaving directory `/home/osboxes/chaos_calmer'
make: *** [world] Error 2

Any hints how to set up my built environment? Thanks in advance!

Support for FN-Link Hi1131s / 3131A-S (wifi)

I bought the smart doorbell:
https://www.dx.com/p/b30-wireless-wi-fi-intercom-video-doorbell-b10-doorbell-receiver-set-2093215#.XJZ9J0Mo-Wg

It is working very well, but it is connecting to a cloud service in China, I would like to connect locally without transmission of audio/video via the Internet.

What I found so far is that it is based on the Hi3518EV200 chip.

I think this in an article about the development (use Google translate):
https://blog.csdn.net/qq_42448904/article/details/81178754

For WIFI it is using the FN-Link Hi1131s / 3131A-S.

Besides of that there is a MCU STM8L

See drawing in original Chinese post. The author (maybe developer?) is: qq_115369006 @ blog.csdn.net

I can't create an account at blog.csdn.net so I can't contact the developer or find more info at csdn.

I was successful in finding the Rx- Tx-pins at the PCB. After connecting via a serial-USB cable I can see the original booting process: it runs 'Huawei LiteOS' as operating system and I will end up at the prompt. I can also break the booting so I get the U-boot prompt and load via the SD-card (MMC) your chaos_calmer release from 2019.02.17 (openwrt-hisilicon-armv5tej-3.4.35-initramfs-uImage) ! Great!

But Wifi is not working and I also don't see any effect of pressing the doorbell. Normally it should send a 433Mhz signal and maybe also a notification to the OS.

Could you maybe help to integrate FN-Link Hi1131s / 3131A-S in the build?

Hope you can give me some hints how to integrate wifi and the MCU STM8L ?

Thanks in advance!

New U-Boot for OpenWrt IPCam

Продумать состав и размер mtd разделов для OpenWrt загрузчика под IPCam.
Особое, трепетное отношение к разделу env - нужно продумать что там будем хранить.

Creating 5 MTD partitions on "spi0.0":
mtd0 : "u-boot" (512 k) - загрузчик U-Boot+Web
mtd1 : "env" (64 k) - опции для ядра, MAC и сенсор
mtd2 : "rootfs_data" (512 k) - настройки для программ
mtd3 : "kernel" (1280 k) - мини-ядро, все фичи в модулях
mtd4 : "rootfs" (5824 k) - универсальный раздел для 8/16M Flash
mtd5 : ""appfs" (8192 k) - только для 16M Flash

Предложения и обсуждения по данной теме - welcome !

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.