we're currently in the process of starting to build a set of distributed solar plants which should be stably connected to our monitoring solution and to the provider who connects them to the energy stock market.
Depending on the location we might need an LTE connection or just a VPN Gateway if an Internet connection is already provided. So I'm looking for both, if possible from the same manufacturer. I think the monthly data volume will be 2GB or less per location.
My Idea is to use OpenWISP to manage those devices. This year we'll probably only have 2-4 smaller installations, but it might grow to a few dozen over the next few years.
I think the perfect device would have:
Manufacturer located in the EU (Maybe I'm paranoid? Is this important?)
Good or at least existing support
OpenWRT preinstalled (I've been informed that apart from the OpenWRT one no such device exists, so ig I should say OpenWRT is easily installable.)
Is "rugged" (needs to withstand unheated, uncooled and maybe dusty environments)
During my search I only found Mikrotik and Teltonika.
With Mikrotik devices not being able to be flashed anymore?
And Teltonikas OS being based on OpenWRT but maybe not compatible with OpenWISP?
Am I going about this the right way or should I just stick with a proprietary solution from some trusted brand? If so which could you recommend?
Would Teltonikas remote management be a good solution?
As we are writing and hosting our monitoring software ourselves I'd like to stick with the selfhosted open source approach but I can't really judge if that is the way to go for us in this case.
Ok I guess then maybe i should rephrase to easily installed.
That one is i think already to overpowered. WiFi is not needed, just one or two 100 Mbit Ethernet Ports. (In case of the VPN Gateway without LTE at least two.)
LTE and OpenWrt in the same box really limits your choices. I'd look at this as a two box system especially since in locations with a wired ISP you could then simply omit the LTE modem box. Treat the LTE modem as a commodity item running its closed firmware-- you don't need to trust it since it will be outside your firewall like the rest of the Internet and you're running VPN through it. The Mikrotik LTE products are sound, especially for use in the EU since most of them seem to be built for those bands.
Teltonika provides the source code of their routers as a tarball which they call SDK and allows compiling the same base firmware they use and add extra packages (eg: OpenWISP).
It is a bit of a headache to keep up with their releases.. I do this for a project and is quite time consuming. Reflashing the whole thing with the standard OpenWrt is probably more maintainable IMHO.
For industrial usage Teltonika is good IMHO, but chinese vendors will probably be cheaper (at the cost of quality and duration).
Sorry, I must object to this statement. I have done complete
system, org openwrt+lot of custom app stuff(nginx, modbus/rtu, mwan3 (wan,wwan,wifiwan), fw-update OTA, remote config, wireguard ...) for Teltonikas RUT955, and also looked into their SDK. They provided only the sources used from official openwrt, but NOT for a lot of their custom additions, i.e. for modem management. With other words, it was NOT possible to build their factory supplied system from source. Thus, I did something similar from official openwrt only, instead. Although, in case, only minor customized stuff required, it for shure can be done on org Teltonika. However, as I had to do lot of custom LUA code, for ModBus/RTU, DB install for data queueing, remote configuration, AWS-IoT comms (mqtt) etc., we chose org openwrt instead. My client also had complaints about the reliability of Teltonikas remote access to the RUTs, which I had to implement from scratch, using wireguard.
Regarding rugged openwrt device: I just started working with the HC540-H from Huastlink, incl. LTE-modem from Quectel, EC25-E, which looks suitable for a new project, a LTE-based outdoor hotspot on a hippie island in Cambodia. The device in fact is a ZBT WE826 in IP65 enclosure, using PoE. Definitely it will NOT run openWISP, which I consider too heavy. Might be my biased opinion, because I did a lot of different wifi hotspot systems using coova-chilli, usually. This HC540-H+modem should also be suitable for the threads opener.
They provide the source as you can see there.
I was able to build their firmware and add extra packages, as well as remove some packages that were not needed. The problem is to keep up with them.
Now I am not sure if you were using another model.
If OpenWISP is heavy, I am not sure how to describe Coova-chilli
Then you were smarter than me, getting the all the sources. When asking (I wanted to have a look at modem management), I only got some type of SDK, similar to imagebuilder. Looks like times have changed. I need to make a note on this fact.
Code for coova-chilli is very lightweight, compared to openWISP. I used coova on older openwrt+4/32MB devices. But you need to master the black magic to configure coova-chilli properly. That's another story
Code for coova-chilli is very lightweight, compared to openWISP. I used coova on older openwrt+4/32MB devices. But you need to master the black magic to configure coova-chilli properly. That's another story
It's the terms of the GPL license. They're based in the EU, if they don't comply they're subject to lawsuits.
As far as I remember, other vendors in most western countries do the same, they're just less clear and write it so small on their website which is super hard to find.
The chinese vendors are another story.
To verify your statement, I just tried (again) to use Teltonikas SDK to build an image for my RUT955. Truckload of error messages:
WARNING: Makefile 'package/feeds/packages/acsccid/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/addrwatch/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/ccid/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/crun/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/dtndht/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/fontconfig/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/gcc/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/ibrcommon/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/ibrdtn/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/jool/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/knxd/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/libp11/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/libv4l/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/linknx/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/linknx/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/monit/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/opensc/Makefile' has a build dependency on 'libtool', which does not exist
WARNING: Makefile 'package/feeds/packages/openvswitch/Makefile' has a build dependency on 'python-six/host', which does not exist
WARNING: Makefile 'package/feeds/packages/ovn/Makefile' has a build dependency on 'python-six/host', which does not exist
WARNING: Makefile 'package/feeds/packages/perl-xml-parser/Makefile' has a build dependency on 'expat/host', which does not exist
WARNING: Makefile 'package/feeds/packages/readsb/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/rng-tools/Makefile' has a build dependency on 'argp-standalone', which does not exist
WARNING: Makefile 'package/feeds/packages/semodule-utils/Makefile' has a build dependency on 'libsemanage/host', which does not exist
WARNING: Makefile 'package/feeds/packages/telldus-core/Makefile' has a build dependency on 'argp-standalone', which does not exist