Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions .zenodo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"creators": [{"name": "devkyato", "affiliation": "MATA Company"}],
"contributors": [{"name": "Cursor Agent", "type": "Other"}],
"title": "OpenNet: typed ONP/1 messaging for ESP32, Raspberry Pi, and Python backends",
"description": "OpenNet is a dependency-free implementation of typed ONP/1 messaging for ESP32 devices, Raspberry Pi systems, and Python backends. It provides inspectable framing, bounded resource use, acknowledgement and retry support, and Arduino and Python implementations for direct reliable streams. Usage: install the Arduino library or Python package, connect a client and host over a trusted stream, then send typed application messages. Applications include classroom IoT systems, embedded telemetry links, Raspberry Pi gateways, and direct device-to-backend communication.",
"version": "0.2.1",
"keywords": ["opennet", "ONP/1", "IoT", "ESP32", "Raspberry Pi", "messaging", "protocol", "embedded", "Arduino", "Python"],
"license": "mit",
"upload_type": "software",
"access_right": "open",
"language": "eng",
"related_identifiers": [
{"identifier": "https://github.com/devkyato/OpenNet", "relation": "isSupplementTo", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/Datary", "relation": "references", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/TapAuth", "relation": "references", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/Lowpack", "relation": "references", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/Relay", "relation": "references", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/Custom-Arduino-Libraries", "relation": "references", "resource_type": "software"},
{"identifier": "https://github.com/devkyato/Arduino-Programs-Guide", "relation": "references", "resource_type": "software"}
]
}
10 changes: 9 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,13 @@ All notable changes are documented here. OpenNet follows

## [Unreleased]

## [0.2.1] - 2026-08-09

### Changed

- Add Zenodo and Citation File Format metadata for archival citation.
- Refresh release-facing metadata across the Python and Arduino packages.

## [0.2.0] - 2026-07-29

### Added
Expand Down Expand Up @@ -97,7 +104,8 @@ All notable changes are documented here. OpenNet follows
- Arduino IDE, PlatformIO, and Python examples.
- Cross-platform tests, CI, packaging, and contributor documentation.

[Unreleased]: https://github.com/devkyato/OpenNet/compare/v0.2.0...HEAD
[Unreleased]: https://github.com/devkyato/OpenNet/compare/v0.2.1...HEAD
[0.2.1]: https://github.com/devkyato/OpenNet/compare/v0.2.0...v0.2.1
[0.2.0]: https://github.com/devkyato/OpenNet/compare/v0.1.1...v0.2.0
[0.1.1]: https://github.com/devkyato/OpenNet/compare/v0.1.0...v0.1.1
[0.1.0]: https://github.com/devkyato/OpenNet/releases/tag/v0.1.0
19 changes: 19 additions & 0 deletions CITATION.cff
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
cff-version: 1.2.0
message: "If you use this software, please cite it using the metadata from this file."
title: "OpenNet: typed ONP/1 messaging for ESP32, Raspberry Pi, and Python backends"
authors:
- family-names: devkyato
affiliation: "MATA Company"
version: 0.2.1
license: MIT
repository-code: "https://github.com/devkyato/OpenNet"
url: "https://github.com/devkyato/OpenNet"
abstract: "Typed ONP/1 messaging for ESP32, Raspberry Pi, and Python backends."
keywords: [opennet, ONP/1, IoT, ESP32, Raspberry Pi, messaging, protocol, embedded, Arduino, Python]
preferred-citation:
type: software
title: "OpenNet: typed ONP/1 messaging for ESP32, Raspberry Pi, and Python backends"
authors:
- family-names: devkyato
affiliation: "MATA Company"
version: 0.2.1
29 changes: 23 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ communication layer or a replacement for MQTT, HTTP, or WebSocket. It sends
JSON, text, signed integers, finite doubles, booleans, null, and arbitrary binary
data over TCP/TLS or another reliable ordered stream.

Version 0.2.0 is an alpha release for real projects and learning. It has a
Version 0.2.1 is an alpha release for real projects and learning. It has a
documented wire format, bounded resource use, retries and duplicate suppression,
native Arduino protocol tests, Python tests across 3.9–3.14, reproducible release
packages, measured local performance, and an optional topic-authorization hook.
Expand Down Expand Up @@ -56,23 +56,23 @@ Python wheel from the release page:

```sh
python -m pip install \
https://github.com/devkyato/OpenNet/releases/download/v0.2.0/opennet_protocol-0.2.0-py3-none-any.whl
https://github.com/devkyato/OpenNet/releases/download/v0.2.1/opennet_protocol-0.2.1-py3-none-any.whl
opennet --version
```

For an isolated command:

```sh
pipx install \
https://github.com/devkyato/OpenNet/releases/download/v0.2.0/opennet_protocol-0.2.0-py3-none-any.whl
https://github.com/devkyato/OpenNet/releases/download/v0.2.1/opennet_protocol-0.2.1-py3-none-any.whl
```

For Raspberry Pi/Linux, extract `OpenNet-linux-0.2.0.tar.gz` and run
For Raspberry Pi/Linux, extract `OpenNet-linux-0.2.1.tar.gz` and run
`sudo ./install.sh`. It creates a hardened, unprivileged systemd service with a
loopback-only default. For Arduino IDE, install `OpenNet-0.2.0.zip` through
loopback-only default. For Arduino IDE, install `OpenNet-0.2.1.zip` through
**Sketch > Include Library > Add .ZIP Library**.

The Python distribution is installable with pip, but v0.2.0 is distributed from
The Python distribution is installable with pip, but v0.2.1 is distributed from
GitHub Releases rather than the public PyPI index.

## Five-minute local test
Expand Down Expand Up @@ -143,6 +143,23 @@ unsafe action.
- [ONP/1 protocol specification](docs/protocol.md)
- [Contributing](CONTRIBUTING.md)

## Citation

If you use this software in research or teaching, please cite the Zenodo archive / this repository:

```text
devkyato. (2026). OpenNet: typed ONP/1 messaging for ESP32, Raspberry Pi, and Python backends (Version 0.2.1).
```

See [CITATION.cff](CITATION.cff) for machine-readable metadata.

## Applications

- Direct ESP32-to-Raspberry Pi telemetry links.
- Classroom demonstrations of typed embedded messaging.
- Lightweight device-to-backend protocols over reliable streams.
- Arduino and Python interoperability experiments.

## Connected projects

| Project | Role |
Expand Down
13 changes: 13 additions & 0 deletions docs/releases/v0.2.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# OpenNet v0.2.1

OpenNet v0.2.1 is a publication-maintenance release. It aligns the Python and Arduino package
versions and adds Zenodo plus Citation File Format metadata for archival citation.

## Install

```sh
python -m pip install https://github.com/devkyato/OpenNet/releases/download/v0.2.1/opennet_protocol-0.2.1-py3-none-any.whl
```

Arduino IDE users can install `OpenNet-0.2.1.zip`; see [`CITATION.cff`](../../CITATION.cff) for
the software citation metadata.
2 changes: 1 addition & 1 deletion library.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "OpenNet",
"version": "0.2.0",
"version": "0.2.1",
"description": "Direct typed ONP/1 messaging between ESP32 devices and Python hosts.",
"keywords": ["esp32", "raspberry-pi", "iot", "tcp", "tls", "bluetooth", "messaging"],
"repository": {
Expand Down
2 changes: 1 addition & 1 deletion library.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name=OpenNet
version=0.2.0
version=0.2.1
author=devkyato
maintainer=devkyato
sentence=Direct typed ONP/1 messaging between ESP32 devices and Python hosts.
Expand Down
2 changes: 1 addition & 1 deletion python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ build-backend = "hatchling.build"

[project]
name = "opennet-protocol"
version = "0.2.0"
version = "0.2.1"
description = "Dependency-free typed ONP/1 messaging for Raspberry Pi, ESP32, and backend systems"
readme = "README.md"
requires-python = ">=3.9"
Expand Down
2 changes: 1 addition & 1 deletion python/src/opennet/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,4 @@
"encode_value",
]

__version__ = "0.2.0"
__version__ = "0.2.1"
Loading