Close

Local MQTT broker

A project log for mqopen

Open-source IoT platform

ivo-slaninaIvo Slanina 09/09/2015 at 09:440 Comments

Yesterday, I finally compiled operating system for my local MQTT broker which boots up with no errors. Broker is based on Raspberry Pi B and I had to build whole system by buildroot.

Reason for that is that I need more recent of software than Raspbian (Debian Wheezy) can offer. Rasbian don't use systemd and has quite old mosquitto version, which doesn't support bridging.

Building system by myself gives me lot of possibilities about used software versions and some other optimizations. Such as compiler setup.

System has features such as pure read-only filesystem, use of DTB and systemd init.

This is my rootfs overlay structure:

etc/
├── dropbear
│   └── dropbear_rsa_host_key
├── fstab
├── hosts
├── mosquitto
│   └── mosquitto.conf
├── network
│   └── interfaces
├── openvpn
│   ├── ca_certificates
│   │   ├── ca.crt
│   │   └── dh.pem
│   ├── certs
│   │   ├── rpi-cr.crt
│   │   └── rpi-cr.key
│   └── client
│       └── buben-vps.conf
├── resolv.conf
├── systemd
│   ├── journald.conf
│   └── system
│       ├── dropbear.service
│       ├── mosquitto.service
│       ├── multi-user.target.wants
│       │   ├── mosquitto.service -> ../mosquitto.service
│       │   └── openvpn-client@buben-vps.service -> ../openvpn-client@buben-vps.service
│       ├── openvpn-client@buben-vps.service -> openvpn-client@.service
│       ├── openvpn-client@.service
│       └── systemd-random-seed.service -> /dev/null
└── tmpfiles.d
    ├── etc.conf
    ├── home.conf
    ├── network.conf
    ├── systemd.conf
    ├── systemd-nspawn.conf
    └── var.conf
I will post build instructions and git repository soon.

Discussions