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.3.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.3-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pyKiwrious-0.0.3.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.3.tar.gz
Algorithm Hash digest
SHA256 af1e1c039a6ba65be8ce4d5ce19a1c129cb22cccd155afe8f9f07ea41ca53c40
MD5 1e6ab6812c6dc534f373eaf773f60bac
BLAKE2b-256 3d13ca2ebe2af3040a524965a2a207e47e3b2407e00cd8e4334c69ef82a854fb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pyKiwrious-0.0.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e1179006a6e283c25e07f74000cdc9cd62dd0fd0a5db9aca69e5f90ba78c2702
MD5 a4c38fc155c89e4738f4ff37526935ba
BLAKE2b-256 95d853b5cc88b0021d32a7ac36d08d266aded56ef316f8ff264c5f5d4e41283d

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