Damn, can’t wait to have some free time to actually do a project involving all of this.
It would be great to find a more affordable alternative to RPI, as I don’t really want to spend 100$ just for the device.
Damn, can’t wait to have some free time to actually do a project involving all of this.
It would be great to find a more affordable alternative to RPI, as I don’t really want to spend 100$ just for the device.
RPi4 is listed as $60-70 for me at 4Gb. If you add extra stuff you’ll hit $100 in no time. I run most of my stuff caseless as they are prototyp things for me. But also I have no impulse control and an expense account.
RPi Zero W is about $15 or RPi3A+ is $35 and either will run off of a decent quality micro-USB cable so no peripherals needed.
I need to keep my spares for the Berlin workshop right now but if you can’t swing the $15 for a Pi Zero, let me know in November and I’ll mail you one
The problem I am facing is lack of availability of RPIs in Moldova, there are few resellers and they are goddamn expensive and lack variety, for example a RPI4 costs in the range 100$-200$, if you are lucky to find them in stock that is.
If it were for prototyping then that would be OK to spend that much once, but I actually have a few projects I want to deploy them on-site, so the budget for a simple project is insane.
I would also be OK to spend a few hundreds and buy a batch of them and pay for shipping once, but I think this is not possible due their policy of selling only 1 device for non-business customers.
That’s a distraction from the real problem which is that RPis have historically been really bad with disk I/O bandwidth and sustained speeds (overheating + throttling storage devices to the stone age). Other people who dealt with it wrote about it extensively and I’ve spotted no less than 7 HN stories about it in the last 2 years.
At this point and if I needed an RPi-like device I’d either get OrangePi / BananaPi or would just blow about $130 on a proper x64 mini PC from AliExpress (we’re talking something like 10cm x 10cm x 6cm). For this price you get a Celeron, 8GB RAM, 250GB NVMe SSD, and two Ethernet interfaces – and some have the GPIO headers that the RPi has, too. Most of them have one more I/O slot as well and I’ve seen photos of setups of people buying NVMe M.2 adapters to 6x USB 3.0 USB hub, for example, or to various 4G / 5G modems, and many others.
A mini pc is better in 95% of cases, however to deploy them on-site you need a small device that you cram in a box. Usually you can get away with more powerful MCUs such as an ESP32, however in this case I have the need to expose a web app from the device and the computing power provided by ESP32 will not cut it.
Single board computers are pretty much all expensive (a orange pi will set me back at least 50$+ too), the only thing RPI has going it’s the actual nerves support, I know I can deploy that thing and forget about it.
Ah, that’s a very different thing indeed, agreed – for that you’d need some of the industrial grade (& often fanless) rugged mini PCs but they get expensive really fast. There we’re talking something like $400+ for an Intel i5 + 16GB RAM + 250GB NVMe SSD + 2 free I/O slots + several video outputs + RS / COM slots, if memory serves.
I’m as keen to discuss boards as anyone. But this is the announcement for a new release of NervesHub and I’d rather not it be entirely about whether the Raspberry Pi is worthwhile or not. Especially since Nerves is in no way limited to the RPi boards
If the thread gets split off I’m happy to argue why the OrangePi, Banana Pi and Mini-PCs are not great replacements for the Raspberry Pi.
Excited to hear more!
So the Pi is pretty reasonably priced in most places now that the shortages are generally over. I can’t speak to Moldavia specifically.
The newer Pis are more expensive but also more capable. I think the RPi 4 hits a sweet spot for mild home server use and it has good grunt for driving displays (2x 4K). If you need less and want to pay less the RPi3 is still useful.
I am unconvincwd about the RPi5. Though it adds much wanted stuff, RTC, power button, PCIe options. I would love that stuff as a revision on the RPi4
RPi Zero is kind of amazing in that you can do linux application level development on a device that you can reasonably afford multiple of. There are many MicroControllers (ESP32) etc that are “better value” but you can’t build things quite as easily because they won’t run Linux.
Most x86 machines can’t match RPi devices in power draw. N100 is decent I hear.
I don’t think Pis trash SD cards more than others. SD cards just get trashed, that is an SD card problem. The pis problem is that it relies on those cards. Now Nerves makes all the important parts read-only so if you either add a disk or write reasonably you should do okay.
Using RPi for homelab/servers and using them for IoT are fairly different. IoT devices usually serve few and specific purposes and can be put together with care for the constraints. If you shove a herd of containers on a Pi4 anything can happen.
RPi are decent for several IoT uses but really mostly suited for driving displays and low-security needs. They are good for prototyping because of the massive ecosystem.
This is where Orange, Banana and other Pi are much more shaky. The RockChip parts are beefy but usually poorly supported. I think Geerling documented his journey with Pi clones. I have heard mixed but good things about LattePanda devices in terms of bang for buck.
And again. Are you maintaining a IoT/hobby/prototype device on this or using it as a small server. All you need for a server is that they upstreamed the basic drivers. You probably don’t care about much of the features on the board.
And for small form factor PCs, such as the now-dead NUC line. Those are not a fit for sensors and such but make sense for a home server.
So what are we talking. Building a device or hosting Plex? RPi can do the first until you get bored and decide to do the second. It is no the best choice for either
Wish granted? Careful what you wish for
I am exclusively interested in IOT projects, I already have a beefy full-size homelab server and I wouldn’t exchange a orchestration system that operates on VMs (such as xcp-ng) with something more lightweight to accomodate RPI’s lack of processing power, not to mention the reliability/scalability factor I have going with a real server.
Does it make sense talking about servers in context of Nerves? Nerves seems to be fully IOT oriented, unless I am not fully aware of the functionality?
I am very tempted to see how well nerves would behave serving a liveview app + periodic automation tasks, if that would work without the device crashing then I would consider this device to be extremely good for small IOT projects I have in plan. The idea is to have a internet facing web app that has some auth and interacts with my custom electronics.
I touched on servers because I felt that Mini PCs are approaching that. And most of the Pi SD card issues I hear of are home server type stuff and heavy disk logging. Nerves barely touches disk during normal operation. Unless you need it to for persistence.
LiveView plus Nerves is not very hard:
Most stuff I’ve done with Nerves has stayed up untik I tear it down and use it for something else. Try it.
Nice, I will definitely give it a try once I get some hardware.
By looking at config, the server runs only in http mode, have you tried running it in https with a proper domain name?
The rhetorical smartass response would be “does that work with Phoenix?”
It is also fairly common for Phoenix projects to ship only http and live behind a load balancer or similar that terminates TLS.
It is not configured with HTTPS since you would typically have your first Nerves device inside your network not out on the internet. Personally I access my network with Tailscale which blurs that line and also lets me expose any particular part via tailscale funnel if I want it on the internet.
You need a publicly routable stable (ideally static) IP address and then to get a cert the regular way. I like the Elixir site_encrypt library for that as it can do the LetsEncrypt dance from Elixir.
Those parts are the exact same as for any Phoenix app.
If you move more into the consumer product space you can also commonly see devices serve http with maybe the option to upload a cert for https. Like your of the shelf nas or your printer, ….
All SD cards are trash, from the point of view as being the main storage device. The problem is not the interface which is fast enough, but the economics of sourcing flash chips for their mainstream use. Can some PI boot from eMMC? or better yet, are there PIs on the horizon that will have UFS?
Makes complete sense for software deployed on servers, but for hardware I think it is ideal if it is self-contained and doesn’t have a hard dependency on external services, AKA becoming a piece of worthless equipment without the prerequisites. I would be completely OK to sacrifice a little bit of security (for example using a self-signed certificate).
A VPN might not be a bad idea, I have used cloudflare tunnel but once again the prerequisite is that you have their service running somewhere in your local network, which defeats the idea of not having additional servers running on-premise.
I think the point here is that nothing prevents you from using site_encrypt or a self signed cert or plain http. Nerves is just a means of running your software to an (embedded) device. You’re in charge of providing the software and what it does.
Raspberry Pi Compute Module 4 does. That is the option intended for industry use. Not sure about older CMs.
Sure. Then you can only use self-signed certs. HTTPS requires a domain which requires a registrar.
Or change the CA list on all your devices to trust your CA and then you can have local HTTPS to your heart’s content. I would not bother typically.