AminetAminet
Search:
85542 packages online
About
Recent
Browse
Search
Upload
Setup
Services

comm/net/midge.lha

Mirror:Random
Showing: i386-amithlon icongeneric icon
No screenshot available
Short:MQTT 3.1.1 client for classic AmigaOS
Author: simond at irrelevant.org (Simon Dick)
Uploader:simond irrelevant org (Simon Dick)
Type:comm/net
Version:0.2
Architecture:m68k-amigaos >= 3.1
Date:2026-08-30
Requires:68020
Download:comm/net/midge.lha - View contents
Readme:comm/net/midge.readme
Downloads:51

midge is a native MQTT 3.1.1 client for classic AmigaOS, aimed at putting
your Amiga on a modern smart-home network (Home Assistant, Mosquitto, EMQX)
- as a display and control surface, and as a publisher of its own telemetry.

This release ships:

  mqtt_pub      - publish a message to a broker topic (needs mqtt.library,
                   below, copied to LIBS: first)
  mqtt_sub      - subscribe to topic filters and print incoming messages
                   (needs mqtt.library, below, copied to LIBS: first)
  mqtt_pub-static - the same mqtt_pub, statically linked: no mqtt.library
                     install needed, but QoS 0 publish only
  mqtt_sub-static - the same mqtt_sub, statically linked: no mqtt.library
                     install needed
  libs/mqtt.library - a shared library exposing the same MQTT client to
                       other AmigaOS programs (copy to LIBS: to install -
                       required by mqtt_pub/mqtt_sub above)
  developer/    - mqtt.library's .sfd/.fd/proto/inline/clib headers,
                   its mqtt.doc autodoc, and two example caller programs
                   (pubexample.c/subexample.c) for third-party developers

mqtt_pub/mqtt_sub and their -static counterparts all follow the same
AmigaDOS conventions (ReadArgs templates, Ctrl-C to stop) and speak plain
MQTT 3.1.1 over TCP. mqtt_pub/mqtt_sub are backed by mqtt.library and
support QoS 0 and QoS 1 publish, plus TLS via AmiSSL (TLS/TLSINSECURE -
needs AmiSSL installed separately, see Requirements below);
mqtt_pub-static/mqtt_sub-static talk to bsdsocket.library directly with no
library install required, but mqtt_pub-static only supports QoS 0 publish
and neither -static tool supports TLS. mqtt.library itself also exposes an
optional auto-reconnect mode to programs written against it directly. See
https://sidick.github.io/midge/mqtt-library/ for the full mqtt.library
guide.

Planned for future releases: a ReAction dashboard application with Home
Assistant MQTT discovery.

Requirements
------------
  - AmigaOS 3.1+ (3.2 is the reference platform), 68020 or better.
  - A TCP/IP stack providing bsdsocket.library (Roadshow, AmiTCP, Miami,
    or an emulator-provided stack).
  - For TLS (mqtt_pub/mqtt_sub's TLS/TLSINSECURE switches): AmiSSL 5.x
    (https://github.com/jens-maus/amissl), installed separately - not
    bundled with this archive. Software TLS is CPU-intensive; a genuinely
    stock, unaccelerated 68020 may see intermittent failures under it -
    see https://sidick.github.io/midge/CLI-Reference/ for details.

Quick start
-----------
  mqtt_sub HOST 192.168.1.10 TOPIC home/#
  mqtt_pub HOST 192.168.1.10 TOPIC home/amiga/hello MESSAGE "hello from midge"

AI disclosure
-------------
  midge is written largely by an AI coding agent (Anthropic's Claude /
  Claude Code), under human direction, review and on-hardware testing.
  The protocol codec is verified against MQTT 3.1.1 specification vectors
  and tested against real brokers; full source is open (BSD) for review.

Documentation, source and licence
---------------------------------
  Free and open source, BSD 2-Clause. Full documentation (versioned per
  release, and included as midge.guide in this archive), source and issue
  tracker:
      https://sidick.github.io/midge/
      https://github.com/sidick/midge


Contents of comm/net/midge.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/
-rw-r--r--     0/0         686    1299  52.8% -lh5- c79c Aug 30 13:55 midge/LICENSE
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/clib/
-rw-r--r--     0/0         467     974  47.9% -lh5- dca6 Aug 30 13:55 midge/developer/clib/mqtt_protos.h
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/examples/
-rw-r--r--     0/0        2107    4931  42.7% -lh5- 1157 Aug 30 13:55 midge/developer/examples/pubexample.c
-rw-r--r--     0/0        2114    4919  43.0% -lh5- 9b70 Aug 30 13:55 midge/developer/examples/subexample.c
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/fd/
-rw-r--r--     0/0         238     419  56.8% -lh5- 80fd Aug 30 13:55 midge/developer/fd/mqtt_lib.fd
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/inline/
-rw-r--r--     0/0         601    1868  32.2% -lh5- 1119 Aug 30 13:55 midge/developer/inline/mqtt.h
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/libraries/
-rw-r--r--     0/0        3904   11412  34.2% -lh5- aaef Aug 30 13:55 midge/developer/libraries/mqtt.h
-rw-r--r--     0/0        7408   23237  31.9% -lh5- 50d8 Aug 30 13:55 midge/developer/mqtt.doc
-rw-r--r--     0/0         322     720  44.7% -lh5- 2cae Aug 30 13:55 midge/developer/mqtt_lib.sfd
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/developer/proto/
-rw-r--r--     0/0         428    1109  38.6% -lh5- b754 Aug 30 13:55 midge/developer/proto/mqtt.h
drwxr-xr-x     0/0           0       0 ****** -lhd- 0000 Aug 30 13:55 midge/libs/
-rwxr-xr-x     0/0        8002   15584  51.3% -lh5- 3142 Aug 30 13:55 midge/libs/mqtt.library
-rw-r--r--     0/0       14500   43036  33.7% -lh5- 5bdb Aug 30 13:55 midge/midge.guide
-rw-r--r--     0/0        1610    3572  45.1% -lh5- a55d Aug 30 13:55 midge/midge.readme
-rwxr-xr-x     0/0        9038   16096  56.2% -lh5- 1010 Aug 30 13:55 midge/mqtt_pub
-rwxr-xr-x     0/0       13424   24724  54.3% -lh5- 94c3 Aug 30 13:55 midge/mqtt_pub-static
-rwxr-xr-x     0/0        7889   13984  56.4% -lh5- 5229 Aug 30 13:55 midge/mqtt_sub
-rwxr-xr-x     0/0       13427   24720  54.3% -lh5- eae9 Aug 30 13:55 midge/mqtt_sub-static
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        26 files   86165  192604  44.7%            Aug 30 21:50
Page generated in 0.02 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>