Jeff Geerling writes about Raspberry Pi, homelab hardware, clustering, benchmarks, and Apple and Linux tinkering.
HN links it for hardware benchmarks and how-tos, such as efficiency results on a new Intel chip and managing FileVault remotely.
RPi power consumption and power supply is a bit more complicated than it seems on the surface.
A large problem is that even “3A rated" supplies suffer large voltage droop under load. This can be seen pretty easily using a cheap USB DC load [0]. As load goes up, voltage tends to drop slowly at first, then heavily at a certain point.
Several I’ve bought drop as low as 4.1V at just 2A load which will almost definitely make any Pi very unhappy. I haven’t found an authoritative source but generally the Pi’s power management system starts complaining (flipping the “undervolt since boot” bitflag [1] in “vcgencmd get_throttled”) around 4.6-4.7V [2]
To monitor the throttled bitflags, which also report thermal throttling, I wrote a basic shell script that just converts the hex to bin then returns a Grok-ready string with the flags as booleans. I've already got Telegraf on the RPis sending basic host metrics to an InfluxDB instance so that script just gets called by an exec input to generate and persist the data for monitoring or analysis.
Eventually I'd love to write (or contribute to) a proper Golang Telegraf plug-in that just reads from the VC mailbox directly but that's still on the back burner.
As far as actual power consumption during use, I’ve recently started running tests using a decent USB power meter (WITRN/Qway U2 [3] and X models, in particular) to monitor load over time while running various workloads on a Pi Zero W, a Pi 3B+ and a 4GB Pi 4.
Power usage at idle is…
I tried searching, and his words seem to be the opposite of what you've said:
https://www.jeffgeerling.com/blog/2006/wives-submit-your-husbands
> Is he telling us that wives should do what they're told and that husbands can lord it over their wives? On the contrary! He speaks here about a special kind of love (married love) in which there is mutual subjection, meaning that both the husband and the wife should treat each other as equals
https://www.jeffgeerling.com/blog/2009/catholic-action-network-holy-f
> Is discrimination and hatred against homosexuals wrong? Of course—these people are human beings with the gift of God's love, just like you and me! However, endorsing their lifestyle is something the Church will never be able to do, for their actions (which can be judged) are opposed to the Church's fundamental teachings about human sexuality and complementarity.
Where exactly is he saying to hate gay people and that women are owned by their husbands? Were those the posts you were referencing?
Note that elsewhere he also says that natural family planning is not endorsed by the church if done for frivolous reasons:
https://www.jeffgeerling.com/articles/religion/nfp-and-contraception
> The Church allows the use of Natural Family Planning for couples wishing to space out births, but only for serious reasons. A precondition to a couple using NFP is that they act not out of a selfish desire (i.e. the couple wants to have a lot of fun together, and a child would 'put a…
I am loving usb-c and it's great to see it's increasing in power delivery capability. 240W in a tiny, cheap connector is amazing. As a hobby I am currently upgrading all my old/favorite electronics to usb-c:
- Upgrading a 2009 Apple wireless keyboard to li-ion plus usb-c charging. A 14500 li-ion cell is 3.7C, and exactly the same size as a AA cell. You can get charging/protection circuits[1] and voltage regulators[2] for nothing online.
- Upgrading mice, headphones, etc from micro-usb to usb-c. Usually I solder in a usb-c connector upside down in place of micro-usb, add the correct resistors (there are CC or charge configuration pins). If you don't need data, you want these connectors with only the required pins and not more[3] or breakout connectors if you have space[4]. If anyone knows a breakout connector that has CC resistors installed I'd love to buy it. Or for gluing in place instead of soldering, this connector[5] is the only one I have found of any type with the correct CC resistors already installed.
- Using usb-c for powering small prototype things instead of using a benchtop power supply. You can get power modules configured to one voltage[6], or adjustable ones[7]
- Fixing janky usb-c powered electronics that only work with a usb a-c cable. Usually they are missing charge configuration resistors to get 5V. For 5V up to 3.0A, you can use simply using these resistors instead of usb PD. Usually you have to replace the connector with one that exposes the CC…
Definitely! I think it comes down to a few things:
1. You need the same username/handle on all platforms (e.g., your domain name, your twitter name, your github name, etc...). This is easier if you have a weird name.
2. You need to consistently update your content on these platforms (e.g., no one will care if you have a blog with a single post from 10 years ago)
3. You need to identify a reason for the blog (e.g., is it for work, or is it for fun?) and know your audience.
4. Your "brand" lets you control what people see when they Google you. However, if you're trying for a more professional appearance, don't blog about politics, religion, etc... because you'll be bound to upset someone at some point. Also, don't write controversial Twitter posts.
I've been blogging for almost 10 years now [1]. I only write a few articles per year, but they're always about things I'm working on. I work in IT and try to apply things I learn at work to my "homelab", and then write about it. This actually landed me a DevOps job because they saw that I used Ansible, Terraform, Docker, etc... and was proficient enough to write about those tools. When I asked in the interview, they mentioned my blog and github content as reasons why I was chosen over other candidates.
I personally use Jeff Geerling [2] as my inspiration. His "brand" has blown up recently, and while I'm not trying to get YouTube famous, I think he has great posts, creates great public code (ansible playbooks and docker…
Lmao Apple R&D. Don't know what they're spending it on since they almost always adopt technologies that have already been developed + proven in the market.
So Apple Spends 29bn R&D every year, over many years and ends up developing...a really good version of (if not currently the best, sure) version of an ARM chip, a pre-existing architecture with which they are already intensely familiar? Wow, they're sure being real efficient with those funds.
I believe a lot of their performance gains pretty much just come down to larger die size than most ARM CPUs, making an SoC and colocating memory etc all on the same die, wrangling some of TMSC's newest most transistor dense and power efficient nodes. M1 Ultra=114b, 64 core graviton3=55b, hell people are even building stuff like https://www.jeffgeerling.com/blog/2023/everything-ive-learned-building-fastest-arm-desktop.
Apple went for a bunch of easy wins tbh. Why doesn't every other computer manufacturer do it? Well Apple is a $1T company; they control so many aspects of their products, OS, software etc so very easy for them to offer this. It would require a concerted effort on the part of so many companies involved in the ecosystems of non-Apple products to make a transition the same way Apple did.
Yes, you can start with that. There is a k8s distro called k3s that runs fine even on 1GB Raspberry Pi 3.
I have been running it on those for a while, but also on other SBCs. You can grow the single master by attaching one or more workers to it. The "pain" is mainly that you can't expand the single-master to a multi-master setup, so once you want to go beyond a single master, you have to re-install it all. On the other hand, with k8s you have all deployments, etc. in yaml files and you simply redeploy these on the new cluster.
My remaining pain-point is persistent storage - it's simple to run complex setups with stateless containers or that can retrieve there data at initialization (i.e. a secondary name server that populates itself from the master at startup), but for classic databases I currently still have a manual step to import the DB dump once the service got (re)started/migrated.
Sources:
- https://k3s.io/
- https://www.jeffgeerling.com/blog/2020/installing-k3s-kubernetes-on-turing-pi-raspberry-pi-cluster-episode-3