As a result I don't have enough space to install python3-light and I am forced to use the lua interpreter already on the system. Is there an easy way to fix this remotely? If after this the device doesn't come back online I'm in big trouble, so I am hesitant.
I have the following packages installed:
lua-mosquitto
libmosquitto-ssl
mosquitto-client-ssl
On the Lua interpreter I run: local mosquitto = require("mosquitto") successfully but then the variable mosquitto says it's null, so it seems I can't actually do anything.
Could someone suggest what might be the issue? How else do I verify if an import was successful?
It appears you are using firmware that is not from the official OpenWrt project.
When using forks/offshoots/vendor-specific builds that are "based on OpenWrt", there may be many differences compared to the official versions (hosted by OpenWrt.org). Some of these customizations may fundamentally change the way that OpenWrt works. You might need help from people with specific/specialized knowledge about the firmware you are using, so it is possible that advice you get here may not be useful.
Ask for help from the maintainer(s) or user community of the specific firmware that you are using.
Provide the source code for the firmware so that users on this forum can understand how your firmware works (OpenWrt forum users are volunteers, so somebody might look at the code if they have time and are interested in your issue).
If you believe that this specific issue is common to generic/official OpenWrt and/or the maintainers of your build have indicated as such, please feel free to clarify.
Your device has 16MB flash memory... of that, more than half is consumed by the firmware. The rest is available for installing packages and the like. This storage is not intended for frequent writes -- it will fail if you are constantly writing data (i.e. logs/health data, etc.) to it.
There is a128MB RAM on your board, half of which is used for tmpfs, that's why you see ~60MB in tmpfs. This is not persistent storage, so you can't keep anything there that needs to survive a reboot. But this is fine for temporary data and logs.
Since this unit doesn't have a USB port, there is no opportunity to use external storage. But you can send data to an external server (for example, a syslog server) if you have one availabe.
And as far as "fixing" stuff -- there's nothing to fix, except maybe installing official OpenWrt (I would recommend doing that in person or having some 'boots on the ground' who can help... especially important because it will need to be reconfigured from scratch if you migrate from the GL-inet firmware to official OpenWrt.
As long as you're using GL-inet's firmware, you'll need to ask on their support channels for help, though.
Thanks Peter. I can understand why OpenWrt forum contributors might take this position. It's hard to diagnose something that could differ in arbitrary and unknown ways. And the insights are not likely to help others.
I've decided to pursue a more standard approach and use Ash + mosquitto_pub to do all my MQTT emission.
The compute and memory on this device are really limiting. My R7800 is a supercomputer computer to this.