Skip to content

gbrickell/Tiki-IoT

Repository files navigation

Tiki IoT: code development

The aim of this code and documentation maintenance repository is to support:

  • the way the open source Tiki software, an all-in-one Wiki+CMS+Groupware system, can be used as a central data repository and system management capability for an Internet of Things (IoT) deployment.
  • for a typical IoT deployment data is collected locally by an 'integrating' hub device from a network of satellite devices, with the hub device using specialised software to up/download data to/from Tiki; and
  • a particularly flexible way for a hub device to collect data from local satellite devices is to use a TCP socket server/client method.

The schematic below provides a very generic picture of how the various components of an overall ‘Tiki IoT’ system might be deployed.

Documentation and example code

Within this repository:

  • the Tiki_API_C_code folder contains example 'C' code to support programmable access to the Tiki API by a local IoT 'integrating' hub device such as a Raspberry Pi, NVIDIA Jetson Nano/Orin, or any another small Single Board Computer (SBC) that supports 'C' code usage;
  • the Test_code_Python_templates folder provides a series of Python scripts, as templates, that can be easily configured to allow each of the Tiki API access 'C' functions to be tested from an 'integrating' hub device such as a Raspberry Pi or other SBC;
  • the TCP_socket_example_code folder provides example Python code, with extensive use of Python threads, for running a TCP socket server on an 'integrating' hub device such as a Raspberry Pi or other SBC. Using the TCP socket method to collect data from local satellite sensors is particularly useful where a local WiFi network can provide wide area coverage across a local non-public intranet. Example Python code is also provided for how a satellite sensor, managed by a small low cost Raspberry Pi Zero for example, can send data to a socket server on the hub device using a 'set' format for the data and a number of 'handshake' checks between the satellite and the socket server; plus finally
  • the documentation folder contains a PDF that provides some notes on the IoT context and the development/testing of the 'C' code.

It should be noted that all the 'C' code and Tiki API access 'template' files have a YYMMDD element in their file name which designates the release version, where the current versions are all 250808.

More detail can be found on this IoT/Tiki development at this link

About

'C' and Python code for a IoT local hub device to communicate with the Tiki API as well as collecting data from local sensors

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors