We give you a quick overview and build a project to welcome the Raspberry Pi 4 to the world!
Overview
Below a quick overview of the content.
- Introduction and showcase video
- Pie
- Pi
- 3.14
- Pies
- Result
Introduction and showcase video
To welcome and celebrate the new Raspberry Pi 4, we’re building a project consisting of four Pi(e)s!
Pie
Our first pie has two parts, a container and a lid.
Both are based on this great 3d model.
All we have to do is make it bigger, and add an opening for our pies to come out.
Now we have a basic pie, but it does not look the part.
Using some glue, felt and coloured balls we add some extra pie-ness.
There’s a great tutorial on how to exactly do this right here.
Pi
Our pie will hold everything we need, and one of them is our Raspberry Pi 4.
Configuring and powering is done the usual way.
They have a very neat guide on exactly how right here.
If you want to know more details about this new Pi, look no more.
3.14
We want our Pi in our pie to calculate π. To achieve this there’s a bit of python code.
def calculatePi():
os.system('echo "scale=2000;4*a(1)"|bc -l')
You can play with the precision by changing the scale. The higher the scale, the longer it will take.
Pies
We have a Pi within a pie that calculates π.
The last step is to add some pies.
This requires two things, some ASCII art and a little thermal printer.
First of all, our ASCII pie, thanks to this great website!
We have our ASCII pie, next is connecting the thermal printer. All we need to do is follow the steps outlined here.
You can find the complete code in the ‘Code’ section.
Result
Now we have a Raspberry Pi 4, in a pie, calculating π, and printing pies!
What better way to welcome the new Raspberry Pi 4 then a Pi(e)fest!
Code
import os import sys import time import re # Setup our printer def setup(): os.system("stty -F /dev/serial0 19200") # Calculate pi using the system def calculatePi(): os.system('echo "scale=2000;4*a(1)"|bc -l') # Print them pies! def printPies(): # width of our paper. this many character fit on a single width = 32 # Barrier to print between every pie barrier = width * '*' # Our asci art pie pi = ( " ( " " ) " " __..---..__ " " ,-= \ | / =-. " " :--..___________..--; " " \.,_____________,./ " ) # Command to print os.system('echo "' + pi + '\\n" > /dev/serial0') try: setup() while True: print('start') calculatePi() print('done') printPies() time.sleep(2) except KeyboardInterrupt: sys.exit()
Source: Four Pies