This post builds on my previous posts in the Raspberry Pi Cluster series by changing how the slave sends messages. From now on the slave will send useful information about the system to the master. The master will also be configured to receive messages of many types.
This post builds on my previous posts in the Raspberry Pi Cluster series by changing the format of the data I send. In this tutorial I am now sending data as JSON to allow a richer set of messages to be sent.
This post builds on the third step to create a Raspberry Pi Cluster Node to store our configuration settings in a config file. Here we move all the configuration settings in our script into a useful .cfg file using the python ConfigParser.
This post goes through the steps of fixing Letsencrypt with the issue “Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA.”.
This post reviews the Arduino Starter Kit. This is an ideal kit for a beginner in electronics and embedded systems or for someone wanting to learn how work with an Arduino. Here I look over what you get in the kit and the projects it provides.
This post describes what you can do to fix “Couldn’t switch to requested monitor resolution” problem. This occurs on a number of games, Confirmed fixes for Slime Rancher, Hearthstone, and Elderscrolls Legends.
I am going to upgrade our previous Raspberry Pi backup script that previously used Secure Copy to one that uses rsync. The primary reason for this is that rsync will only copy new or changed files over. This post goes through the reasons why you might want to use rsync instead of scp when performing a
This post describes how you can fix the python error No module named 'winrandom'. This is typically found when you are using the pyCrypto or coinbase python module.
This post builds on the second step to create a Raspberry Pi Cluster Node to create a hello world application across two different scripts. Here we will create a socket connection between the two and use it to send a message to the master.
This post builds on the first step to create a Raspberry Pi Cluster node to package the common functionality that will be shared between master and clients.
Today I will be improving the basic script used to backup my Raspberry Pi’s so that it compresses the files after they have been copied. This will allow me to store several backups instead of having a single copy stored on my computer. This assumes you have followed the first tutorial to create a Raspberry
Firefox, unlike many other applications, keeps a store of its own trusted root certificate authorities. This means that adding a new root certificate to the operating system will not work. This post runs through how to add a new root certificate to Firefox.
The DS18B20 temperature sensor is a digital temperature sensor using the 1-Wire protocol. In this post I will review the sensor, show how it can be used and give a final judgement on it.
This post describes how you can upgrade Raspbian Jessie, version 8, to Raspbian Stretch, version 9. Raspbian Stretch was recently released and while they recommend installing from fresh you are able to upgrade the versions. Here I follow the steps of upgrading the Raspberry Pi’s in my cluster including some of the common problems that
This post walks you through the process of installing the Raspberry Pi OS, Raspbian, with VirtualBox. I am going to use this at times to test my software running on the OS that the Raspberry Pi Cluster runs.
The DHT22 sensor works as a duel temperature and humidity sensor. In this post I will review the sensor, show how it can be used and give a final judgement on it.
This post is the first in a series of blog posts where I explore the HTML5 canvas. This first tutorial looks at creating the basic elements required to draw on a canvas and drawing some basic shapes.
If you are locked out of your website due to the cPHulk blocking your IP address there is an easy way to unblock yourself. This post describes how you can do this from your servers command line.
The TTP223B Capacitive touch sensor is a button type sensor that allows you to detect when it is being pressed. In this post I review the sensor and provide code and a wiring diagram to use such a sensor.
I was looking to add shared folders to my Fedora VM but during mounting them there was an error. The error “access denied” appeared each time I attempted to mount the volume. This post explains why this happens and what you can do to fix it.
A slight deviation from my normal weekly posts to announce that the most recent update to chewett.co.uk has been uploaded! I have added a couple of pages including: Contact me page – A simple page with the easiest way contacting me Legal Stuff – Includes the software licence for code snippets on my blog and website
LaTeX is a document writing system allows you to focus on the content of the letter or paper. In this post I describe how to set up a LaTeX typesetting program and TeX editor on Windows.
The recommended way to modify a WordPress theme is to use a child theme. This allows redefining all features of the parent theme without manually changing the theme. This post describes why you might want to do this and how to do it.
I am a big fan of Linux and today want to share how you can install the Windows Subsystem for Linux (WSL) on Windows 10. This new feature available in Windows 10 lets you install a Linux bash shell and run various linux tools on Windows. Here I describe how to set up and install
To set up a Raspberry Pi node I will follow a specific set of steps so that every Pi is set up similarly. For the initial deployment I will follow this once and then clone the SD Card multiple times. If at a later date more are added I will use this guide to follow
This post describes how to set up a SSL certificate with Certbot on Apache and Fedora. The guide primarily follows the guide on the certbot website however adds some additional information for if auto configuration fails.
The DHT11 sensor works as a basic temperature and humidity sensor at a low price. In this post I will review the sensor, show how it can be used and give a final judgement on it.
For my cluster project I will add a new user to each Raspberry Pi. This is so the user I use for all other systems will be the same on the Raspberry Pi’s. This post describes how to add another user to Raspbian OS.
I recently installed Ubuntu on a PC that also ran windows and it looks like it failed to detect windows. This post describes the steps to fix this issue.
On my fedora system I found that after upgrading the kernel the graphics drivers wouldnt work. My machine would boot into the operating system perfectly fine but would have no image on the screen. This post describes how I fixed this issue.
A number of years ago I was introduced to using Linux day to day. During this period of time I ran a large number of virtual machines to test its performance and various aspects which make it “linux”. Typically when I first set up a system I would install a common set of packages. Then
I will be testing the performance of each Raspberry Pi version in my cluster. This is to determine what each one is best suited to running. To do this I need a similar set of tests to run for each and compare them. Ideally the tests will also be runnable on other embedded Linux devices
Since the first Raspberry Pi was released in 2012 there have been a number of changes to their design. Since I plan to include a number of different models in my cluster I will review and test each model to find its weakness and strengths.
To set up my cluster I want to create single SD card image then run this same image on multiple Pi’s. This means I wont need to set up each Raspberry Pi at a time. One of the ways you can do this is by taking an image of the raspberry Pi then flashing that
The Raspberry Pi foundation have recently updated their Raspbian image. This brings bugfixes and upgrades to the Raspberry Pi. In this blogpost I share how you can run a command on your Raspberry Pi without logging in (this is mostly true although you still do “log in” just not in the typical way). This includes
When trying to mount an encrypted drive using Veracrypt I encountered this error: chewett@bunker-master2:/mnt$ veracrypt /dev/sdc1 gen500 Enter password for /dev/sdc1: Enter PIM for /dev/sdc1: Enter keyfile [none]: Protect hidden volume (if any)? (y=Yes/n=No) [No]: Error: device-mapper: reload ioctl on veracrypt2_0 failed: No such file or directory I did some research and found out that
I was setting up a new install of Raspbian Pixel and found I couldn’t login to the Raspberry Pi. It was giving me an error: chewett@bunker-master:~$ ssh pi@raspberrypi ssh: connect to host raspberrypi port 22: Connection refused It turns out that recently the Raspberry Pi Foundation have changed the default setting for SSH and disabled
It has started getting really hot in the UK and my flat is about 28 degrees at night. This means I have been sitting in a dark flat with all the windows and doors open. This works well but If I want to work on my computer then the lowest brightness level is still too
Now I have the power supply and built the stacking system I can show off the clusters initial state. Every Raspberry Pi in the cluster Here are the 7 initial Pi’s that are to become part of the cluster. Each have been given a codename to designate its position in the cluster. The Raspberry Pi designed “M” will be
If you are getting “Read-only file system” on your Raspberry Pi when mounting drives there is a simple fix. chewett@bunker-master2:/mnt/wd500$ touch test.txt touch: cannot touch ‘test.txt’: Read-only file system I noticed this happening when I tried to mount and work on my external hard drive. This is formatted with the NTFS filesystem. I did some
This post is a review of the “Light Intensity Sensor Module 5528 Photo Resistor” and includes code and images to use the sensor. There are a couple variants of this light sensor sold by different companies but all have similar components and designs. This model is sold by HiLetgo CN and is available on amazon (link below).
One of the objectives for the Raspberry Pi cluster is to manage a number of servers including syncing their contents and backing up databases. The data included may contain personal information so they are always backed up to an encrypted drive. This means I need to be able to access the encrypted content on the Raspberry
The stackable Raspberry Pi case purchased allows stacking Raspberry Pi B+ and Raspberry Pi 2/3 but I was planning to modify this to stack older Pi’s. Stacking the Raspberry Pi (256 MB) The original Raspberry Pi does not have any mounting points. This makes it quite hard to stack using my chosen stacking solution. Therefore for the time
To access some of the lower level aspects of the Raspberry Pi’s config you can use the built in command vcgencmd. This is a useful on the command line but to easily access it in a program you need to parse the output. I am planning to use this command to store data like the
I want to be able to access my Raspberry Pi Cluster and log onto any node without entering a password. To do this I can set up as passwordless SSH key. Generating a SSH Key To generate a SSH key you can use the command ssh-keygen. Once you have ran this you will get the
The Raspberry Pi doesn’t come with its own power supply so you need to decide how to power it. The recommendation from the Raspberry Pi website is that they have “found that purchasing a 2.5A power supply from a reputable retailer will provide you with ample power to run your Raspberry Pi”. After doing some research
Something I want to do with my Raspberry Pi Cluster is mount a hard drive and share it like a windows share. To do this I am going to set up Samba on a Raspberry Pi. Installing the required packages To run samba as a service we need to install a couple packages. Running the
Here I suggest some recommended steps to install Raspbian on top of their install guide. Choosing an OS for the Raspberry Pi One of the main ways to install a Raspberry Pi OS is to download a disk image called NOOBS. This lets you choose to easily install a number of different OS’s. If you want to
This blog post describes how to set up free SSL certificates on a Web Host Manager CPanel server. This requires root access to the server, if you don’t have access to this then you must ask your service provider to install it for you. What is Let’s Encrypt? Let’s Encrypt is in their own words
For the Raspberry Pi cluster I wanted to make sure that they are neatly stored to keep them easy to reach. Why nicely storing them is important Each Raspberry Pi requires a power and network cable. When using a single raspberry pi the cables are not an issue but I am planning to use five as a baseline
If when running vcgencmd on a raspberry pi you get VCHI initialization failed then you need to add the video group to your user. The vcgencmd tool requires you have this group role so without it, it will give VCHI initialization failed. To add the user group to your user you can run: sudo usermod -aG
Today’s blog marks the official start of my Raspberry Pi cluster project. Here I will be documenting the process of assembling, building, and running a small cluster. This blog will include both code snippets, hardware diagrams and the results of various projects using the cluster. Aims of the project The Raspberry Pi cluster will be looking into distributed
In MySQL 5.5+ you can abuse a new feature with BIGINT values. This involves a problem called integer rollover and your ability to run arbitrary SQL. The problem of integer rollover Integer rollover happens when a number is too big or small and is made bigger/smaller. In the case where the number is the highest
It appears newer linux sshd configs (fedora 22) by default include a smaller set of key exchange based mechanisms that they have turned on. This means that it gives errors saying it is unable to connect to the server. To fix this you need to enable some of the older key exchange mechanisms, Adding this line
I have always wondered this, its exceptionally hit and miss and there isnt any real standards. I recently found the reason on the internet Well, there were other factors in play there. htmlspecialchars was a very early function. Back when PHP had less than 100 functions and the function hashing mechanism was strlen(). In order to
In one of his books: The Hour of the Dead was when men died. And when a man died, they sent him home by clacks. Moist’s mouth dropped open. ‘Huh?’ ‘That’s what they call it,’ said Harry. ‘Not lit’rally, o’ course. But they send his name from one end of the Trunk to the other,
Installing via the normal route didn’t work and meant I couldn’t easily resize the screen. Doing the below allowed me to use the resize easily. Install rpmfusion on fedora run `sudo yum install akmod-VirtualBox VirtualBox-guest` run `cd /usr/src/akmods` run `sudo rpm -ivh VirtualBox-*.rpm` Once this was installed, rebooting will give you access to shared folders and fullscreen mode
I recently got sent this Skrillex Piano version of Scary Monsters and Nice Sprites and was blown away by the different Here is the piano version And the radically different original