MacInTouch Amazon link...
Channels
Security, Products


While perhaps a bit off topic, I would be curious to hear from others about their thoughts regarding experiences working with a Raspberry Pi. In a side conversation I had with Ric, we were in agreement that a Raspberry Pi build and coding had a very Woz-like vibe about it. The ability to add inexpensive componets; the versatility; the fun. Take a Raspberry Pi, add a battery pack and some sensors, attach to a small balloon, and set it free. Who knows what will happen, but that is the fun in it.

Such projects were perhaps one reason I got into engineering and computing in the first place. The early days of desktop computing were filled with that wonder of plugging things together and seeing how it all worked. I do not see that as much today, except perhaps with devices such as with these single-board-computers (SBC).
For hacks/projects, I would also recommend the Arduino. I was working on a sound-light-button device (push blue button, speaks blue, lights up blue) but the person I was doing it for failed to tell me he also had some school involved. The students and their instructor beat me to the completion. I did learn much and there is a good community of support to code.
 


Agree about Raspberry Pi... I have a 2B and a 3B+. Waiting for a 4B+ with more RAM and faster clock.

Reminds me of the glory days... my first model railroad (as a kid). Programming (actually plugging in wires) for IBM Unit Record macines. Building Heathkit Sound Systems, etc etc.

Writing systems programming stuff for IBM mainframe DOS, MVS, VM, etc. Even for Burroughs mainframe... beautiful OS they had with WFL (their version of IBM JCL), but it was via a terminal. All of that was real hands on the metal. Very happy days of playing with toys.

So the Pi is what's left of that sort of hands-on. No objection to progress. Where can you buy a stick shift car these days? Pretty hard to find. Just happy to learn a bit more about Linux. There is even a Rasbian distro to run on the Mac.

 


For hacks/projects, I would also recommend the Arduino. I was working on a sound-light-button device (push blue button, speaks blue, lights up blue) but the person I was doing it for failed to tell me he also had some school involved. The students and their instructor beat me to the completion. I did learn much and there is a good community of support to code.
I completely agree with the above - if you don't need a "complete computer" like the Pi gives you (with Linux). Arduinos are fun little devices - cheap and easy to program with tons of doo-dads that can be attached. The IDE is easy to work with and most Arduino devices easily connect to a Mac or PC via USB (or by way of a USB-to-serial adapter). I typically work with the Arduino nano devices - they're small, have built-in USB for easy programming, and are cheap at a couple of bucks per device.

Note that the Arduino IDE can also be used to program a number of other devices with the proper plug-ins. Quite a powerful family of toys. Hope this helps!

One note of caution - some of the Arduino USB-serial interfaces may require device drivers to work properly - and, of course, there are plenty of online resources for those issues as well.
 



We’ve had issues with SD cards used on Raspberry Pi. Long term, the constant writing of log files tends to wear them out. I would advise setting up a RAM disk for these files to prevent problems.
I have a 3B+ running Pi-hole/DNSCrypt and encountered this problem of SD card corruption after 3 months. I think I turned off Pi-hole logging to reduce write activity on the card. So far it's been over 5 months without a hitch. I now have an image of the configured SD card which I can restore quickly should the Pi fail again. Apparently version 4 fixes this corruption issue caused by power loss while writing to the SD card; on Youtube I saw an early reviewer shut off the Pi while the system was ostensibly writing various log files and no harm was done.
 


... Arduinos are fun little devices - cheap and easy to program with tons of doo-dads that can be attached. The IDE is easy to work with and most Arduino devices easily connect...
This is very true. Within the Arduino universe I would pay particular attention to the Teensy series from Paul Stoffregen. Not only was he first to bring 32-bit computing to Arduino, but his boards are compact, easy to work with, and very powerful. Plus, I love the community over there. If you need near-metal performance, his boards are the ticket.

That's the main thing for me - Rpi is great for generalist applications. However, if you need a degree of precision, something like a Teensy makes much more sense - allowing guaranteed timing on ADC, for example. That said, the Rpi may be the best platform in turn to collect said data, manipulate, and visualize said data. Aces in their places and all that.
 


This is very true. Within the Arduino universe I would pay particular attention to the Teensy series from Paul Stoffregen. Not only was he first to bring 32-bit computing to Arduino, but his boards are compact, easy to work with, and very powerful. Plus, I love the community over there. If you need near-metal performance, his boards are the ticket.
That's the main thing for me - Rpi is great for generalist applications. However, if you need a degree of precision, something like a Teensy makes much more sense - allowing guaranteed timing on ADC, for example. That said, the Rpi may be the best platform in turn to collect said data, manipulate, and visualize said data. Aces in their places and all that.
Agreed that the Teensy boards are fantastic and really easy to program, and there's tons of online support for them as well. Still can't beat a $3 Nano and the amount of bit-banging it can do. (I play a lot with Neopixels and arrays)
 


While perhaps a bit off topic, I would be curious to hear from others about their thoughts regarding experiences working with a Raspberry Pi. In a side conversation I had with Ric, we were in agreement that a Raspberry Pi build and coding had a very Woz-like vibe about it. The ability to add inexpensive components; the versatility; the fun.
When I first discovered the Raspberry Pi a couple a years ago, I thought it would provide me with an opportunity to re-live the days when I wrote code on my first Apple II+. As I'd spent the middle part of my professional career writing code on a Unix system (Fortran and Bash scripts), I also though it would be a good way to rejuvenate those skills, and stay current. I was right on both counts.

I've had a lot of fun with several different projects, but my favorites thus far are an Internet Radio (using a Bose SoundLink Mini) [Amazon], and Pi-hole. I have Pi-hole and unbound (a recursive, authoritative DNS server) setup at my home and cottage.

Both locations are connected to the internet via slow (and very slow) DSL, which has a tendency to drop out from time-to-time. To address this issue I've written a simple Bash script to monitor the internet connection (periodically pings a couple external IP addresses) and power cycles the DSL modem when required. This is done using an IoT relay [Amazon] at one location, and an inexpensive Smart Plug [Amazon] (flashed with Tasmota firmware) at the other.

I also have another Bash script running at both locations, which exchanges the locations' external IP addresses. This, in conjunction with Pi-hole, allows me to create fake URLs for both locations, which has made my DynDNS subscription unnecessary.

I'm currently assembling a monitor for the standby generator at my cottage, which I hope to install this spring. Once that's done, I'll probably go back to trying to get the Sleep Proxy Server to run on the Raspberry Pi (after I teach myself Python).
I have a 3B+ running Pi-hole/DNSCrypt and encountered this problem of SD card corruption after 3 months. I think I turned off Pi-hole logging to reduce write activity on the card. So far it's been over 5 months without a hitch. I now have an image of the configured SD card which I can restore quickly should the Pi fail again.
My approach is to use over-provisioned (32GB), High Endurance SD cards [Amazon]. High Endurance SD cards are designed for dash cams and similar applications, and purportedly utilize better wear-leveling algorithms than standard SD cards. I, too, keep a configured spare next to each Raspberry Pi. I've considered booting from a USB hard drive to address this issue, but dealing with the associated power requirements complicates things more than its worth.
 



With regard to the new Scudo firewall offering from the makers of Murus and Vallum, I went to their site looking for a comparison chart comparing the two setups. Not finding one, I sent them an email.

They confirmed that there was not currently a comparison chart, but that they are working on improving their site. Hopefully, that means such a chart is coming.

In case anyone is wondering, Scudo is simpler and easier to use than Murus/Vallum. They suggested that I start with Scudo and said that if I find something missing, then I "probably need Vallum/Murus."
 


I set up a Raspberry Pi-hole, and it seems to at least partly work according to the log. I haven’t done a thorough test yet by loading a set of pages with and without using it to see what the differences are.

In my network DNS system preferences I have the Pi-hole IP address first, followed by OpenDNS. Does Apple configure DNS to use the first server and only use the others if the first one times out? I read some operating systems query all their servers and use the first response, which should work just as well.

If I have this setup on a portable, will it use Pi-hole at home and use OpenDNS elsewhere without lengthy delays?
 


Ric Ford

MacInTouch
In my network DNS system preferences I have the Pi-hole IP address first, followed by OpenDNS. Does Apple configure DNS to use the first server and only use the others if the first one times out? I read some operating systems query all their servers and use the first response...
I don't have an answer (yet, anyway), but you might find this interesting:
Oh, and the dig command apparently shows you the server it's using, so that may give you the answer:
dig apple.com

; <<>> DiG 9.8.3-P1 <<>> apple.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38142
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;apple.com. IN A

;; ANSWER SECTION:
apple.com. 2979 IN A 17.172.224.47
apple.com. 2979 IN A 17.178.96.59
apple.com. 2979 IN A 17.142.160.59

;; Query time: 15 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Mon Feb 24 16:20:04 2020
;; MSG SIZE rcvd: 75
 


In my network DNS system preferences I have the Pi-hole IP address first, followed by OpenDNS. Does Apple configure DNS to use the first server and only use the others if the first one times out?
Yes, but once it fails-over to a backup server, it won't return to the original unless it sees a failure on the backup.

I was using this setup at home for a while - using my Raspberry Pi as the primary and others (Google and Comcast) as alternates. This created a problem - whenever I'd reboot the Pi (e.g. after a software update), my Mac would immediately fall over to Google or Comcast, which have no knowledge of any of the hosts on my private LAN.

I needed to flap my Mac's network connection (in my case, use the Location on the Apple menu to switch from "Home" to "Automatic" and then back again) in order to get it to start using the Pi again.

Today, I have my local DHCP configured to only send my Pi's address for DNS. If there should be a need for redundancy in the future, then the solution will be to set up another in-home DNS server that mirrors the Pi and make that the backup. This way, both will serve the same database, and a failover won't result in losing the ability to resolve local hostnames.
 


Yes, but once it fails-over to a backup server, it won't return to the original unless it sees a failure on the backup.
That makes the Pi-hole not useful for a traveling computer. I suppose I could set up a virtual machine on the portable so Pi-hole is running on the portable all the time, but I don't think it would be worth the effort.

In response to Ric, I know my computer is using the Pi-hole for DNS at least part of the time since the Pi logs show 1/3 of the lookups going through it are blocked, and dig does return the Pi DNS server.
 


For the Raspberry Pi aficionados in the audience, it looks like they have released a newly revised board to deal with the USB-C charging issues, as well as other tweaks. The Raspberry Pi 4 Rev 1.2 should be in the channels by now. As for how to determine if the board you are looking at is the newer version:
CNX Software said:
Raspberry Pi 4 Rev 1.2 Fixes USB-C Power Issues, Improves SD Card Resilience
The first Raspberry Pi 4 boards suffered from a poor USB-C power supply compatibility due to issues for the power circuitry. That means if you bought the official USB-C power supply you had no issues, but if you wanted to re-use a spare USB-C power supply or incompatible cable, you may be out of luck.
Also worth noting is a price drop on the 2GB model of the Raspberry Pi 4.
Ars Technica said:
The Raspberry Pi 4 gets a RAM upgrade: The 2GB version is now $35
The Raspberry Pi 4 is approaching its first birthday in a few months, but it's already getting an upgrade: more memory. The Raspberry Pi launched in June 2019 with 1GB of RAM for $35, 2GB of RAM for $45, and 4GB of RAM for $55, but today the Raspberry Pi Foundation announced that the 2GB model is getting a permanent price drop to $35.
 


Amazon disclaimer:
As an Amazon Associate I earn from qualifying purchases.

Latest posts