For a while now I’ve been saying that social media is more harmful than good .. Ok more than I have been saying it as the studies in this article written by the Sloan School of Management at MIT point out. One thing that social media always brings is people posting only the best, making others fear that they are missing out.
That was a stretch for an intro but “Fear of Missing Out” or FOMO was another term that I had heard a lot and never understood what it meant. I finally looked it up and I understand how it is harmful to ones mental health. The first article that I ran across when researching came from from verywellmind.com and begins the description of FOMO by calling out scrolling on social media and feeling like something is missing in one life. The next article from NIH.gov reinforces the definition of feeling like something is missing when in a social context and adds emotional compulsion to gain some thing or do some action to achieve the result of being just like those social media posts.
My problem has always been video games – I find that I want to play games with friends because I have seen said friends with a game and I do not want to be left out. Sometimes everything works out and we have fun playing a particular game. Other times though I will break patterns, stay up too late and cut into much needed sleep or worse never play the game with anyone and waste the money.
This was another random trip off the beaten path to look at the meaning of a term that was scratching that curious part of my brain. It was not a deep dive but, in the end something that I could say is a bad habit I have from time to time that I could do something about.
Like a lot of people, one of my goals for this year is to reorganize and clean up, my backlog keeps getting derailed every time I go looking for parts in my current storage… During my cleaning I stumbled across these two CHIP single board computers. They both powered up, but one never displayed anything on the screen … So, time for an update…?
I jumped on the original Kickstarter back in 2016 when these were first released for only $9 each. I do not remember where I originally heard about it, but I remember being excited to jump on such a neat concept and all the tinkering that would be had. Doing a quick search back at the news of the time, the CHIP was being really well received with a good amount of chatter around it – USA Today and NPR ran excited stories on the CHIP.
Seeing as how I can post pictures of these CHIPs I definitely received the Kickstarter reward, but in researching I see that a lot of people did not, it was disappointing to see that a lot of people did not. The reason for this lack of delivery was apparently that the company, Next Thing Co., was not entirely able to continue product and went bankrupt. With the company going bankrupt that unfortunately means support is, well almost non-existent, aside from dedicated folks keeping these little things alive and mostly supported …
Originally, the CHIP was flashed by a Chrome plugin, support for which Google has LONG since killed off in the Chrome browser so the first challenge was to get these chips back in working order. Thankfully with some quick googling I was able to put together enough steps to flash both CHIPS between the Flash-Chip Git hub and the JFPossibilites archives of CHIP materials. Even with the instructions from these sites I still ran into issues with the process, needing an older version of Linux and an even older version of software to finish the flash (this was just my experience though), but after a couple hours of tinkering …
Ta-Da! Success, a CHIP desktop! Turns out these little guys still work after all these years and being moved from place to place in storage, I am a little excited.
This image even had the original software that came on the CHIP from the factory …
Including the original 4.4.13 kernel from 2016 .. ouch (as of this writing, the current Linux kernel is 6.7.1). At this point attempting an Apt update returns a lot of 404’s and site not found since CHIP OS was based of Debian Jessie and long term support ended in 2020 and the repositories for Next Thing Co are also no longer a thing. At this point, these CHIPs are looking very stale and much like eWaste. These are a cool idea, but methods to support them make life difficult.
So, what now? Well, for the moment this is where the CHIPs get put back into storage. There are sites to work around the dead repositories and get some updates onto these mini computers (I would be lying if I said I did not try already), but to what level of update? Updating them to that degree was out of scope for this post – I was just out to write about a neat Single Board Computer – also, I do not have any good projects for them at the moment. They are capable little SBCs, so I think I will be revisiting them sometime in the future, until then, they are just a little stale.
A while back I wrote about getting my hands on my first Chromebook, and while it was sitting around while I thinking of what to do with it, I stumbled across another one. This one was a Dell Chromebook 3189 Education, a cool convertible device that is “rugged” enough to be used with kids for school work. The machine only had one major problem – when I powered it up the Chromebook reported that the OS was no longer supported and it was time to get a new Chromebook – this is no good, just eWaste at this point.
So, is there anything that can save this machine from the trash. Maybe Linux. I have heard that Chromebooks can take Linux installs, which would work for a low spec machine like this. The next question is how to get started, and a some Google-Fu returns a how-to guide with a few ways to put Linux on these Chromebooks.
The easiest method being just to install it within ChromeOS, which only works on the Dell Chromebook I have, and failed the first 2 times I tried it. With a little persistence I was able to follow the instructions and get the Linux virtual machine loaded… Yes, a virtual machine.
Home Screen with Linux Apps icon
Linux apps?
Finally a terminal
So the first method is only a Virtual machine that requires you to launch something and then … click on something else not named terminal to get to a terminal. If I read some instructions somewhere this would have made more sense but walking into this process blind, this makes no sense. Really, I planned to wipe the ChromeOS out anyway so off I followed the steps of setting developer mode and wiping out what was on the Chromebooks and loading Ubuntu.
Ubuntu running a Dell Chromebook
Following the steps in the guide worked but there were some complications …
Have to push Ctrl+L every boot to get to the SeaBIOS and boot linux
The Asus C300 was too old for the SSL certs to download the flash script needing an extra switch added to the curl command and the script had to be modified to ignore the errors
Ubuntu on the C300 would also throw a System Program Problem detected message on ever login, Xubuntu was happy though
Grub was extreme slow to draw the boot menu on the Dell
Well the process works, mostly, kinda … If you do not enter the Ctrl+L at start up (that is the OS Verification is off screen), the system goes to the ChromeOS recovery error screen, and if you re-enable the OS Verification … the system becomes completely unusable and you would have to start over after restoring the ChromeOS. This was my experience though, your mileage may vary.
Several months ago I received a notice from Linode the costs of virtual servers were increasing. I was using the service to host some decently sized servers, and since my home lab was going to waste, I decided it might be a good idea to find a cheaper solution. I did not exactly like the idea of punching holes in my internet firewall and somehow I do not thing my ISP would have been happy with my server hosting anyway.
I had a pfSense router (separate from the main ISP router) dedicated to a small test network for an always on OpenVPN connection that I would use to change my geo location for testing purposes. I decided to just repurpose this network to host my servers on. After doing some reading though I found out that OpenVPN might work … but it was going to be slower and have a higher ping than another technology I had access to, not what I needed. So I set about learning how to Wireguard.
As usual, I am not diving into the specifics of setup – both for security concerns (I am not going to give up the passwords to my VPN tunnel) and also for the fact that as I went through the set up I found different providers had some different ways of labeling things. For the destination (that is the internet side of the tunnel) I used a hosted Wireguard provider (I figured they had more experience running a VPN server than I did) and on my network I configured the pfSense router as a client (terminology to keep in mind if VPN is not your day to day) finding the one blog that filled in enough of the blanks to be useful. On the surface, setting up the tunnel is relatively simple … except different providers label things differently in their documentation.
Also … I discovered that trying to reuse the OpenVPN router was a little more complicate than just adding the WireGuard services and going from there. Someone trying to follow along might not run into the same issues but I ran into handshake issues until I reset the router to factory and installed just the WireGuard services – something to note for future experiments. After the tunnel was up and stable, just needed to route ports from the VPN server through the pfSense to the server in the home lab.
The whole project, a big part of my ‘Workshop’ effort, has been up and running for a couple months now, and aside from the router locking up once or twice it has been very stable. It will likely make an appearance in the future from time to time.
Several odd years ago I saw this really cool calendar / to-do monitor in a YouTube video that the person in the video said was from a company called DAKboard. When I found out one of these boards could be built with a Raspberry Pi, I started building. I have had the board hanging up on the wall for several years now, trying to keep up the need to do things.
DAKboard itself is, at the core, an online service thing, it has different levels of features based on subscription levels – the higher the level the more customizations and displays one can run from the same account. DAKboard also sells custom hardware in both a full display or just the brains to connect to any sort of TV or monitor that one has gathering dust in a corner (or a webpage … or a tablet…) . However they offer a DIY guide to setting up a board using a Raspberry Pi, which is what I set up some time ago.
I am going to skip the technical details of setting the display up, as it is largely personal preference on how one wants their board to display (plus there is that whole subscription thing…). I have mine set up with Google and Outlook calendars and tasks from Todoist, along with my local weather. I occasionally run into something I cannot do (say limited number of calendars) here and there but for the most part, I am not feeling too limited with a free account. Definitely worth a look if one is looking for a tool to help wrangle in tasks.
Back a while back I posted up a brief run down on an Asus Chromebook that happened to be in a stack of “broken” laptops I purchased. When I received it, the Chromebook had a cracked screen and was locked by the previous owner. As I was still new to the idea of a Chromebook (and did not want to try and hack into the thing) I went looking for some kind of option to wipe out the already existing stuff without needing a user password; sort of like the reset function in Windows. To my relief (and surprise) this reset existed as a function called “Powerwash” … a fancy name for a Factory Reset.
For this post I am not going to dive into the how-to of the process; the Chromebook I have is fairly old, the OS is no longer supported, and how-to is not the purpose of what I am testing here. As a reference or if someone those curious, the documentation is located here. The real reason for writing this was really just to see how much if a wash actually removed all the personal data off the machine.
The original plan was originally concocted back just after I finished up the course on using Autopsy forensics software back in around 2019 (see what I meant about backlog piling up …). Autopsy does not have a way .. natively .. to gather info from Chromebook – the machine runs completely off soldered on storage, so off to find another way to grab the info. A quick search later and I stumbled onto Magnet Forensics, it was free and looked simple enough to do what I was needing.
Basically, following the instructions would put the machine into a “recovery state” then this tool, housed on a USB drive, would come in and grab up all the data and drop it onto a part of USB that could be read from another computer. Simple enough. I browsed a few sites, downloaded a few files, and edited a few things on the Chromebook then followed the steps in the documentation. The trickiest part was getting the Chromebook into recovery mode, done by a key combination that has to be pressed at just the right time. After running the tool the first time, I ran the powerwash recovery on the Chromebook and then ran the recovery tool again, using a second USB drive.
Once I copied off the recovered data, it was pretty obvious that data was cleaned in the process seeing as the file with data (pre-clean) was 411MB and after clean was 7KB. Seeing this difference I thought I would just expand these compressed files and compare the results .. no need to go much father than a folder comparison.
Before cleaning / After cleaningBefore cleaning / After cleaning with more filesDownloads before / After cleaning
So, nothing more to say .. Powerwash cleaned up the user data .. at least enough that the casual buyer would not be able to get data off the machine if someone were to sell it later.
Recently (relatively) I was going through some video recommendations and came across a video describing on how to host a website on a Raspberry Pi from just about anywhere including while traveling (like hotel WIFI or a mobile hotspot).
HakByte: Learn Web Hosting on Your Raspberry Pi with Dataplicity
Checking out the dataplicity site, the service is intended for management of IoT devices by making it convenient to connect to them wherever, without needing to jump through a lot of hoops (like configuring firewalls). I had a spare Raspberry Pi so why not give this a try and I went about setting it up.
The setup process is really simple, I am not going to spell it out here since the documentation is really clear – set up the Pi, connect it to the internet, run the script. Once complete, the Pi shows up in a dashboard letting one connect to the terminal or providing a randomized URL to connect with a web browser.
Terminal and URL
Once the Pi is reporting to the console and the URL is created then the next step is to create the website on one’s favorite webserver, which is a lesson for another time. All said, when finished, I did not really feel this would be useful as I thought for anything I might need, but I left the Pi online while deciding what to do… maybe I will put a model train online or something.
I am at my local thrift store not long ago and was walking down in the electronics section when I notice this silver box sitting on the shelf. Now I recognize the shape of this box, looks a lot like the size and dimensions of an external hard drive. Now, I am the curious type and could not pass up the opportunity to see what might have been left behind, also for about $5.00 including the power supply – I can think of worse ways to spend a curious weekend.
Getting the drive home I break out the USB write blocker and Kali laptop – way nerdy, yes… but just in case there might be something ugly living on the drive… I get everything connected, hit the switch on the box and the lights come on, good sign, but I do not see the drive showing up on the laptop. Ok, so maybe the write blocker is causing an issue and keeping the drive from showing up. I remove the blocker and connect the silver box directly and .. nope. I can see the enclosure if I run an lsusb command (to list USB devices), but anywhere else.
So then (while not a good idea) I decide I will take the chance and plug the box into a windows computer. Again, nothing – I can hear the USB being detected but the drive will not connect. Checking disk management I see the drive!
When I try to initialize it … Fail.
Grabbing a screwdriver I pop the enclosure open and pull the hard drive out. Connecting it up with a hard drive dock and the Kali machine and … the drive is there … Twice or, 2 partitions. One partition is blank, the other has someone’s downloaded audio books – complete with the torrent files from the download.
The mystery of the silver box is solved! A portable hard drive that someone was using for downloading audio books. The trouble with reading the drive in the enclosure turned out to be components failing in the enclosure (probably why it ended up at a thrift store) but a working SATA hard drive – I am not not much of a fan of the audio book titles, so the drive got a good cleaning before a final destination in the parts bin.
Back in 2017 the Linksys router that I was using for my home network was starting to have fits needing reboots quite several times a week, not letting wireless devices connect to it, and generally showing the need to replace it. Replace it is exactly what I did, spare the details I made the jump to Ubiquiti and enterprise networking hardware, a decision that I strongly recommend to anyone who needs good network gear (not sponsored or anything). Fast forward to 2021, and the cloud key for the Access points goes sideways during a software update and fiber comes to my area – this can only mean one thing … Time for an upgrade!
I upgraded my router and access point controller to a Dream Machine Pro; admittedly a huge (and probably un-necessary) jump, but the Dream Machine simplified a few things on my network. Plus … Dream Machine handles back up internet connections, which is great because fiber is being rolled out in the are and Charter service is … less than optimal. First world problem though, is there a way to tell which connection is active at a glance (see one ISP’s TOS is pickier than the other)? The answer is pi – A Raspberry Pi 2B, a 7 Inch touch display, a Panda Wireless Adapter, and little PHP
I wanted to have something set up where I could just glance at to see what internet connection was active – in case I needed to call a provider to report an outage. Just checking what connection was active is not a super intensive task and this hardware I had lying around gathering dust from other projects (except that screen … I have no idea what possessed me to order that when I did). The Pi mounts really neatly to the back of the display, and with the included “feet” the whole package comes out to neat desktop kiosk with a single USB power cord connected to the side with the panda adapter providing the internet connection (the Pi 2B was before the built-in wireless for Raspberry Pi’s).
The Pi was loaded with the latest Rasbian using the Raspberry Pi Imager and then updates ran before the fun really got going. Finding out my IP was easy enough, there are plenty of services that can do that – the easiest I ran into was Ipify – simple, easy to use, simple output, and best of all – Free. Ipify has more than a few code samples to get an output, and the one that jumped out was PHP – I know that I can set up a Pi with a browser in Kiosk mode without a lot headache. Ok, I know my IP, but how can I figure out what ISP that IP translates back to? Another question with another free answer IP-API, a geolocation service that will take the IP from Ipify and spit out location JSON. An apt install command or two later, and it was time for code.
So, I say code but this the hardest part of this was outputting the JSON, I have not done much of that in the past. The basic result looks a bit like this …
$ip = file_get_contents('https://api.ipify.org');
$url = "http://ip-api.com/json/$ip";
$json = file_get_contents($url);
$isp = json_decode($json);
echo "My Public IP Address is: " . $ip;
echo "My ISP is: ", $isp->isp;
echo "Organization: ", $isp->org;
As I mentioned above, Ipify gets the IP, sends it to IP-API and then all of info is spit back and displayed. Pretty simple, but the output is all run together and messy so we add some HTML around that PHP, a hint of CSS for formatting, and an image for good measure and the end result looks a bit like a less blurry version of this …
Now that I have the page, just a few minor details to make it into a little kiosk. First, was the matter of setting the Chromium browser to open in Kiosk Mode. Next, was disabling the screen saver – not required as tapping the screen would wake up the display, but convenient. After that, hiding the cursor on the display was more a big deal than I thought it would be. Finally, I added an automatic refresh of the page, and the last update time at the bottom of the screen (as shown in the picture above).
All in all a few hours in and this Internet monitor kiosk is born – not entirely useful for everyone, but if you have a need for your public IP address or need to know if your router switched to the backup internet connection (because the backup charges by the gig).
This is a post that was written in the past, deleted, lost, abandoned, then recovered. When I recovered the posts (in July of 2021) I set the publish date / time to match up with the original post date. While I PLANNED to never resurrect historical posts, some of posts show progression of skills over the years… I hope I don’t regret reviving this …
I don’t know about anyone else, but I know that I’ve had problems with malware using my USB sticks while I was trying to analyze infected computers. So thats when it came to me, malware can’t jump to a disk … if it can’t write to it, and what better tool than USB key – they come in many sizes, they run quick enough to be useful, and they’re small enough to put in a pocket to go anywhere.
Of course, a USB drive is easy enough to find, but a write protectable drive … that doesn’t need software to be installed on the computer … was the problem. This took a bit of time (about an hour actually), but soon enough I was off and running – a RiData EZ Slider USB Drive. This was a nice small drive (I used a 2 gb version), its a slider which means no cap to have to keep track of, has a write protect switch, and best of all it has a nice metal case.
So that leaves just the software, whatever I had, it had to run from a USB stick and be relatively small. I was by a random coincidence I just read about a set of apps called PortableApps. Which allows you to customize what tools you have and it runs all from disk, without going into alot of specifics I use ClamAV and HijackThis running directly from the disk to perform scans (while the drive is write protected, of course, to prevent contamination of the drive). In addition, I put some Antivirus and Antimalware installers and some other Windows updates and other tools that come in handy while trying to fix malware related problems.