Four Pies

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


About The Author

Muhammad Bilal

I am highly skilled and motivated individual with a Master's degree in Computer Science. I have extensive experience in technical writing and a deep understanding of SEO practices.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top