EKM Dash setup on Linux

General questions and discussions focused around the EKM Metering System. Discuss your meters, installations, and meter communications here.
Post Reply
rnganx
Posts: 4
Joined: Tue Nov 08, 2016 8:32 pm

EKM Dash setup on Linux

Post by rnganx »

Hi,
I'm trying to install EKM Dash software on Ubuntu 14.04, and get a crash when starting the software.
It is 64bit os and already used the following steps to install the libraries:

Code: Select all

sudo dpkg --add-architecture i386
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 libgtk2.0-0:i386
Here's a log of what happens when I run it:
Runtime Error
Please report what caused this error along with the information below.
RuntimeCore/ICUStable.cpp: 79
Failure Condition: sLibraryPtr
Could not load ICU library

(process:17190): GLib-GObject-WARNING **: invalid (NULL) pointer instance

(process:17190): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed

(process:17190): Gtk-CRITICAL **: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed

(process:17190): GLib-GObject-WARNING **: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'

(process:17190): Gtk-CRITICAL **: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed

(process:17190): Gtk-CRITICAL **: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed

(process:17190): GLib-GObject-WARNING **: value "TRUE" of type 'gboolean' is invalid or out of range for property 'visible' of type 'gboolean'

(process:17190): Gtk-CRITICAL **: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed

(process:17190): Gtk-WARNING **: Screen for GtkWindow not set; you must always set
a screen for a GtkWindow before using the window

(process:17190): Gdk-CRITICAL **: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Pango-CRITICAL **: pango_context_set_font_description: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_base_dir: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_language: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_new: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_text: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_attributes: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_alignment: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_ellipsize: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_single_paragraph_mode: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_width: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_extents: assertion 'layout != NULL' failed

(process:17190): Gdk-CRITICAL **: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Pango-CRITICAL **: pango_context_set_font_description: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_base_dir: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_language: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_new: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_text: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_attributes: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_alignment: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_ellipsize: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_single_paragraph_mode: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_width: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_extents: assertion 'layout != NULL' failed

(process:17190): Gtk-CRITICAL **: IA__gtk_icon_theme_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Gtk-CRITICAL **: IA__gtk_settings_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Gtk-CRITICAL **: IA__gtk_icon_size_lookup_for_settings: assertion 'GTK_IS_SETTINGS (settings)' failed

(process:17190): Gtk-WARNING **: Invalid icon size 6


(process:17190): Gtk-CRITICAL **: IA__gtk_icon_theme_load_icon: assertion 'GTK_IS_ICON_THEME (icon_theme)' failed

(process:17190): Gtk-WARNING **: Error loading theme icon 'dialog-error' for stock:

(process:17190): Gtk-CRITICAL **: IA__gtk_icon_size_lookup_for_settings: assertion 'GTK_IS_SETTINGS (settings)' failed

(process:17190): Gtk-WARNING **: /build/gtk+2.0-B1ahdU/gtk+2.0-2.24.23/gtk/gtkstyle.c:2358: invalid icon size '6'

(process:17190): Gtk-CRITICAL **: IA__gtk_style_render_icon: assertion 'pixbuf != NULL' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_ref: assertion 'G_IS_OBJECT (object)' failed

(process:17190): Gdk-CRITICAL **: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Pango-CRITICAL **: pango_context_set_font_description: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_base_dir: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_language: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_new: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_text: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_alignment: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_ellipsize: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_single_paragraph_mode: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_wrap: assertion 'PANGO_IS_LAYOUT (layout)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_width: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_extents: assertion 'layout != NULL' failed

(process:17190): Gdk-CRITICAL **: IA__gdk_pango_context_get_for_screen: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Pango-CRITICAL **: pango_context_set_font_description: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_base_dir: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_context_set_language: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_new: assertion 'context != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_text: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_extents: assertion 'layout != NULL' failed

(process:17190): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

(process:17190): Gdk-CRITICAL **: IA__gdk_screen_get_width: assertion 'GDK_IS_SCREEN (screen)' failed

(process:17190): Pango-CRITICAL **: pango_layout_set_width: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_extents: assertion 'layout != NULL' failed

(process:17190): Pango-CRITICAL **: pango_layout_get_line_count: assertion 'layout != NULL' failed
Thanks for any help.
Jameson
Posts: 860
Joined: Fri Nov 04, 2011 7:42 pm
Location: Santa Cruz, CA
Contact:

Re: EKM Dash setup on Linux

Post by Jameson »

Thanks,

Im not much of a linux guy, but did you try this?:

sudo apt-get install libicu52:i386

It is the recommended fix from this page: https://forum.xojo.com/21679-xojo-2015- ... r-ubuntu/0
r2 now uses the system ICU library instead of making copies for every single application. You probably just need to install it, something like:

sudo apt-get install libicu52:i386

The exact version might vary depending on the version of your Linux distribution.
Let me know how it goes!
Jameson
EKM METERING
http://www.ekmmetering.com
831.425.7371
rnganx
Posts: 4
Joined: Tue Nov 08, 2016 8:32 pm

Re: EKM Dash setup on Linux

Post by rnganx »

Hi Jameson,
Thanks for the reply. With the icu lib I am able to start the program and enter the registration info. However after the registration step it shows a window encountered an unrecoverable error.

There is also log on the console, and tried to work through the missing libraries

Code: Select all

sudo apt-get install libcanberra-gtk-module:i386
sudo apt-get download overlay-scrollbar-gtk2:i386
sudo dpkg --force-depends -i overlay-scrollbar-gtk2_*_i386.deb
There is still some errors for unity-gtk-module, and murrine. But seems apt-get those libraries is not installable

Below is the log:
Gtk-Message: Failed to load module "unity-gtk-module"

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",

(EKM_Dash:20512): Gtk-WARNING **: Unable to locate theme engine in module_path: "murrine",
GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications.
Jameson
Posts: 860
Joined: Fri Nov 04, 2011 7:42 pm
Location: Santa Cruz, CA
Contact:

Re: EKM Dash setup on Linux

Post by Jameson »

Good to hear the EKM Dash is running. It looks like there is some sort of solution to "murrine" here:

https://ubuntuforums.org/showthread.php?t=2061142

Id try:

Code: Select all

sudo apt-get install gtk2-engines-murrine:i386
Any idea why so many of your libraries are missing or would this be an issue for any Ubuntu 14.04.

I should also ask, is this running on an ARM Processor such as raspberry pi? The EKM Dash is not able to run on ARM based processors.
Jameson
EKM METERING
http://www.ekmmetering.com
831.425.7371
rnganx
Posts: 4
Joined: Tue Nov 08, 2016 8:32 pm

Re: EKM Dash setup on Linux

Post by rnganx »

Hi Jameson,
Installing the murrine package got rid of the warnings in the middle, but the first and last line of the previous log still remains. Program still pops up a window encountering an unrecoverable error.

Attempted to try another computer, a desktop which has i7 cpu and Ubuntu 16.04LTS. Same symptoms as the current machine which is an AMD-A8 laptop. If Dash doesn't work please let me know if there is another way to get data off the meter. Thanks
Jameson
Posts: 860
Joined: Fri Nov 04, 2011 7:42 pm
Location: Santa Cruz, CA
Contact:

Re: EKM Dash setup on Linux

Post by Jameson »

Some google searches turned up these solutions:

For this issue:
GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications.
https://ask.fedoraproject.org/en/questi ... hat-is-it/

says:

Code: Select all

yum install dconf dconf-editor
===
For this issue:
Gtk-Message: Failed to load module "unity-gtk-module"
This page has the answer for you: https://forum.xojo.com/33313-simple-app ... al-xerus/0

Code: Select all

sudo apt-get install gtk2-engines
sudo apt-get install gtk2-engines-*
===
Hope this helps.
Jameson
EKM METERING
http://www.ekmmetering.com
831.425.7371
rnganx
Posts: 4
Joined: Tue Nov 08, 2016 8:32 pm

Re: EKM Dash setup on Linux

Post by rnganx »

Hi Jameson,
It seems that apt-get insists that gtk2-engines can't be installed. Even when I force a install using apt-get download + dpkg --force-depends it does not help the situation. I'll see if it is possible to acquire a windows laptop tomorrow... It appears the Dash software really doesn't like 64-bit Linux. For long term polling, I see that you have an API where you can download the data directly without your dash software. Does it still require initial set up using Dash? Thanks for your assistance
Reading package lists...
Building dependency tree...
Reading state information...
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
gtk2-engines-murrine:i386 : Depends: libpango1.0-0:i386 (>= 1.14.0) but it is not going to be installed
overlay-scrollbar-gtk2:i386 : Depends: overlay-scrollbar:i386 but it is not installable
unity-gtk2-module:i386 : Depends: libunity-gtk2-parser0:i386 (>= 0.0.0+14.04.20141212-0ubuntu1) but it is not going to be installed
Jameson
Posts: 860
Joined: Fri Nov 04, 2011 7:42 pm
Location: Santa Cruz, CA
Contact:

Re: EKM Dash setup on Linux

Post by Jameson »

Most of this is Greek to me. :oops: But it looks like you have more installs to do.

Did you see the 4th line in your quoted text?:
You might want to run 'apt-get -f install' to correct these:
Do you want to read your meter with your computer directly using a python script, or using the EKM Dash, or using the EKM Push?

We can help you with each of these. As far as I know the Dash should run on your Ubuntu 16.04 (unless you are on an ARM chip, you have not commented if you are on ARM or x86)

Depending on your capabilities (and for others that may be reading this) you may find the ekmmeters.py portion of our API Developer Portal to be interesting: http://documents.ekmmetering.com/api-do ... ers-py-api

This is a quick way to start reading your Omnimeter with a python script, and parsing the data.
Jameson
EKM METERING
http://www.ekmmetering.com
831.425.7371
Post Reply