Visitar URL original
ihardware/omron at master · splincode/ihardware · GitHub
Skip to content

Latest commit

 

History

History

omron

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

== Оригинальная документация ==

https://github.com/openyou/libomron/edit/master/README.asciidoc

== Supported ==

Blood Pressure Monitors

  • HEM-790-IT
  • BP-791-IT
  • M10-IT

Pedometers

  • HJ-720-IT

== Library Requirements (For Compilation linux) ==

To build on Ubuntu, you can pull the following packages to build the project from source.

  • libusb-1.0-0-dev
  • cmake
  • cmake-data
  • git clone to ~/git/libomron # основной пакет
  • build area in ~/opt/omron-build # собранный пакет
  • install area in ~/opt/omron # файлы для установки
  1. Клонируем себе репозиторий https://github.com/openyou/libomron/
 cd ~/Develop/omron/c++_modules
 git clone https://github.com/openyou/libomron/
 cd libomron
  1. Подтягиваем подмодули
 git submodule update --init
  1. Создаем директорию с установкой софта
 mkdir -p omron-build
 cd omron-build
  1. Запускаем сборку программы
cmake ~/Develop/omron/c++_modules/libomron

Результат:

-- The C compiler identification is GNU 5.2.1
-- The CXX compiler identification is GNU 5.2.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Installation Prefix: /usr/local
-- Building Static Libraries for LIBOMRON
-- Building Shared Libraries for LIBOMRON
-- Setting build RPATH for LIBOMRON
-- Found libusb-1.0:
--  - Includes: /usr/include
--  - Libraries: /usr/lib/x86_64-linux-gnu/libusb-1.0.so
-- Found SWIG: /usr/bin/swig2.0 (found version "2.0.12") 
-- Using SWIG!
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found version "2.7.10") 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/splincode/Develop/omron/c++_modules/libomron/omron-build
  1. Комплилируем программу
make DESTDIR=~/Develop/omron/ install

Результат

Scanning dependencies of target omron_SHARED
[  6%] Building C object src/CMakeFiles/omron_SHARED.dir/omron.c.o
[ 12%] Building C object src/CMakeFiles/omron_SHARED.dir/omron_libusb.c.o
[ 18%] Linking C shared library ../lib/libomron.so
[ 18%] Built target omron_SHARED
Scanning dependencies of target omron_STATIC
[ 25%] Building C object src/CMakeFiles/omron_STATIC.dir/omron.c.o
[ 31%] Building C object src/CMakeFiles/omron_STATIC.dir/omron_libusb.c.o
[ 37%] Linking C static library ../lib/libomron.a
[ 37%] Built target omron_STATIC
Scanning dependencies of target omron_DEPEND
[ 37%] Built target omron_DEPEND
Scanning dependencies of target omron_720IT_csv_dump
[ 43%] Building C object examples/CMakeFiles/omron_720IT_csv_dump.dir/omron_720IT_test/omron_720IT_csv_dump.c.o
[ 50%] Linking C executable ../bin/omron_720IT_csv_dump
[ 50%] Built target omron_720IT_csv_dump
Scanning dependencies of target omron_720IT_test
[ 56%] Building C object examples/CMakeFiles/omron_720IT_test.dir/omron_720IT_test/omron_720IT_test.c.o
[ 62%] Linking C executable ../bin/omron_720IT_test
[ 62%] Built target omron_720IT_test
Scanning dependencies of target omron_790IT_test
[ 68%] Building C object examples/CMakeFiles/omron_790IT_test.dir/omron_790IT_test/omron_790IT_test.c.o
/home/splincode/Develop/omron/c++_modules/libomron/examples/omron_790IT_test/omron_790IT_test.c: In function ‘main’:
/home/splincode/Develop/omron/c++_modules/libomron/examples/omron_790IT_test/omron_790IT_test.c:34:9: warning: too many arguments for format [-Wformat-extra-args]
  printf("Opened omron 790IT\n", ret);
         ^
/home/splincode/Develop/omron/c++_modules/libomron/examples/omron_790IT_test/omron_790IT_test.c:56:15: warning: implicit declaration of function ‘omron_get_daily_data_count’ [-Wimplicit-function-declaration]
  data_count = omron_get_daily_data_count(test, bank);
               ^
[ 75%] Linking C executable ../bin/omron_790IT_test
[ 75%] Built target omron_790IT_test
[ 81%] Swig source
Scanning dependencies of target _omron
[ 87%] Building CXX object swig/CMakeFiles/_omron.dir/omronPYTHON_wrap.cxx.o
[ 93%] Building CXX object swig/CMakeFiles/_omron.dir/Omron.cxx.o
[100%] Linking CXX shared module ../lib/_omron.so
[100%] Built target _omron
Install the project...
-- Install configuration: ""
-- Installing: /home/splincode/Develop/omron/usr/local/include/libomron/libomron
-- Installing: /home/splincode/Develop/omron/usr/local/include/libomron/libomron/omron.h
-- Installing: /home/splincode/Develop/omron/usr/local/lib/libomron.a
-- Installing: /home/splincode/Develop/omron/usr/local/lib/libomron.so.0.9.0
-- Installing: /home/splincode/Develop/omron/usr/local/lib/libomron.so
-- Set runtime path of "/home/splincode/Develop/omron//usr/local/lib/libomron.so.0.9.0" to "/usr/local/lib"
-- Installing: /home/splincode/Develop/omron/usr/local/bin/omron_720IT_test
-- Set runtime path of "/home/splincode/Develop/omron//usr/local/bin/omron_720IT_test" to "/usr/local/lib"
-- Installing: /home/splincode/Develop/omron/usr/local/bin/omron_790IT_test
-- Set runtime path of "/home/splincode/Develop/omron//usr/local/bin/omron_790IT_test" to "/usr/local/lib"
-- Installing: /home/splincode/Develop/omron/usr/local/bin/omron_720IT_csv_dump
-- Set runtime path of "/home/splincode/Develop/omron//usr/local/bin/omron_720IT_csv_dump" to "/usr/local/lib"
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/omron.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/_omron.so
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/gui.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/store.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/__init__.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/plot.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/device.py
-- Installing: /home/splincode/Develop/omron/usr/local/python/omron/omron_790IT_test.py
  1. Подключите к USB свое устройство и найдите его
lsusb # стандартный инструмент для запроса устройств подключённых к USB

Результат:

Bus 004 Device 002: ID 04f2:b3f6 Chicony Electronics Co., Ltd HD WebCam (Acer)
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 005: ID 062a:4101 Creative Labs Wireless Keyboard/Mouse
Bus 005 Device 003: ID 0590:0028 Omron Corp. HJ-720IT / HEM-7080IT-E / HEM-790IT
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

или

lsusb | grep Omron

Результат:

Bus 005 Device 003: ID 0590:0028 Omron Corp. HJ-720IT / HEM-7080IT-E / HEM-790IT # значения при разных подключениях могут быть другими, кроме 0590:0028
  1. Устанавливаем переменную окружения
 export OMRON_DEV=/dev/bus/usb/005/003
  1. Можем проверить права на чтение/запись
ls -l $OMRON_DEV

Результат:

crw-rw-r-- 1 root root 189, 514 дек.   3 23:18 /dev/bus/usb/005/003
  1. Запускаем бинарник для считывания сохраненных значений с устройства (считывает последнее в памяти)
cd ~/Develop/omron/usr/local/bin/
ls
omron_720IT_csv_dump  omron_720IT_test  omron_790IT_test
./omron_790IT_test

Но из-за проблем с путями, не может найти скомпилированные библиотеки

./omron_790IT_test: error while loading shared libraries: libomron.so.0.9.0: cannot open shared object file: No such file or directory
cd /
sudo find . | grep libomron.so.0.9.0
./home/splincode/Develop/omron/c++_modules/libomron/omron-build/lib/

Поэтому пропишем путь к библиотеке в относительном пути

sudo bash
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/splincode/Develop/omron/c++_modules/libomron/omron-build/lib/
./omron_790IT_test
# or
# ~/Develop/omron/usr/local/bin/omron_790IT_test
Found 1 omron 790ITs
Opened omron 790IT
Device serial: M7080IT 207J
Device version: 0310100000�J
AJR data count: 10
01/01/2007 00:24:50 SYS: 100 DIA:  72 PULSE:  74
01/01/2007 00:27:26 SYS: 100 DIA:  75 PULSE:  74
01/01/2007 00:29:30 SYS:  99 DIA:  71 PULSE:  72
01/01/2007 00:35:03 SYS: 104 DIA:  71 PULSE:  70
01/01/2007 01:24:46 SYS: 114 DIA:  71 PULSE:  90
02/01/2007 12:42:26 SYS: 115 DIA:  76 PULSE:  63
02/01/2007 12:45:02 SYS: 114 DIA:  76 PULSE:  68
02/01/2007 12:47:21 SYS:  93 DIA:  64 PULSE:  74
04/12/2016 01:28:41 SYS:  89 DIA:  64 PULSE:  72
04/12/2016 01:31:57 SYS: 117 DIA:  79 PULSE:  66
Weekly info:
Evening[0 27/11/2016] = sys:103 dia:72 pulse:69.
Evening[1 31/12/2006] = sys:114 dia:71 pulse:90.