IP-Symcon auf Odroid C2

I have a bit of a difficulty making IP-Symcon fully functional on an Odroid C2 single board computer. Maybe some people who have experience with IP-Symcon on non-RPI SBC’s can help me out.

The Odroid C2 is one of the most attractive low cost SBC’s currently available on the market, at least from a hardware perspective. For those who haven’t heard about this little device, here is a list of features:

  • ARM Cortex-A53(ARMv8) 64-bit 2Ghz quad core CPU (vs 1,2GHz quad core for RPi 3)
  • 2GB DDR3 SDRAM (vs 1GB for RPi 3)
  • eMMC 5.0 flash storage slot (superior performance and flash management compared to SD memory cards)
  • UHS-1 MicroSD card slot
  • Gigabit ethernet directly connected to the SoC (vs 100Mbps ethernet via USB 2.0 for RPi 3)
  • Form factor compatible with RPi 2 & 3
  • Price $40 ex VAT

odroid-c2.jpg

Besides the improved performance I particularly like the eMMC flash memory option. eMMC is the type of memory used in smartphones, tablets and televisions. It’s better suited for an embedded computer than dumb SD memory.

With the default Ubuntu 16.04 LTS desktop distribution that came on the eMMC memory chip I am able to launch IPS. Weirdly enough PHP scripts are not able to resolve domain names. I have to add the hostname to /etc/hosts to be able to load a url from the particular host.

I have also tried the Debian Jessie-based Odrobian and Armbian distro’s. These are lightweight, bloat-free distributions. IP-S fails to start on both Odrobian and Armbian without leaving error messages in the logfile:

17:57:28 | 00000 | MESSAGE | Kernel | Creating…
17:57:28 | 00000 | MESSAGE | Kernel | IP-Symcon Kernel Version: 4.00
17:57:28 | 00000 | MESSAGE | Kernel | IP-Symcon Kernel WorkingDir: /var/lib/symcon/
17:57:28 | 00000 | MESSAGE | Kernel | IP-Symcon Kernel SystemDir: /usr/share/symcon/
17:57:28 | 00000 | MESSAGE | Kernel | IP-Symcon Kernel LogDir: /var/log/symcon/
17:57:28 | 00000 | MESSAGE | Kernel | IP-Symcon System: linux
17:57:28 | 00000 | MESSAGE | Kernel | Boost Version: 1_60
17:57:28 | 00000 | MESSAGE | Kernel | cURL Version: libcurl/7.38.0 OpenSSL/1.0.1k zlib/1.2.8 libidn/1.29 libssh2/1.4.3 librtmp/2.3
17:57:28 | 00000 | MESSAGE | Kernel | Git2 Version: 0.23.0
17:57:28 | 00000 | MESSAGE | Kernel | SSH2 Version: 1.4.2
17:57:28 | 00000 | MESSAGE | Kernel | ZLIB Version: 1.2.7
17:57:28 | 00000 | MESSAGE | Kernel | RapidJSON Version: 1.0.2
17:57:28 | 00000 | MESSAGE | Kernel | OpenSSL Version: OpenSSL 1.0.1k 8 Jan 2015
17:57:28 | 00000 | MESSAGE | Kernel | OpenSSL CertDir: /usr/lib/ssl/certs
17:57:28 | 00000 | MESSAGE | Kernel | XML2 Version: 20901
17:57:28 | 00000 | MESSAGE | Kernel | XML2 Threads: Yes
17:57:28 | 00000 | MESSAGE | Kernel | PHP Version: 5.6.17
17:57:28 | 00000 | MESSAGE | Kernel | Initializing…
17:57:28 | 00000 | MESSAGE | LocalePool | Creating…
17:57:28 | 00000 | MESSAGE | LocalePool | Detected locale: en_US
17:57:28 | 00000 | MESSAGE | LocalePool | No translation files found
17:57:28 | 00000 | MESSAGE | LicensePool | Creating…
17:57:28 | 00000 | MESSAGE | LicensePool | LiveUpdate: 29.04.2016, 4ff1ad4a1d44
17:57:28 | 00000 | MESSAGE | LicensePool | Cannot verify license. Running in Demo mode.
17:57:29 | 00000 | MESSAGE | Settings | Creating…
17:57:29 | 00000 | MESSAGE | Settings | Creating settings thread…
17:57:29 | 00000 | MESSAGE | Settings | Cleaning up Backup Folder…

I suspect there are missing packages but I have no idea what is missing. I am also not an advanced Linux user and I have no I idea where to go next to resolve the issue.

Preferably I would run IP-Symcon on Armbian with just the minimum required packages to run IP-S.

Some directions on how to install IP-Symcon on 64-bit Ubuntu and Debian Jessie:

Add IP-Symcon to sources.list:

deb [arch=armhf] http://apt.ip-symcon.de/ stable rpi

Add armhf as foreign architecture, install IP-S:

sudo dpkg --add-architecture armhf
sudo apt-get install symcon:armhf

Install missing packages:

sudo apt-get install libssl1.0.0:armhf libssl-dev:armhf
sudo apt-get install libcurl4-openssl-dev:armhf

There will be more missing packages on Odrobian and Armbian Jessie.

Configure locales:

dpkg-reconfigure locales

Btw: Ich kann Deutsch lesen aber nicht so gut schreiben so bitte reagieren Sie in Deutsch :wink: .

Hi,

ich habe einen C1 am laufen, und damals die „sources.list“ umgebogen.


#deb http://ftp.debian.org/debian/ stable main contrib non-free
#deb-src http://ftp.debian.org/debian/ stable main contrib non-free

deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
#deb-src http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi

## Raspberry Pi Foundation official repository
deb http://archive.raspberrypi.org/debian wheezy main
#deb http://apt.ip-symcon.de/ stable main 
#deb http://apt.ip-symcon.de/ stable rpi
deb http://apt.symcon.de/ beta rpi

Damit hatte ich das auf den C1 hinbekommen.
Den C1 nutze ich aber nuch noch zum spielen mit IPS, da ich mittlerweile auf PI2 und PI3 umgestiegen bin.
Damals hatte mir der Pi1 zu wenig Power, daher die Versuche.

Try running the executable instead of the init script. This should drop more useful error messages:


/usr/bin/symcon

paresy

Hi Paresy,

When I run the executable the following message is returned:

*** IP-Symcon starting
pure virtual method called
terminate called without an active exception
Aborted

Ist your OS armhf? It has to be 32Bit, not 64Bit even if your CPU supports it.

paresy

It’s hybrid arm64 with armhf configured as foreign architecture. The Linux kernel version is 3.14.29 (mainline Linux support for Amlogic S905 has only been recently added with the release of kernel 4.6).

I have also tried Odrobian Hybrid (also based on Debian Jessie) which uses a 64-bit kernel with 32-bit OS (arm64 as foreign architecture). I have installed every required package for both armhf and arm64 architectures but I end up with the same message („pure virtual method called / terminate called without an active exception“).

I have another Odroid running 64-bit Ubuntu 16.04 desktop (so lots of packages pre-installed). IP-Symcon actually runs on this system except for the fact that hostname resolving is not working (see this thread for more info: Unable to install modules from module repository ). So it is possible to run Symcon on arm64.

I would prefer to run Symcon on something lightweight like Armbian. Disk space usage on the Ubuntu system is almost 8GB out of 8GB available while Armbian and Odrobian only consume about 1GB of storage. I am not sure if the arm64 architecture is the issue. Maybe there is a missing package Symcon depends on without throwing an exception?

I have ordered an Odroid XU4 (32-bit Samsung Exynos 5422 octacore, 2GB RAM) to find out how IP-Symcon runs on this board. This seems like a nice board for automation of larger buildings.

Ubuntu 14.04 desktop image: symcon works straight from the installer
Ubuntu 14.04 server image: after installing missing packages I end up with the same error as above ( pure virtual method called / terminate called without an active exception / / Aborted
Armbian Jessie server: same error as above
Ubuntu 15.10 desktop image: symcon works

It would be nice to see instructions on how to run symcon on a lightweight Debian distribution.