Elitech rc4 data access tool and library.
Project description
Elitech RC4 / RC5 DataReader
Description
This software is a data collecting tool, written in python for Temperature data logger RC-4/RC-5 and Temperature and Humidity data logger RC-4HC.
Elitech RC-4 / RC-4HC / RC-5 is a reasonable data logger.
Enables to use RC-4/RC-5 on Mac, Linux, Windows.
Requirements
- Python2.7, 3.4, 3.5, 3.6, 3.7
- Serial Port Driver
- (for RC-4 series) Silicon Labs CP210x USB-UART bridge VCP driver. http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx
- (for RC-5) CH340 Serial Driver MacOSX (mac driver is unstable)
- for sierra Signed Mac OS Driver
https://blog.sengotta.net/signed-mac-os-driver-for-winchiphead-ch340-serial-bridge/
- for sierra Signed Mac OS Driver
- pySerial (data access library for serial port)
Setup
-
Install Serial Port Driver.
- for RC-4 series: CP210x USB-UART bridge VCP driver. Download and install CP210x driver for your platform. http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx
- for RC-5: CH340 Serial Driver MacOSX(mac driver is unstable)
- for sierra Signed Mac OS Driver
https://blog.sengotta.net/signed-mac-os-driver-for-winchiphead-ch340-serial-bridge/
- for sierra Signed Mac OS Driver
-
install dependencies.
$ python setup.py install
OR pip
$ pip install elitech-datareader
- Linux: Add yourself to the dialout group. Restart required.
sudo usermod -a -G dialout $USER
Example(Script)
Initialize device.
initialize. rec interval 10sec. set clock now.
$ elitech-datareader --command simple-set --interval=10 /dev/tty.SLAB_USBtoUART # RC-4 on macosx
# /dev/tty.wchusbserialfd1430 # RC-5 on macosx
Get data
Press stop button for stop recording.
output to stdout.
$ elitech-datareader --command get /dev/tty.SLAB_USBtoUART
6
1 2015-06-07 13:53:36 25.0
2 2015-06-07 13:53:46 25.1
3 2015-06-07 13:53:56 25.1
4 2015-06-07 13:54:06 25.1
5 2015-06-07 13:54:16 25.1
6 2015-06-07 13:54:26 25.1
Elitech device gets the data in units called "Page size". Page size is determined by the device model. RC4 is 100 and RC5 is 500.
You can directly specify the page size, with an optional argument --page_size. (for debug)
$ elitech-datareader --command get --page_size=500 /dev/tty.SLAB_USBtoUART
6
1 2015-06-07 13:53:36 25.0
2 2015-06-07 13:53:46 25.1
3 2015-06-07 13:53:56 25.1
4 2015-06-07 13:54:06 25.1
5 2015-06-07 13:54:16 25.1
6 2015-06-07 13:54:26 25.1
Get latest data
$ elitech-datareader --command latest /dev/tty.SLAB_USBtoUART
6 2015-06-07 13:54:26 25.1
$ elitech-datareader --command latest --value_only /dev/tty.SLAB_USBtoUART
25.2
Get device information
get device information.
$ elitech-datareader --command devinfo --encode=utf8 /dev/tty.SLAB_USBtoUART
station_no=3
last_online=2015-06-09 01:13:13
temp_unit=TemperatureUnit.C
alarm=AlarmSetting.NONE
work_sts=WorkStatus.STOP
lower_limit=-30.0
tone_set=ToneSet.NONE
rec_count=272
upper_limit=60.0
delay=0.0
stop_button=StopButton.ENABLE
current=2015-06-09 07:42:00
start_time=2015-06-07 13:53:36
rec_interval=00:00:10
temp_calibration=-1.5
user_info=RC-4 Data Logger
dev_num=9900112233
user_info
is multibytes text. Use --encode option. (default UTF8)
On Elitech Software (Logger Data Management Software V2.0, Rc Logger), user info is encoded various charsets. (GBK, MS932).
$ elitech-datareader --command devinfo --encode=gbk /dev/tty.SLAB_USBtoUART # for mac os Rc Logger software
see. https://github.com/civic/elitech-datareader/issues/17
Parameter set
set device parameter.
$ elitech-datareader --command set --interval=10 --upper_limit=60.0 --lower_limit=-30.0 \
--station_no=1 --stop_button=y --delay=0.0 --tone_set=y --alarm=x --temp_unit=C \
--temp_calibration=-1.5 --dev_num=1234567890 --encode=utf8 --user_info="UserInfoユーザー情報" /dev/tty.SLAB_USBtoUART
user_info
is multibytes text. Use --encode option. (default UTF8)
Debug raw communication
Send raw request data. receive response data.
$ elitech-datareader --command raw --req="CC 00 06 00 D2" -res_len=4 /dev/tty.SLAB_USBtoUART
response length=4
55 01 01 32
Note (serial port)
If comunication unstable, then try --ser_baudrate
and --ser_timeout
option.
$ elitech-datareader --command devinfo --ser_baudrate 115200 --ser_timeout=10 /dev/tty.SLAB_USBtoUART
Example(Python module)
Get device infomation.
import elitech
device = elitech.Device("/dev/tty.SLAB_USBtoUART")
devinfo = device.get_devinfo()
print(devinfo.info)
Get record data
import elitech
device = elitech.Device("/dev/tty.SLAB_USBtoUART")
body = device.get_data()
for elm in body:
print elm
Update param
device = elitech.Device("/dev/tty.SLAB_USBtoUART")
devinfo = device.get_devinfo() # get current parameters.
param_put = devinfo.to_param_put() #convart devinfo to parameter
param_put.rec_interval = datetime.time(0, 0, 10) # update parameter
param_put.stop_button = elitech.StopButton.ENABLE # update parameter
param_put_res = device.update(param_put) # update device
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file elitech-datareader-1.0.3.tar.gz
.
File metadata
- Download URL: elitech-datareader-1.0.3.tar.gz
- Upload date:
- Size: 17.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.27.0 CPython/2.7.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 54750102796fea388835efbdd4690a548f2961a01254952e6ce041abbb4ae2b7 |
|
MD5 | 23e7cc57c9a9ee204ce22b58ddcffddd |
|
BLAKE2b-256 | 6b4a9b32adef983098d5cc82b7bd0e69eb3be140707019edbbedcfd6bc6dbf33 |
File details
Details for the file elitech_datareader-1.0.3-py3-none-any.whl
.
File metadata
- Download URL: elitech_datareader-1.0.3-py3-none-any.whl
- Upload date:
- Size: 17.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.27.0 CPython/2.7.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90a983deaeb680b8b57b732053abc0bc33d5aeef2b9203c3738b1b31864f78a8 |
|
MD5 | a3e553190bd68d38d41ea7c483475576 |
|
BLAKE2b-256 | ff186b32c8d2002b443863885fd802af8a30dfdeb69346052a6f7460a9bf36df |