258 lines
22 KiB
Plaintext
258 lines
22 KiB
Plaintext
|
|
Episode: 2236
|
||
|
|
Title: HPR2236: Hoarding Raspberry Pis
|
||
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr2236/hpr2236.mp3
|
||
|
|
Transcribed: 2025-10-18 16:20:15
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
This is an HPR episode 2,236 entitled Hording Raspberry Pis.
|
||
|
|
It is hosted by me and in about 25 minutes long, and carry my clean flag.
|
||
|
|
The summary is, in this episode, I discuss my growing obsession with building a Raspberry Pi
|
||
|
|
Data Center.
|
||
|
|
This episode of HPR is brought to you by an honesthost.com, get 15% discount on all shared
|
||
|
|
hosting with the offer code, HPR15, that's HPR15.
|
||
|
|
Better web hosting that's honest and fair at an honesthost.com.
|
||
|
|
Hello hacker public radio fans, this is Be Easy once again.
|
||
|
|
Coming in just to give a quick update.
|
||
|
|
So I am a Raspberry Pi person.
|
||
|
|
I now have four.
|
||
|
|
I started out with my first one was the Raspberry Pi B Plus, Raspberry Pi 2, then a Raspberry
|
||
|
|
Pi 3, and then most recently I just got another Raspberry Pi 3.
|
||
|
|
The cool thing is that they're all about the same shape, and they fit the same types
|
||
|
|
of boxes and cases.
|
||
|
|
When I first started I thought I was going to go and try to be a maker, and so just a
|
||
|
|
little quick update for anyone who's been living in a hole, or it just is not that familiar.
|
||
|
|
A Raspberry Pi is a single board computer that has, it's our base processor, and they've
|
||
|
|
obviously got better over time, and they have different form factors.
|
||
|
|
So there's an A form factor, there's a B form factor, and more recently there's a
|
||
|
|
zero form factor, and they can be used for, like I said, they're cheap, so the price
|
||
|
|
is the thing that is really great about them, $35 for the B, and they go down from there
|
||
|
|
all the way down to $5 for the zero, and they have different functionality depending on
|
||
|
|
which model, which generation you have, but they basically are an ARM computer that's
|
||
|
|
connected with internet, whether the internet be through just through Ethernet for some of
|
||
|
|
the models, or Wi-Fi or Ethernet for some of the other models, and also Bluetooth for
|
||
|
|
most recent model, and so, and they also have a set of GPIO pins, which are general purpose
|
||
|
|
input and output interfaces, and so what you can do, and what a lot of people will do,
|
||
|
|
and what their main goal was of the Raspberry Pi project was to be able to get these into
|
||
|
|
the hands of kids, and young people, and computer learners all over the world, for in a way
|
||
|
|
that's inexpensive, to teach them about robotics, electronics, and general computing.
|
||
|
|
And so I'm like, yeah, you know what, these are great. I'm going to get one, so I got the
|
||
|
|
Raspberry Pi B plus, and I saw some cool projects that people had posted online, one of the
|
||
|
|
cool things about Raspberry Pi as opposed to some of the other Singapore computers, which
|
||
|
|
you might have better specs, like the O-Joy series, or the Orange Pi, Banana Pi devices,
|
||
|
|
is the community around Raspberry Pi project, and so there's always people posting about
|
||
|
|
what they did with them, and there's all types of forms that you can go to and look at how
|
||
|
|
other people have used their Raspberry Pi. So I'm like, you know what, I'm going to do this
|
||
|
|
too. So I've also one wire thermal meters, and a breadboard, a reusable breadboard, and I'm
|
||
|
|
like, yeah, I want to be a maker. I'm going to get this going. I'm going to learn about how to
|
||
|
|
do this stuff. And so I went through the process of, you know, doing my first, because I really
|
||
|
|
want to do temperature sensing. And so I'm like, all right, I'm going to plug these in, I want
|
||
|
|
to hook this up to the GPO pins. It's going to be great. And I bought all the stuff, and I
|
||
|
|
connected, I tried to connect the breadboard and the, the one wire cables, and I'm like, oh, I
|
||
|
|
don't have resistors, because to make temperature sensing work, I thought there would be resistors
|
||
|
|
inside the temperature sensing module, but there's not. You need sensors to hook up to the,
|
||
|
|
I mean, you need resistors to put on the breadboard to make it work. So I'm like, oh, I need
|
||
|
|
to get resistors. And so then I bought some resistors, and I'm like, oh, and I just never
|
||
|
|
have gotten back to it. That was three years ago now. And I've never gone back to actually
|
||
|
|
trying to hook it up with the resistors. I still have all the pieces, and they're still
|
||
|
|
sitting in a drawer ready to be used. And I, every once in a while, look at it and get these
|
||
|
|
ambitious thoughts on my head. And they always whistle out, because I'm not a maker. I wish
|
||
|
|
it was. I wish I get into it. I'm just like, you know what? I have a thermometer. Okay?
|
||
|
|
I'm like, do I want to learn how to use this stuff? Yes, I do. But I, I, one, I just don't
|
||
|
|
want to have a Raspberry Pi on my desk. That's how a lot of these people do it. They have the
|
||
|
|
device on their desk, and they're, and they're fiddling with it. Like, and that's, I just don't,
|
||
|
|
I, my desk is my work area. I work from home, and I don't have time or space to be messed
|
||
|
|
around with that in that area. And so what I did instead with that device, my first device
|
||
|
|
was, I turned it into a little device where I would run, like, just a couple of automated
|
||
|
|
tasks. The first one being running a speed test. So there is, so one quick thing before I
|
||
|
|
go too far, the original version of the Raspberry Pi came with an operating system called
|
||
|
|
Razbian, which is a slightly modified version of Debian for the Raspberry Pi. And although
|
||
|
|
it has some security issues, or it's just not, you know, it's not meant to be out on the
|
||
|
|
open internet because it's the way it's set up. It works pretty well. And if you're familiar
|
||
|
|
with Debian, which I am, I use Ubuntu full-time for all my work and all my home stuff, then
|
||
|
|
you know, it works for you. So by the way, you know, I don't need this thing. So I don't
|
||
|
|
need a GUI. I run it headless, and I first just had this command my tool called SpeedTest
|
||
|
|
CLI. And it is an interface written in Python, I'm pretty sure, that goes out, calls, uses
|
||
|
|
like SpeedTest.net, runs the, runs like a standard SpeedTest.net thing that you could
|
||
|
|
do, like if you're running SpeedTest.net from your mobile device or from your computer.
|
||
|
|
It gets the upload speed, the download speed, it actually saves a URL to the image of the
|
||
|
|
graph that gets created when you do it. And so I wrote a small little script that would
|
||
|
|
put all the information into a line of a CSV file. And then I made a CROG job that every
|
||
|
|
hour on the hour, runs SpeedTest.net and tell me what my internet speed was. Because
|
||
|
|
I was having problems with my AT&T broadband. I mean, I have this fiber to my house, and
|
||
|
|
I have internet issues. It doesn't make sense. So I started to track this stuff. And then
|
||
|
|
I said, well, I'm doing that. Maybe there's some other things I could track that, like
|
||
|
|
in a passive capacity. So there's a couple other things that I track as well besides
|
||
|
|
the SpeedTest. And originally I was just putting the SpeedTest.net stuff into a CSV file.
|
||
|
|
I rewrote it slightly to put into a SQLite database. So it's a little bit more, a little
|
||
|
|
bit easier to interface with, because I like to make graphs and stuff out of it sometimes.
|
||
|
|
So it does that. It also, I use SMTP, Mailer, some Mailer, protocol to like send me everyday,
|
||
|
|
like to download something from the weather forecast, put it in an email and email myself
|
||
|
|
the weather for the day. So every morning at 8 o'clock I get an email with the weather.
|
||
|
|
And I use Cal State to deliver that message. So in AskArt, there'll be a different Cal
|
||
|
|
or animal every day that says, you know, weather today. And so those are kind of cool.
|
||
|
|
That's a little simple bash script, maybe three or four lines long. Put that in a cron
|
||
|
|
job. And then I discovered Incron. And I've already done a post about what I've done with
|
||
|
|
Incron, which is a file system watcher demon, demon, which will look for changes in a specific
|
||
|
|
path and do whatever actions or scripts that you want to run on that new file or new path
|
||
|
|
that comes into that file path system. And I use that because I have some documents that
|
||
|
|
need the same formatting all the time. And, you know, I could have it on my main computer,
|
||
|
|
but this way I can use it from any computer in the house. I can just always mount that
|
||
|
|
as through SS, SFTP, throw off a markdown file into one of the different folders, because
|
||
|
|
I have different folders for different formats. So drop into the format of my choice folder.
|
||
|
|
And it'll output into the done folder. And then I pick it up and then I'm done. So that
|
||
|
|
was my one Raspberry Pi. I'm like, oh, that's great. And then the Raspberry Pi 2 came out.
|
||
|
|
I'm like, wow, I've got to get the new one. So I got that one. And that one I once again
|
||
|
|
had those ambitious things about, you know, I wanted to put my one wire thermometer sensors
|
||
|
|
and want to do it never happened. Instead, I say, well, you know what? I have another job
|
||
|
|
of this thing. So I was learning Django at the time. And so I made it my dev machine.
|
||
|
|
So I didn't have to put. So I could have like a stable environment that was, so I wasn't
|
||
|
|
didn't have one development environment on one computer and a different one. And I could
|
||
|
|
be seeking the files. I could be, you know, just doing a get repositor or something. But
|
||
|
|
I'm like, no, I want to be able to serve it up kind of like it was a production server.
|
||
|
|
So I want to set up engine X. And I did postgres at the beginning, but now I'm back just
|
||
|
|
using SQLite because it's faster on the Raspberry Pi. And, you know, just wanted to get it
|
||
|
|
working in a way that would be because I ended up making a real project around that concept.
|
||
|
|
So I want to be able to do it in real life to say that I could do it. So that if I had
|
||
|
|
when I go and push that to a production for a client, I know how to do it. So I've done
|
||
|
|
that at works. So that was on there for a while. And then more recently, I wrote my own workout
|
||
|
|
app. And it's really simple. Like, I looked at all this workout apps online and they all
|
||
|
|
want you to sign up and gather all your information. And they want you to have like fitness
|
||
|
|
devices and everything. And they never, and they didn't do the thing that I really wanted
|
||
|
|
to do, which was actually log my events. Like, I want to be able to log the things that
|
||
|
|
I want to log in the way I want to log them. And so I spent the time and I want to learn
|
||
|
|
bottle at the same time. So bottle like Django or Python web development frameworks, just
|
||
|
|
for a little introduction to those. And so I made it. I used Bootstrap JS to make it
|
||
|
|
mobile friendly. And now every day that I go to the gym, I come home and I on my Raspberry
|
||
|
|
Pi 2 log every event. So I'll say I did this much back, this much biceps, this much legs,
|
||
|
|
this much running, this much cardio, this much ads. And I can do it myself. No one else
|
||
|
|
has my information except for me. I can graph it. I can chart it. I can do whatever I want.
|
||
|
|
And I know it's not that big of a deal that other people have it. But I just really like
|
||
|
|
every time I go into one of those apps and they're like, where's what's your location?
|
||
|
|
And like, what's your email address? I just get, like, I just get all weird about it.
|
||
|
|
And I just say no. So, so I'm glad I have my little Raspberry Pi 2's later on. I've
|
||
|
|
now put, made a get server out of that one. So I have a couple repositories on there
|
||
|
|
that I don't want to share on GitHub or on Bitbucket, which is where I set sort of my
|
||
|
|
other things. Like, I think I'll put in the show notes here. My Bitbucket repository
|
||
|
|
is for, for these web apps that I've created. So that's the Raspberry Pi 2. It only has
|
||
|
|
two jobs. And the cool thing about these is that they're $35. And if you want to do a
|
||
|
|
whole bunch of other things with them, the money starts to add up so you can end up spending
|
||
|
|
$100 per one of these activities. But these, especially all the ones up to the Raspberry
|
||
|
|
Pi 3, if you just have, you know, old phone chargers at home, because every time you get
|
||
|
|
a new phone, you get a new charger, but you still have your old charger. So you end up
|
||
|
|
getting a big pile of these. Well, all these micro USB chargers work on the Raspberry Pi.
|
||
|
|
The new ones, the Raspberry Pi 3, they use a little bit more energy. So I have been getting
|
||
|
|
the, like, the ones released by Element 14 or by Cana Kit to say that these are four of the
|
||
|
|
Raspberry Pi 3, because I know that they use up more amperage, I think. So like I said, I'm
|
||
|
|
not an electrical engineer or anything, so that's all mumble jumbo for the most part to me.
|
||
|
|
Like, I get it conceptually, but don't ask me any specifics. So I'm like, all right, well,
|
||
|
|
for a while, I just had those two, and I just had these little simple black plastic cases
|
||
|
|
that I got off of Amazon for like $45, and that was good. But then the Raspberry Pi 3 came
|
||
|
|
out. And so when that came out, I'm like, all right, I want to get one of those. And when
|
||
|
|
I got one of those, I'm like, well, I need a better way to store these, because now they're
|
||
|
|
just starting, these little cases are kind of big. They're making these little tiny Raspberry
|
||
|
|
Pi's a lot bulkier. So I saw also an Amazon, and I'll put this in the show notes too. I found
|
||
|
|
a little rack for Raspberry Pi's, and they do make some of these racks that hold up to 10
|
||
|
|
devices, a little, they're made out of acrylic or plastic, and they're just like stacked
|
||
|
|
up on top of each other, all facing the same direction. And so I bought one that has a
|
||
|
|
four rack rack, and you don't have to put all four of the pieces together. You can put
|
||
|
|
the pieces together as you need them. So for a while, there's just a three rack set,
|
||
|
|
and now it's a four rack set. But on this one, I'm like, well, I need to get this device
|
||
|
|
because I need to, because I'm getting a Raspberry Pi person now. And so I bought it and then
|
||
|
|
figured out a use for it. And the use I found for this one has changed over time. And
|
||
|
|
I've done several different things with it. One, it was for a while, just my computer that's
|
||
|
|
just always on my LAN, that's always on, so that I could do stuff like IRSSI, which is a IRC
|
||
|
|
client. So I can just have something that's always on. It's always there. So if I'm not at home,
|
||
|
|
I can always SSH into my home network and be on the network and have a computer that has
|
||
|
|
all the stuff that's already on that I need. And so it sometimes had like NFS mounts to other
|
||
|
|
things on my network that I got on my network attached storage so that I could have all my files,
|
||
|
|
even if I wasn't around them. And that was cool for a while. But then I found a better project
|
||
|
|
for it because I had been using back in the day, I used Google Reader, and then I had to
|
||
|
|
switch the feedly. And I heard people talking about tiny, tiny RSS. And so I finally decided to try
|
||
|
|
that. So I made a tiny, tiny RSS server out of this one. And I have the tiny, tiny RSS app on my
|
||
|
|
phone. And with the web, the web interface for my regular computer, which is some, it's close
|
||
|
|
enough to feedly where I don't need feedly anymore. I can do everything that I used to feedly for
|
||
|
|
with this without any compromises. So that's great. One more thing that is in my control. And as I'm
|
||
|
|
doing these things, I know a lot of people are like, why are you going through all this work? It's
|
||
|
|
more because I want to learn these things. I want to learn how I had never really
|
||
|
|
set up like tiny, tiny RSS is a, it's a lamp stack. And I've set up a lamp stack before,
|
||
|
|
but it's been a while. I want to do it again. And I wanted to, well, it's a little different. I'm
|
||
|
|
using light D instead of Apache. And I was going to use, I tried to use SQLite, but it was,
|
||
|
|
it was, they're preferred methods for you to use Postgres. And so I tried to mess around with
|
||
|
|
it for a while. I was like, you know, fine, I'll just use Postgres. So I'll learn how to integrate
|
||
|
|
light D into Postgres and all these things. So these are things that, you know, I'm not a
|
||
|
|
sass admin, but I do develop. And I, and it's come in handy on more than one occasion,
|
||
|
|
when an application that I'm working on doesn't work. And the vendor is there trying to fix it.
|
||
|
|
And I'm like, well, did you check the firewall to see if that port is open? And just knowing that
|
||
|
|
from messing with this stuff, like, solves problems in my job. And like, it's not my job to figure that
|
||
|
|
out, but, you know, I made a little contribute. So that's that Raspberry Pi. And then I'm like, well,
|
||
|
|
I have a part of my businesses doing customer interaction. So getting new clients, managing my
|
||
|
|
current clients. And I started looking for a CRM and a customer relation management system.
|
||
|
|
And I saw all these and there's some good open source ones, but they're so big and they're so
|
||
|
|
huge. And I'm like, can I do something different? Can I make my own CRM? And I'm like, so I really
|
||
|
|
want to go through the effort. And then I remember how easy it is to set up something in Django. So
|
||
|
|
I mean, another really simple Django app that does the CRM the way I want to do it. And it's
|
||
|
|
probably not the right way to do a CRM, but it does what I want to do, which is be able to track
|
||
|
|
my clients track conversations that have with them. And, you know, and be able to say like,
|
||
|
|
well, it was last time I met with them. I have like a scale on how engaged I am with a client.
|
||
|
|
And so, you know, building up a way to say, okay, my really good clients, I'm going to start to
|
||
|
|
build a procedure where how I, how often I contact them. The ones that, you know, there's a
|
||
|
|
whole bunch of people that are leads that, you know, I'm tracking now to say, oh, yeah, I've contacted
|
||
|
|
them. They told me to go piss off. I contacted them. They seem slightly interested, but it weren't
|
||
|
|
the person in charge, you know, all the kind of information that you need to know
|
||
|
|
is important. So I said, okay, let's do it. I built that. So now I have another web server. So now
|
||
|
|
out of my four Raspberry Pi's, three of them are a little web apps and the $35 for life web apps.
|
||
|
|
I was thinking about putting these on digital ocean because I used digital ocean for certain things.
|
||
|
|
But I thought about it. I'm like, I could do five or $10 a month for each of these indefinitely.
|
||
|
|
Or I can pay $35 once plus for like I already had SD cards around the house, so I didn't have to buy
|
||
|
|
those. I had to buy one or two new charger. So for like, you know, anywhere between $35 and $50
|
||
|
|
or $55, I could have it for the year or for forever. And I said, and I don't really need these things
|
||
|
|
to be off the land. So I said, well, I'll just do myself. And now I have like a little stack
|
||
|
|
of them. And now that I have a stack of basically servers on my network, I started messing with things
|
||
|
|
like Ansible and Fabric to kind of orchestrate things, not because the things that are on there
|
||
|
|
are so complicated that I need that, but because it interests me. So like I have simple Fab
|
||
|
|
Fabric automation things where I just sent a command and it'll run because the first two,
|
||
|
|
the B plus and the two are running Raspbian still, but the two Raspberry Pi threes are running a
|
||
|
|
Ubuntu 1604 minimal server. And so, but since they're both Debbie and bass, I can run the same
|
||
|
|
command. So I'll just say, for all four of these devices, run pseudo-update and pseudo-update
|
||
|
|
this upgrade dash Y. And it goes and updates all of them at the same time. And then I'll do
|
||
|
|
send this pseudo reboot to all them at the same time. And they all reboot at the same time.
|
||
|
|
I mean, do I need to know how to do that? Am I ever going to be SS admin doing this for
|
||
|
|
my job? No. But it interests me. And the thing I was searching for when I bought the Raspberry Pi is
|
||
|
|
I'm being fulfilled in, which is to scratch that itch, that curiosity of computing. And I thought
|
||
|
|
it was going to come in that maker space. And it really never did. Even though it would make my wife
|
||
|
|
happier because all these things that I've done with these are pretty much just for me. But the
|
||
|
|
exception of maybe the, um, maybe the speed tests, if the internet's acting up, I can go tell her,
|
||
|
|
oh yeah, every day at five o'clock this week, it's had this problem or something like that.
|
||
|
|
Everything else is for me. These other projects, like I was supposed to hook one up to our garage
|
||
|
|
system and make it so they can push a button on your phone to open it. That didn't happen.
|
||
|
|
That would have helped her. So, you know, she's kind of gotten over it. But it makes me happy.
|
||
|
|
It, um, it does what I want to do, which is get some, get some training on these things,
|
||
|
|
learn some things that I'm interested in. And, you know, just have fun. And that's what hacking
|
||
|
|
is about, right? It's learning things and taking them apart and understanding how they work.
|
||
|
|
And I know way more about how, even though I've been running Ubuntu or Fedore full time,
|
||
|
|
since 2000, 11, I think I was at 1110 was my first thing. Yeah. So, since then, I've in the last
|
||
|
|
couple of years since I've been managing these devices, I've learned so much more. And I really
|
||
|
|
recommend if anyone hasn't bothered getting one of these devices because they didn't know what
|
||
|
|
they were going to use them for because they're not a tinker or they're not a maker. They're not
|
||
|
|
going to build a robot out of them. That's, um, that's one use case for them. And that's maybe that
|
||
|
|
was the use case that they were intended for. But since they do have general purpose computing,
|
||
|
|
software installed on them, you can do whatever you want with them. So, that's my episode. I encourage
|
||
|
|
all of you out there to submit an episode. I know it's kind of a scary thought at first,
|
||
|
|
but once you do it, I just watched this movie with my kids recently called Sing. It's about
|
||
|
|
the singing competition with these little dancing and singing animals and animation. You get the point.
|
||
|
|
But the, um, Matthew McConaughey's character says about being shy.
|
||
|
|
If you just start to do the thing that you're shy about, you stop being shy about it because
|
||
|
|
you're falling doing it. And I think that's kind of true. So, um, please, when he shows, I love hearing
|
||
|
|
about everything from, you know, what someone's cat's doing to what you're doing with your soldering
|
||
|
|
iron or your electrical volt meters. All that stuff is I get something out of it. And I know a lot
|
||
|
|
of other people do too. So, keep up the good work and happy hacking.
|
||
|
|
You've been listening to Hacker Public Radio at Hacker Public Radio. We are a community podcast
|
||
|
|
network that releases shows every weekday, Monday through Friday. Today's show, like all our shows,
|
||
|
|
was contributed by an HBR listener like yourself. If you ever thought of recording a podcast,
|
||
|
|
then click on our contributing to find out how easy it really is. Hacker Public Radio was found
|
||
|
|
by the digital dog pound and the infonomicum computer club. And it's part of the binary revolution
|
||
|
|
at binrev.com. If you have comments on today's show, please email the host directly, leave a comment
|
||
|
|
on the website or record a follow-up episode yourself. Unless otherwise status, today's show is
|
||
|
|
released on the creative comments, attribution, share a like, 3.0 license.
|