
How I use my Raspberry Pis to help me work on with my side projects - bjoko
https://www.techcoil.com/blog/how-i-use-my-raspberry-pis-to-help-me-work-on-with-my-side-projects/
======
wingerlang
It's not clear exactly how this helps him work compared to just using hosted
versions of the services.

It looks like there could potentially be a lot of maintenance to keep multiple
individual servers up and running, and this is probably multiple side project
in and of itself.

~~~
8fingerlouie
I was well on my way to having a forest of RPis. The boxes are cheap, and
"they only use 5W"... until you have 10 of them.

I replaced each and every one of them with an Intel NUC (6. gen Celeron)
running FreeBSD, and created a jail for each of the services the individual
RPIs maintained.

It uses 5-9W (Idle), which is like 80% of the time. It has real Gigabit
Ethernet, as well as a SATA SSD, and that alone is enough to provide much
higher performance (for me)

The only RPis i have left running are the individual nodes in my video/climate
surveillance.

~~~
tootie
Chick-Fil-A use a small cabinet of NUCs and deploy an arbitrary number of
services via Kubernetes to all there restaurants. It's a pretty neat setup.

[https://medium.com/@cfatechblog/bare-metal-k8s-clustering-
at...](https://medium.com/@cfatechblog/bare-metal-k8s-clustering-at-chick-fil-
a-scale-7b0607bd3541)

~~~
Already__Taken
I'm sure i've seen this as a talk too, it was pretty humble iirc they seemed
surprised how practical it turned out to be.

------
rcarmo
I have a 3B+ set up on my desk with a BitScope USB oscilloscope and the
Arduino IDE running on it for my hardware projects, a 2B in a closet running
Gitea and Docker as “build box” for my containers (it’s speedy enough when you
move the Docker storage to an external USB HDD) and another 3B to run my 3D
printer.

I’m not very keen on running ordinary services on them (my home automation
setup runs on an ODROID, with Node—RED and homebridge Docker containers, which
benefit from EMMC storage and twice the RAM as a Pi), but I’ve found the Pi to
be a great platform for small self-contained tasks that really benefit from
having a dedicated machine with a stable configuration.

Also, I’ve found them to be quite reliable from the 2B onwards (I even ran a
Swarm cluster on a set of mine for a couple of years) — I have all the setup
info for most of these on my GitHub profile at
[https://GitHub.com/rcarmo](https://GitHub.com/rcarmo)

~~~
cheunste
Random question. How is the BitScope USB o-scope?

I'm actually looking for a new O-scope (since I am loosing access to a lab)
and I'm looking for something small and compact.

~~~
rcarmo
It's not ideal for high frequencies, but as a simple logic analyser it's ok. I
have used it only for tweaking small oscillators for now.

------
ekianjo
> Undeniably, Raspberry Pi has revolutionised the way we use computing
> technology in our lives

??? Shouldn't that be "Smartphones" instead? Even if the Raspberry Pi is
popular among a certain segment of people, it is nowhere close to being as
mainstream as smartphones which have revolutionized the way we use technology.

~~~
danieldk
Also, most of my developer friends who have one booted theirs once or twice
before disappearing in the closet. We used one as a home server, but replaced
it by a NUC, since IO on the Pi is too constrained.

The Micro:Bit at least actually got a foothold in UK education.

~~~
jdietrich
The Pi is an awkward inbetweener - it's too power-hungry to substitute for a
microcontroller, but too basic to replace an x86 computer in most
applications.

To be fair, the Micro:Bit exists because of the lessons learned from the
failure of the Raspberry Pi in education. In a strange sense, it's the 2.0
version of what the Pi was supposed to be; the Pi lives on because of the
hobbyist community, but it failed fairly comprehensively at its intended
purpose.

------
2sk21
The main point of using a Raspberry Pi is for access to the GPIO pins and the
built-in camera interface. As others have said, there are better alternatives
if all you need is a server.

~~~
bbayer
Can you name the alternatives?

~~~
fimdomeio
Rent a vps, digital ocean, linode... buy a desktop computer. My mac broke
recently and while in the shop I bought a crappy new desktop for less than
200€. It's running linux and would happily run all this software. it becames
cheaper than buying lots of raspberry pi's cases and sdcards and it's easier
to mantain.

But if one's doing it for the fun of it as the original author appear to have
done, then I have no moral complains to present. :)

~~~
lunchables
Why is an old crappy desktop computer universally better than a raspberry pi?
I use two raspberry pi to run internal DNS and a couple other things small
things. They are silent, take up no space and use almost no power and are
almost certainly cheaper.

------
thinkmassive
I have been experimenting with RPi for the past few months, and when I first
got back into it I lost a couple hours diagnosing strange issues that
ultimately all led to faulty SD cards. These are decent Samsung cards that
work fine in an action camera, but the Pi was frequently dropping SSH sessions
and even disconnecting from the network intermittently.

Eventually I tried other cards with better results. Since then I started using
ATP aMLC “industrial” Flash, which has been very reliable.

~~~
DaniloDias
Were you using a WiFi adapter?

Intermittent drops often come from undervoltage. You may need a 3.5v power
adapter.

Also, slow ssh can come from dns troubles: [http://jrs-s.net/2017/07/01/slow-
ssh-logins/](http://jrs-s.net/2017/07/01/slow-ssh-logins/)

~~~
bschwindHN
> You may need a 3.5v power adapter

Do you mean a 3.5A power adapter? The Pi runs at 5v.

I have one running on a 2.0A adapter and it's been running for a few years
now. Though it uses ethernet so there's less power consumption compared to one
using WiFi.

~~~
DaniloDias
>> Do you mean a 3.5 power adapter?

Yeah- sorry. Trying to do this from memory. :)

------
yjftsjthsd-h
So basically, it's a tiny Linux server, and can run various server
stacks/webapps, and is relatively accessible to beginners.

~~~
SpaceInvader
Except is not x86 therefore less packages available.

------
roadbeats
It felt like a clickbait title after reading the content... Hosting a
phpMyAdmin? I was hoping to see some creative ideas...

~~~
klibertp
I made an Elixir app[1] that worked on RPi and read various sensors, adjusted
lighting and was driving some pumps with PWM. I was trying to grow some exotic
plants and wanted to automate as much as possible. It was a fun project, the
distributed nature of the language/OTP was really neat and when I bought the
second Pi for monitoring the inside of a case it was very easy to hook it up
with the former Pi and make it into one system.

Unfortunately, all the plants died after a while - mostly because I didn't
finish all the features I wanted to write fast enough... - and I abandoned it.
I've been considering doing a write up on it since then, but I'm not sure if
that would be interesting to anyone other than me.

I wonder, would that count as creative? Maybe I should do the writeup after
all (seeing as simply running some PHP on a few Pis got to the frontpage...)

[1]
[https://github.com/piotrklibert/planties](https://github.com/piotrklibert/planties)

~~~
pavel_lishin
I'd be very interested; I'm learning Elixir at a new job, and I've got a
Raspberry Pi that's been sitting around since two christmases ago.

------
baroffoos
With this many applications I would be looking at getting one higher powered
server and running docker on it. Would be more power efficient as you only
need one OS and one PSU as well as likely much cheaper.

~~~
earthscienceman
Why docker? Seems like overkill for not much gain.

~~~
baroffoos
Docker is not overkill at all. Having 20 servers to run a few very low
utilization is overkill. When you run a whole bunch of stuff on the same
server it becomes a lot simpler than installing them the traditional way. A
lot of self hosted server software is not in the repos so you end up having to
add extra repos and after you do that a few times I find that something always
ends up breaking and ruining the whole OS. Its much simpler to keep the host
os basically stock debian with docker installed and then if anything goes bad
its contained.

~~~
kkarakk
but then you have to learn docker and how docker does networking is the
overhead they're talking about.

------
vardump
> Setup a Raspberry Pi git server

For the love of $DEITY, please at least use an external USB disk. In RAID1, if
possible. (Perhaps some multi-RPI git mirroring scheme could work as well?
Anyone ever done something like that?)

Do not EVER trust your valuable data on SD-cards on a Raspberry Pi!

~~~
rcarmo
The 2B and newer boards are much more reliable, especially when running Ubuntu
ARM.

~~~
vardump
I think it often depends on the power supply quality. I think many of the
cards were corrupted due to bad power.

Regardless, 3 bits per cell TLC SD cards (or QLC, 4 bits per cell, ugh) are
not made for repeated writes, like git or database workloads. They will get
corrupted even in the best conditions.

You could use industrial SD-cards, but I think it's easier just to plug in a
USB drive.

------
bschwindHN
At first a I used a Raspberry Pi as an infrared sending device so I could
control my air conditioner and lights remotely. Now I've built that
functionality into its own PCB, but as I'm developing that product I need an
MQTT broker to connect to. So the Pi now functions as a local MQTT broker
until I have a hosted one I'm satisfied with.

Next thing I want to do with it is run a little web app that displays local
train and bus times, garbage collection days, weather forecasts, and that sort
of thing. They're great for prototyping hardware ideas and running various
one-off web services locally!

------
dragonshed
I prefer to think of and use my RPis as home network appliances, things that
can run hassle-free.

Examples from my house are: Pihole - Adblock for all wifi devices

Shairport - audio airplay target

Plex - media server

My family members and I simply use these services without even
knowing/remembering they're hosted on a RPis. If it requires tinkering or
isn't permanent, it goes on a VPS.

Many of the examples listed in the post are things that I would simply host on
docker, a VPS or in a VM.

------
monkeydust
I have 3 RPi,s at home.

I have Pi2 that acts as a dashboard for real time data on my train to work, my
wife's bus route, weather temp and rain probability. I am using sensehat to
present this information through pixels.

I have a Pi3 running home automation (hass.io) which I am new to and find
amazing in most part.

And final one in my daughters room which is a Pi0 with Envirophat that's
monitoring temperature.

All side project and I am not a developer.

~~~
SpaceInvader
What dashboard software you're using?

~~~
monkeydust
I designed my own. You can read about it here.

[https://goo.gl/Zmdoit](https://goo.gl/Zmdoit)

It has become integral part of our daily routine.

------
karolist
I'm running a completely silent mini ITX J1900 build for a long time now, it
has an x86 arch and 4 core CPU with Intel VT-x support where you can run as
many KVM instances as your RAM allows for, don't really see how a dozen
Raspberry PIs could be better but to each his own. I always recommend silent
SOC x86 builds for home dev use instead of RPi

~~~
lunchables
Your requirements aren't necessarily the same as everyone else. For people who
want something silent and inexpensive to run a few containers, rpi can be hard
to beat. Extremely cheap, extremely low power and take up very little physical
space.

------
twtw
I always used to use various dusty old netbooks for this kind of stuff, and
would run many applications on the same one.

A dedicated raspberry pi in a nice little case for each is certainly modern
and cool, but it doesn't give me quite the same nostalgia as a ancient laptop
shoved in a corner...

------
Walkman
The article has 9 subchapters. It could have 2 or 3 by saying "Install
GitLab", but maybe GitLab can't run on a Raspberry? If you are not restricted
to a Pi however, try GitLab and you are done with all the steps described in
this article.

------
squarefoot
It should be noted that most single board computers out there can be used to
do the same things; a lot of them are more convenient than the Raspberries.

------
nzjrs
This is content spam, correct?

~~~
anonytrary
He seems to be using a content spam technique. He's effectively pointing to a
verbose table of contents for his blog, with a slew of shameless plugs of
tangential affiliate links.

------
KaiserPro
so one of the things not really covered here is how to deal with SD card
failure.

Any application that requires any level of writing to disk will almost
certainly die in short order.

I have a boatload of Pis, doing a bunch of things, and one of the annoying
things is having cards die on me. Everything is in ansible, so its not that
much effort to rebuild.

However having any important data living on a pi's SD card is a nono

~~~
mellow-lake-day
> so one of the things not really covered here is how to deal with SD card
> failure.

I recommend a program like win32diskimager
([https://sourceforge.net/projects/win32diskimager/](https://sourceforge.net/projects/win32diskimager/))
so you can make images of your SD cards in their working state and if they get
corrupted quickly get them back to working order.

> However having any important data living on a pi's SD card is a nono

That is why I wrote a script using the Fabric Python module to log in to my
rpi3 and download important files. Ideally the script would run automatically
every day but I haven't quite gotten there yet.

------
patrickdavey
I have always been quite paranoid about port forwarding anything into my home
network.

~~~
YaxelPerez
I've found ngrok [1] useful for hosting stuff without opening ports. The only
problem is you need to pay to get a fixed domain name.

1\. [https://ngrok.com/](https://ngrok.com/)

~~~
patrickdavey
Ah very good. Yip, I've used ngrok before, and it's a beautiful piece of
software.. nice!

I do control my pi through telegram (polls a bot), which works nicely for the
things I do want to control.

I think for me, I'll just stick with my little linode VPS for hosting side
projects :). But, I like the idea of ngrok!

