Skip to main content

Support programming with Kiwrious sensor

Project description

pyKiwrious

==========

Overview

Documentation

Tests and Demonstrations

Installation

Development

Future Plans

Acknowledgement

Overview


This repository contains the first implementation of the pyKiwrious library.

The library supports Python development when working with Kiwrious sensors.

Using this library, you can connect with, read from, and manipulate Kiwrious streams through the KiwriousService object.

Documentations


For detailed documentation of the functionalities, see the PyPI_PublicationDetails.txt file.

For more details about the project and Kiwrious sensors, see the [report.pdf](coming soon) file.

Tests and Demonstrations


Demonstrations on the usage of the library can be found in the Demo directory.

Tests can be found in the testing directory (humidity, conductivity and heartbeat sensors), and the Test Group directory (light, temperature and air quality sensors).

Note: Demonstration programs and some tests are not publish to PyPi, but are all avaliable in github

Installation


Start with using pip install pyKiwrious on your Python console.

The library requires pyserial and numpy. This will be automatically imported by the setup.py file on installation.

Alternatively, you can download the library from the PyPi page.

Development


The program is developed entirely with Python language (python>=3.0). It uses external libraries to connect with USB device (pyserial==3.5), and perform FFT to filter data (numpy==1.23.4). Aside from these essential tools, others were used to support developemnt.

During early stages of development, we used the following tools:

  • Bus hound software (version=6.0) to understand data structure.

  • Visualisation tools to understand heart rate sensor (matplotlib==3.6.1).

For testing we used:

  • Testing tools (unittest==0.0) to develop test stubs.

  • Virtual serial port to simulate comports.

To demonstrate the flexibility of our core library, demo programs used:

  • Pygame

  • Pyzero

  • PushOver platform

  • ONVIF-based CCTV camera

  • Rasberry Pi hardware and platform

Project management was done through the following platforms:

  • Slack for client communications

  • Github pull requests for version control

  • Wechat group communication

  • Following Ganzt chart produced by ProjectLibre

Future Plans


The current version can cause some delay when being used by end programs, this may cause major satisfaction when providing service for games and other programs that requires fast response. Future versions should develop techniques such as, thread pools, concurrency locks, and more to optimise resource allocation across the threads, hence lower latency.

The program only provides basic functionality in reading data stream, future versions might benefit from implementing other functions such as, getting data average, controlling sample rate, getting data peak values and more that helps end program manipulate data.

Acknowledgement


The project is developed by Team 36 from the UOA COMPSCI 399 course (2022, S2).

Thank you for the support from our client and partner Kiwrious - Augmented Human Lab.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyKiwrious-0.0.4.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyKiwrious-0.0.4-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

Details for the file pyKiwrious-0.0.4.tar.gz.

File metadata

  • Download URL: pyKiwrious-0.0.4.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for pyKiwrious-0.0.4.tar.gz
Algorithm Hash digest
SHA256 4984bd6200281e6839fb63fcd4fc51c0a6fbc26f802609ecb05a14c6cbed2756
MD5 66ae5c20092befe41dbd40ef8aa30a1f
BLAKE2b-256 24e01482b9769d7ed1287d08429bad90323d117b9ed21bacd0a631d7ed6d7e79

See more details on using hashes here.

File details

Details for the file pyKiwrious-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: pyKiwrious-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 17.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for pyKiwrious-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c9e6083bc5d6267d9e5655253030722254e1835714366d3f00df91ac0b3b90e2
MD5 e2e13fb94c9ab4d7b189b6e157683809
BLAKE2b-256 0c4ebe90a407d383a97a6b575722771fa73024a64ee580e07e5a8f0a99d1439d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page