Mosquitto MQTT broker on Opal GL-SFT1200 not working

Wanted to install Mosquitto MQTT broker on an Opal GL-SFT1200 but cant get it to work. Following issues:

If you search for mosquitto-ssl in the packages, it just shows up version 1.5-3. On a device like Brume II or Flint it shows version 2.0.15-1. If I install the mosquitto-ssl package 1.5-3 and want to run it I get an error in console “illegal instruction”. Not sure fromw hat that is coming, maybe the mosquitto 1.5 package was not properly build for the right CPU architecture of the Opal?

Someone wrote here: Unable to start mosquitto on raspberry pi buster - Stack Overflow

"I have reproduced this, you installed from the mosquitto ppa which provides both mosquitto and a newer copy of libwebsocket.

The SIGILL is coming from the libwebsocket library that appears to have been built targeting ARMv7 not ARMv6 (which is what the Pi Zero [W]) is using.

I have raised this with the mosquitto maintainer, with any luck it will fixed soon and upgrading will fix the problem."

image

Installing the libwebsocket full package doesnt fix it.

I noticed the package libmosquitto-ssl is preinstalled on the Opal for whatever reason but as version 2.0.17-1. where no same version of mosquitto-ssl is available for the Opal. My theory is there is a mismatch and mosquitto-ssl 1.5 cant run with libmosquitto-ssl 2.0.

image

Installing both lib versions doesnt work it seems.

On Flint it has the proper version of run time and also library:

How to fix this? Also why is the libmosquitto-ssl preinstalled? It seems the version matching executable files need to be added to the Opal opkg list, and theyre missing.

Is there another MQTT broker for Openwrt which is working on Opal?

IIRC the Opal is still on OWRT 18.0x. The GL optimizations are built for that model atop the closed source Siflower SDK. I’m not optimistic it’ll ever see a new OWRT build. Only the Flint v2 uses mainline OWRT 23.05 ATM & there’s still one or two caveats there (eg: iptables still in use v mainline’s nft).

To further compound thinngs, & again IIRC, mainline OWRT has moved fr glibc to musl.

cat /etc/openwrt_release

I have tested to install and run mosquitto-ssl on Flint and Brume II and there it works fine with the 2.x version which can be installed. The 1.5 version seems to be broken on Opal, mostly because of library not properly compiled against proper CPU architecture?

You’re probably right. The stock feeds in these devices pull fr GL repos, not OWRT, so anything that was broken at that snapshot would have carried over. I don’t think even switching feeds to direct OWRT will do it; IIRC OWRT doesn’t backport.

You’re demonstrating you’re not exactly a typical soho user. If you’re still in a return period window I’d see about exchanging the Opal for a Slate Plus. At least you’ll have a far better chance at mainline OWRT. It’s just not going to be worth the aggravation in the long run given your goals. Highly related:

1 Like

The latest available libmosquitto-ssl for the Opal is 1.5.9-2
https://openwrt.org/packages/pkgdata_owrt18_6/mosquitto-ssl
https://openwrt.org/packages/pkgdata_owrt18_6/libmosquitto-ssl

Both packages are available if you add the Openwrt Repo, although it would be better if GL.iNet made both packages available.