Raspberry Pi Blog

This is the official Raspberry Pi blog for news and updates from the Raspberry Pi Foundation, education initiatives, community projects and more!

Playing The Doors with a door (and a Raspberry Pi)

Floyd Steinberg is back with more synthy Raspberry Pi musical magic, this time turning a door into a MIDI controller.

I played The Doors on a door – using a Raspberry PI DIY midi controller and a Yamaha EX5

You see that door? You secretly want that to be a MIDI controller? Here’s how to do it, and how to play a cover version of “Break On Through” by The Doors on a door ;-) Link to source code and the DIY kit below.

If you don’t live in a home with squeaky doors — living room door, I’m looking at you — you probably never think about the musical potential of mundane household objects.

Unless you’re these two, I guess:

When Mama Isn’t Home / When Mom Isn’t Home ORIGINAL (the Oven Kid) Timmy Trumpet – Freaks

We thought this was hilarious. Hope you enjoy! This video has over 60 million views worldwide! Social Media: @jessconte To use this video in a commercial player, advertising or in broadcasts, please email [email protected]

If the sound of a slammed oven door isn’t involved in your ditty of choice, you may instead want to add some electronics to that sweet, sweet harmony maker, just like Floyd.

Trusting in the melodic possibilities of incorporating a Raspberry Pi 3B+ and various sensory components into a humble door, Floyd created The Doors Door, a musical door that plays… well, I’m sure you can guess.

If you want to build your own, you can practice some sophisticated ‘copy and paste’ programming after downloading the code. And for links to all the kit you need, check out the description of the video over on YouTube. While you’re there, be sure to give the video a like, and subscribe to Floyd’s channel.

And now, to get you pumped for the weekend, here’s Jim:

The Doors – Break On Through HQ (1967)

recorded fall 1966 – lyrics: You know the day destroys the night Night divides the day Tried to run Tried to hide Break on through to the other side Break on through to the other side Break on through to the other side, yeah We chased our pleasures here Dug our treasures there But can you still recall The time we cried Break on through to the other side Break on through to the other side Yeah!

2 Comments

Come to our free educator sessions next to Bett 2020

Are you attending Bett Show this year? Then come to our free educator sessions on Friday 24 January right next to Bett to take a break from the hustle and bustle of the show floor and learn something new!

Our team will be in a private room below the [email protected] pub, next door to Bett, all day on Friday 24 January. We’ll be offering free physical computing sessions for primary and secondary educators during the day. Then from 17:30, you can drop in to chat to us about computing in your classroom, and to connect with like-minded educators.

A teacher attending a physical computing sessions laughs as she works through an activity

Our schedule for you on 24 January

11:00–12:30: Physical computing session for primary teachers (limited spaces, please register to attend)

12:45–13:30: Panel and Q&A for primary teachers: Code Club and the National Centre of Computing Education (drop in without registering)

14:30–16:00: Physical computing session for secondary teachers (limited spaces, please register to attend)

16:15–17:00: Panel and Q&A for secondary teachers: Code Club and the National Centre of Computing Education (drop in without registering)

17:30–21:00: Informal meet and greet with the Raspberry Pi team for everyone (drop in without registering)

  • Snacks and refreshments will be provided at all the sessions
  • Directions to the [email protected] pub, where you’ll find us, are below
  • You don’t need to have a pass to Bett Show to attend any of our sessions

What are these physical computing sessions?

In these free, registration-only, practical sessions (tailored to primary and secondary educators, respectively), we’ll highlight the value of delivering curriculum objectives through physical computing activities.

You’ll learn about:

  • Setting up a Raspberry Pi computer
  • Controlling LEDs using Scratch, Python, and Raspberry Pi
  • Pedagogical approaches such as pair programming and Parson’s Puzzles

Women using Raspberry Pi and Trinket

The sessions are perfect for you if you’d like an introduction to how to bring physical computing to your classroom, because no experience of physical computing is needed.

Both sessions are free and open to all teachers and educators working with learners in the relevant Key Stages.

Spaces are limited for both sessions, so make sure you register to reserve your space:

Find out how to bring more computing opportunities to your school

Following each of the physical computing sessions, you’ll have the chance to find out how else we can help you bring computing to your school! During a 45-minute panel and Q&A, our team will introduce you all things Code Club and how to set up an engaging coding club in your school, and to the comprehensive, free support we offer you through the National Centre of Computing Education. You’ll also be able to ask us any questions you have about the programmes and resources we offer to you.

There is no need to register for this ‘panel and Q&A’ part of the day — just drop in when it suits you.

Network with us and other educators

Your evening at [email protected], from 17:30 onwards, will be an informal meet and greet with the Raspberry Pi team. Snacks and refreshments will be provided, and you can drop in whenever you like.

This is your time to chat to us, discover more about the other educational activities we run, and network with other primary and secondary educators who want to encourage children and young adults to get hands-on with computing.

Code Club

We hope to see many of you there, and we’re looking forward to chatting with you!

If you have any questions about this event, or want to find out more, please contact [email protected] and we will get back to you!

How to find us

The F[email protected] is a pub located in Warehouse K next to the ExCel Center, easily accessed from the footpath between the ExCel West Entrance and Custom House DLR Station.

Map of where the Fox@ExCel London is

You will find us in a private area below the main floor of the [email protected]. There should be a sign directing you to the location, and you can also ask the pub staff to point the way.

From Custom House DLR Station:

Follow the signs along the footbridge towards the ExCel main entrance, enter the door labelled ‘[email protected]’ on the first building to your right, and head down the stairs.

From the ExCel West Entrance:

Turn right out of the main entrance and follow the footbridge towards the ExCel. You will find the entrance to the [email protected] in the second pair of doorways on your left. Enter the building and go down the stairs.

No Comments

Design 3D prints with a Raspberry Pi and BlocksCAD

BlocksCAD is a 3D model editor that you use in a web browser, and it runs on Raspberry Pi. You drag and drop code blocks to design 3D models that can be exported for 3D printing.

In this project, you will use BlocksCAD to design a 3D pendant. The pendant uses a geometric pattern based on ‘the flower of life’, a design which is often found in historical art.

The finished pendant with a cord threaded through the small hanging hoop

If you have access to a 3D printer, then you can print your pendant. The pendant is small and only uses a little bit of filament. There’s a hoop on top of the pendant so that you can put it on a necklace or cord. The pendant has a diameter of 40 mm, plus the hoop for hanging. It is 2 mm thick, so it will 3D-print quite quickly.

After this project, you’ll also be able to code your own design and create a custom pendant.

Step 01: create a hoop

This project can be completed in a web browser using BlocksCAD. Open Chromium and enter the BlocksCAD editor URL: blockscad3d.com/editor.

The design uses six interlocking hoops in the centre, and a larger hoop around the outside. As mentioned, the pendant is 40 mm wide, plus the hoop for hanging, which is 2 mm thick.

Click 3D Shapes and drag a cylinder block to the project. Create a cylinder with a radius of 12, and a height of 2 (the unit here is millimetres). Cylinders are automatically centred along the X and Y axes. Select not centered so that the pendant sits on the surface. (This means that the Z-axis value is greater than 0.)

Click on the Render button after each change to your code to see the results.

Step 02: add more hoops

Now, drag a difference block from Set Ops to encase the cylinder. Add another cylinder block in the bottom space, and this time give it a radius of 11 mm. This will remove a smaller cylinder from the centre. This creates a hoop. Click Render again to see it.

If you like, you can click on the coloured square to change the colour used in the viewer. This does not affect the colour of your pendant, as that depends on the colour of the filament that you use.

The design uses six intersecting hoops, and each hoop is moved out from the centre and rotated a different number of degrees.

In the final design, there is no central hoop: the hoops are all moved out from the centre.

Drag a translate block (from Transforms) around your code, and set X and Y to 5. This moves the first hoop into position.

Step 03: centre the hoop

Now the hoop is a little off-centre. You need multiple copies of this hoop, rotated around the centre. First, create three equally spaced hoops.

Add a count Loops block to create three hoops. To space the hoops, add a rotate Transforms block between the count loop and the translate block.

In the count block, set the i variable from 1 to 3. You’ll need to insert an arithmetic block from Math and a variable (i) block from Variables into the Z field of the rotate block.

The rotation moves each hoop by 120 × i degrees, so that the three hoops are distributed equally around the 360 degrees of a circle (360 / 3 = 120). Look at the code and make sure you understand how it works. The finished design has six hoops rather than three. In the count block, set i from 1 to 6, and set the Z rotation to 60, so it creates six equally spaced hoops.

Step 04: add a border

Next, add a border around the edge of the design. Create a centred hoop that touches the edges of the design. You can either do the maths to work out what the radius of the circle needs to be, or you can just create a circle and change the radius until it works. Either approach is fine!

Encase your code with a union block from Set Ops, to join the border to the other hoops. Add a difference block to the plus section of union, and two cylinder blocks to make the hoop.

The six hoops each have a radius of 12 mm, so the border cylinder that you are making needs to be bigger than that. You could try setting the radius to 24 mm.

To make a hoop, the radius of the second cylinder in the difference block needs to be 1 mm smaller than the radius of the first cylinder.

Adjust the size of the cylinders until the border hoop just touches the outer edges of the six inner hoops.

The radius should be around 20 mm. (As mentioned in the introduction, the finished pendant will be 40 mm in diameter.)

Step 05: work it out

You could also use maths to work out the diameter. The diameter of each inner hoop is 24 mm. If the hoops met at the centre of the pendant, the border hoop would need to have a radius of 24 mm. But the inner hoops overlap, as they are translated 5 mm along the X and Y axes.

This removes a section from the radius. This section is on the arc, 5 mm from the origin, so we need to remove 5 mm from 24 mm. Thus the inner radius of the border hoop should be 19 mm.

Maths is really useful when you need to be accurate. But it’s fine to just change things until you get the result you need.

Step 06: add a hanging hoop

Now, add a small hanging hoop through which you can thread a cord to make a necklace.

Click the [+] on the union block to add another section to add the new hoop.

At the moment, the position of the hanging hoop isn’t very visually pleasing.

Add a rotate block to move the inner hoops so that the hanging hoop is centred over one of the gaps between them.

Step 07: experiment with shapes

Experiment and change some values in your pendant. For example, change the number of hoops, or the rotation.

You could also try to use cuboids (cubes) instead of cylinders to create a pattern.

Step 08: export to STL

BlocksCAD 3D can export an STL file for 3D printing. Render your model and then click on Generate STL. Remember where you save the STL file. Now 3D-print your pendant using a filament of the colour of your choice. Very carefully remove the 3D print from the print bed. The pendant is thin, so it’s quite delicate.

You might need to remove small strands of filament (especially from the hanging hoop) to tidy up the print.

Thread the pendant on to a chain or cord. If you want to use a thicker cord or necklace, then you can adjust the design to have a larger hanging hoop.

Check your code

You can download the full code and check it against your own. You can also check out our projects page, where you’ll find more images and step-by-step instructions for using BlocksCAD.

This project was created by Dr Tracy Gardner and the above article was featured in this month’s issue of The MagPi magazine. Get your copy of The MagPi magazine issue 89 today from your local newsagent, the Raspberry Pi Store, Cambridge, or online from Raspberry Pi Press.

5 Comments

How to set up OctoPrint on your Raspberry Pi

If you own a 3D printer, you’ll likely have at least heard of OctoPrint, created by Gina Häußge and maintained by her and Guy Sheffer! OctoPrint has the potential to transform your 3D printing workflow for the better, and it’s very easy to set up. This guide will take you through the setup process step by step, and give you some handy tips along the way.

Octoprint

Before we start finding out how to install OctoPrint, let’s look at why you might want to. OctoPrint is a piece of open-source software that allows us to add WiFi functionality to any 3D printer with a USB port (which is pretty much all of them). More specifically, you’ll be able to drop files from your computer onto your printer, start/stop prints, monitor your printer via a live video feed, control the motors, control the temperature, and more, all from your web browser. Of course, with great power comes great responsibility — 3D printers have parts that are hot enough to cause fires, so make sure you have a safe setup, which may include not letting it run unsupervised.

OctoPrint ingredients

• Raspberry Pi 3 (or newer)
MicroSD card
• Raspberry Pi power adapter
• USB cable (the connector type will depend on your printer)
• Webcam/Raspberry Pi Camera Module (optional)
• 3D-printed camera mount (optional)

Before we get started, it is not recommended that anything less than a Raspberry Pi 3 is used for this project. There have been reports of limited success using OctoPrint on a Raspberry Pi Zero W, but only if you have no intention of using a camera to monitor your prints. If you want to try this with a Pi Zero or an older Raspberry Pi, you may experience unexpected print failures.

Download OctoPi

Firstly, you will need to download the latest version of OctoPi from the OctoPrint website. OctoPi (created by Guy Sheffer) is a Raspbian distribution that comes with OctoPrint, video streaming software, and CuraEngine for slicing models on your Raspberry Pi. When this has finished downloading, unzip the file and put the resulting IMG file somewhere handy.

Next, we need to flash this image onto our microSD card. We recommend using Etcher to do this, due to its minimal UI and ease of use; plus it’s also available to use on both Windows and Mac. Get it here: balena.io/etcher. When Etcher is installed and running, you’ll see the UI displayed. Simply click the Select Image button and find the IMG file you unzipped earlier. Next, put your microSD card into your computer and select it in the middle column of the Etcher interface.

Finally, click on Flash!, and while the image is being burned onto the card, get your WiFi router details, as you’ll need them for the next step.

Now that you have your operating system, you’ll want to add your WiFi details so that the Raspberry Pi can automatically connect to your network after it’s booted. To do this, remove the microSD card from your computer (Etcher will have ‘ejected’ the card after it has finished burning the image onto it) and then plug it back in again. Navigate to the microSD card on your computer — it should now be called boot — and open the file called octopi-wpa-supplicant.txt. Editing this file using WordPad or TextEdit can cause formatting issues; we recommend using Notepad++ to update this file, but there are instructions within the file itself to mitigate formatting issues if you do choose to use another text editor. Find the section that begins ## WPA/WPA2 secured and remove the hash signs from the four lines below this one to uncomment them. Finally, replace the SSID value and the PSK value with the name and password for your WiFi network, respectively (keeping the quotation marks). See the example below for how this should look.

Further down in the file, there is a section for what country you are in. If you are using OctoPrint in the UK, leave this as is (by default, the UK is selected). However, if you wish to change this, simply comment the UK line again by adding a # before it, and uncomment whichever country you are setting up OctoPrint in. The example below shows how the file will look if you are setting this up for use in the US:

# Uncomment the country your Pi is in to activate Wifi in RaspberryPi 3 B+ and above
# For full list see: https://en.wikipedia.org/ wiki/ISO_3166-1_alpha-2
#country=GB # United Kingdom
#country=CA # Canada
#country=DE # Germany
#country=FR # France
country=US # United States

When the changes have been made, save the file and then eject/unmount and remove the microSD card from your computer and put it into your Raspberry Pi. Plug the power supply in, and go and make a cup of tea while it boots up for the first time (this may take around ten minutes). Make sure the Raspberry Pi is running as expected (i.e. check that the green status LED is flashing intermittently). If you’re using macOS, visit octopi.local in your browser of choice. If you’re using Windows, you can find OctoPrint by clicking on the Network tab in the sidebar. It should be called OctoPrint instance on octopi – double-clicking on this will open the OctoPrint dashboard in your browser.

If you see the screen shown above, then congratulations! You have set up OctoPrint.

Not seeing that OctoPrint splash screen? Fear not, you are not the first. While a full list of issues is beyond the scope of this article, common issues include: double-checking your WiFi details are entered correctly in the octopi-wpa-supplicant.txt file, ensuring your Raspberry Pi is working correctly (plug the Raspberry Pi into a monitor and watch what happens during boot), or your Raspberry Pi may be out of range of your WiFi router. There’s a detailed list of troubleshooting suggestions on the OctoPrint website.

Printing with OctoPrint

We now have the opportunity to set up OctoPrint for our printer using the handy wizard. Most of this is very straightforward — setting up a password, signing up to send anonymous usage stats, etc. — but there are a few sections which require a little more thought.

We recommend enabling the connectivity check and the plug-ins blacklist to help keep things nice and stable. If you plan on using OctoPrint as your slicer as well as a monitoring tool, then you can use this step to import a Cura profile. However, we recommend skipping this step as it’s much quicker (and you can use a slicer of your choice) to slice the model on your computer, and then send the finished G-code over.

Finally, we need to put in our printer details. Above, we’ve included some of the specs of the Creality Ender-3 as an example. If you can’t find the exact details of your printer, a quick web search should show what you need for this section.

The General tab can have anything in it, it’s just an identifier for your own use. Print bed & build volume should be easy to find out — if not, you can measure your print bed and find out the position of the origin by looking at your Cura printer profile. Leave Axes as default; for the Hotend and extruder section, defaults are almost certainly fine here (unless you’ve changed your nozzle; 0.4 is the default diameter for most consumer printers).

OctoPrint is better with a camera

Now that you’re set up with OctoPrint, you’re ready to start printing. Turn off your Raspberry Pi, then plug it into your 3D printer. After it has booted up, open OctoPrint again in your browser and take your newly WiFi-enabled printer for a spin by clicking the Connect button. After it has connected, you’ll be able to set the hot end and bed temperature, then watch as the real-time readings are updated.

In the Control tab, we can see the camera stream (if you’re using one) and the motor controls, as well as commands to home the axes. There’s a G-code file viewer to look through a cross-section of the currently loaded model, and a terminal to send custom G-code commands to your printer. The last tab is for making time-lapses; however, there is a plug-in available to help with this process.

Undoubtedly the easiest way to set up video monitoring of your prints is to use the official Raspberry Pi Camera Module. There are dozens of awesome mounts on Thingiverse for a Raspberry Pi Camera Module, to allow you to get the best angle of your models as they print. There are also some awesome OctoPrint-themed Raspberry Pi cases to house your new printer brains. While it isn’t officially supported by OctoPrint, you can use a USB webcam instead if you have one handy, or just want some very high-quality video streams. The OctoPrint wiki has a crowdsourced list of webcams known to work, as well as a link for the extra steps needed to get the webcam working correctly.

As mentioned earlier, our recommended way of printing a model using OctoPrint is to first use your slicer as you would if you were creating a file to save to a microSD card. Once you have the file, save it somewhere handy on your computer, and open the OctoPrint interface. In the bottom left of the screen, you will see the Upload File button — click this and upload the G-code you wish to print.

You’ll see the file/print details appear, including information on how long it’ll take for the object to print. Before you kick things off, check out the G-code Viewer tab on the right. You can not only scroll through the layers of the object, but, using the slider at the bottom, you can see the exact pattern the 3D printer will use to ‘draw’ each layer. Now click Print and watch your printer jump into action!

OctoPrint has scores of community-created plug-ins, but our favourite, Octolapse, makes beautiful hypnotic time-lapses. What makes them so special is that the plug-in alters the G-code of whatever object you are printing so that once each layer has finished, the extruder moves away from the print to let the camera take an unobstructed shot of the model. The result is an object that seems to grow out of the build plate as if by magic. You’ll not find a finer example of it than here.

Satisfying 3D Prints TimeLapse episode 7 (Prusa I3 Mk3 octopi)

3D Printing timelapses of models printed on the Prusa i3 MK3! Here’s another compilation of my recent timelapses. I got some shots that i think came out really great and i hope you enjoy them! as always if you want to see some of these timelapses before they come out or want to catch some behind the scenes action check out my instagram!

Thanks to Gina and Guy

OctoPrint was created and is maintained by Gina Häußge (@foosel) and Guy Sheffer (@GuySoft)! A big thank you to both of them for putting in many, many volunteer hours to provide the world with an amazing piece of free, open-source software.

Head over to the OctoPrint website to find out how you can support OctoPrint’s continued existence.

Thanks to Glenn and HackSpace magazine

This tutorial comes fresh from the pages of HackSpace magazine issue 26 and was written by Glenn Horan. Thanks, Glenn.

To get your copy of HackSpace magazine issue 26, visit your local newsagent, the Raspberry Pi Store, Cambridge, or the Raspberry Pi Press online store.

Fans of HackSpace magazine will also score themselves a rather delightful Adafruit Circuit Playground Express with a 12-month subscription. Sweet!

8 Comments

What makes a mechanical keyboard ‘clicky’?

In our latest video for the newly rebranded Raspberry Pi Press YouTube channel, Custom PC’s Edward Chester explains what mechanical keyboards are, and why they’re so clicky.

How do mechanical keyboards work?

So, what makes a mechanical keyboard ‘mechanical’? And why are some mechanical keyboards more ‘clicky’ than others? Custom PC’s Edward Chester explains all. Check out our Elite List of mechanical keyboards: https://rpf.io/elite-list-mechanical-keyboard Subscribe to our channel: https://rpf.iopressytsub Visit the Custom PC magazine website: https://rpf.io/ytcustompc Our magazines and books: https://rpf.io/ytpress Raspberry Pi Press is the publishing imprint of Raspberry Pi Trading Ltd., a subsidiary of The Raspberry Pi Foundation.

Custom PC is one of the many magazines produced by Raspberry Pi Press, the publishing imprint of Raspberry Pi Trading Ltd; it does exactly what it says on the tin cover: provide everything you need to know about the ins and outs of custom PC building and all the processes that make the topic so fascinating.

Be sure to subscribe to the Raspberry Pi Press YouTube channel, because we’ll be offering more videos from Custom PC, alongside content from The MagPi magazine, HackSpace magazine, Wireframe, and our future standalone book publications, such as The Official Raspberry Pi Beginner’s Guide and An Introduction to C & GUI Programming (the latter of which is currently on sale with free worldwide shipping!), on that channel very soon.

9 Comments

How to set up and use your brand-new Raspberry Pi

If you’re reading this, it’s probably because you bagged yourself a brand-new Raspberry Pi for Christmas, and you’re wondering what you should do next.

Well, look no further, for we’re here to show you the ropes. So, sit back, pull on a pair of those nice, warm socks that you found in your stocking, top up your eggnog, and let’s get started.

Do I need an operating system?

Unless your Raspberry Pi came in a kit with a preloaded SD card, you’ll need to download an operating system. Find a microSD card (you may have one lurking in an old phone) and click here to download the latest version of Raspbian, our dedicated Raspberry Pi operating system.

To get Raspbian onto the microSD card, use free online software such as Etcher. Here’s a video from The MagPi magazine to show you how to do it.

Use Etcher to install operating systems onto an SD card

Lucy Hattersley shows you how to install Raspberry Pi operating systems such as Raspbian onto an SD card, using the excellent Etcher. For more tutorials, check out The MagPi at http://magpi.cc ! Don’t want to miss an issue? Subscribe, and get every issue delivered straight to your door.

Turn it on!

Here, this video should help:

How to set up your Raspberry Pi || Getting started with #RaspberryPi

Learn #howto set up your Raspberry Pi for the first time, from plugging in peripherals to setting up #Raspbian.

Insert your microSD card into your Raspberry Pi. The microSD card slot should be fairly easy to find, and you need to make sure that you insert it with the contact side facing the board. If you feel like you’re having to force it in, you have it the wrong way round.

Next, plug your HDMI cable into the Raspberry Pi and your chosen HDMI display. This could be a computer monitor or your home television.

If you’re using a Raspberry Pi Zero or Raspberry Pi Zero W, you’ll need a mini HDMI to HDMI cable or adapter.

If you’re using a Raspberry Pi 4, you’ll need a micro HDMI to HDMI cable or adapter.

Raspberry Pi official keyboard

Next, plug in any peripherals that you want to use, such as a mouse or keyboard.

Lastly, plug your power cable into your Raspberry Pi. This is any standard micro USB cable (if you have an Android phone, check your phone charger!), or a USB-C power cable if you’re using the Raspberry Pi 4.

Most kits will come with all of the cables and adapters that you need, so look in the box first before you start rummaging around your home for spare cables.

Once the power cable is connected, your Raspberry Pi will turn on. If it doesn’t, check that your SD card is inserted correctly and your cables are pushed in fully.

Still in doubt? Here’s Sally Le Page with more:

How to use a Raspberry Pi ft. Dr Sally Le Page

What is a Raspberry Pi and what do you need to get started? Our ‘How to use a Raspberry Pi’ explainer will take you through the basics of your #RaspberryPi, and how you can get hands-on with Raspbian and #coding language tools such as Scratch and Mu, with our host, Dr Sally Le Page.

Once on, the Raspberry Pi will direct you through a setup process that allows you to change your password and connect to your local wireless network.

And then, you’re good to go!

Now what?

Now what? Well, that depends on what you want to do with your Raspberry Pi.

Many people use their Raspberry Pi to learn how to code. If you’re new to coding, we suggest trying out a few of our easy online projects to help you understand the basics of Scratch — the drag-and-drop coding platform from MIT — and Python — a popular general-purpose programming language and the reason for the “Pi” in Raspberry Pi’s name.

Maybe you want to use your Raspberry Pi to set up control of smart devices in your home, or build a media centre for all your favourite photos and home movies. Perhaps you want to play games on your Raspberry Pi, or try out various HATs and add-ons to create fun digital making projects.

Sally Le Page

Whatever you want to do with your Raspberry Pi, the internet is full of brilliant tutorials from the Raspberry Pi Foundation and online creators.

Some places to start

Get involved with the Raspberry Pi Foundation

From community events and magazines to online learning and space exploration – there are so many ways to get involved with the Raspberry Pi Foundation.

The Raspberry Pi community is huge, and spreads across the entire globe, bringing people together to share their love of coding, digital making, and computer education. However you use your Raspberry Pi, know that, by owning it, you’ve helped the non-profit Raspberry Pi Foundation to grow, bringing more opportunities to kids and teachers all over the world. So, from the bottom of our hearts this festive season, thank you.

We can’t wait to see what 2020 brings!

 

2 Comments

Brass freeform circuit (Raspberry Pi) Instagram tracker

A few of our favourite online makers decided to take part in a makers’ Secret Santa, producing home-made gifts based on their skills. So, OBVIOUSLY, Estefannie used a Raspberry Pi. Thanks, Estefannie.

HOW I HACKED INSTAGRAM FOR MY SECRET SANTA // MAKE SOMETHING

I got in a Maker Secret Santa this year so I decided to make a thing and hack Instagram for it. #YTMakersSecretSanta MAKERS SECRET SANTA! FOLLOW EVERYONE: Kids Invent Stuff https://www.youtube.com/channel/UC-glo52BMvZH9PPUamjGIcw Colin Furze https://www.youtube.com/user/colinfurze The Hacksmithhttps://www.youtube.com/user/MstrJames Look Mum No Computer https://www.youtube.com/channel/UCafxR2HWJRmMfSdyZXvZMTw Sufficiently Advanced https://www.youtube.com/channel/UCVS89U86PwqzNkK2qYNbk5A Subscribe to my channel if you’d like to be the first to know when I publish the next video :) Let me know what other videos you would like to see.

In the video above, Estefannie uses a Raspberry Pi to hack Instagram to illuminate a handmade freeform circuit whenever Kids Invent Stuff gains a like on a post.

“But why not use the Instagram API?”, I hear you cry. Well, as Estefannie explains, she wanted the gift to be a surprise, and if she had used the Instagram API, she would have had to have asked them for their details in order to access it.

Watch to the end of the video to see the gift that Estefannie received from her Secret Santa, a certain Colin Furze. You can see his complete build video for the Cat-o-Matic below.

CAT-O-MATIC auto cat feeder/terrifier YTMakers Secret Santa

Fear not your cat feeding issues are sorted………..Furzestyle No cat was harmed in making of this but it did run off……….but came back and is fine. Thanks to the Kids Invent Stuff channel for organising this Secret Santa check them out here https://www.youtube.com/channel/UC-glo52BMvZH9PPUamjGIcw And the other channels involved Estefannie Explains https://www.youtube.com/user/estefanniegg Sufficiently Advanced https://www.youtube.com/channel/UCVS89U86PwqzNkK2qYNbk5A Look Mum No Computer https://www.youtube.com/channel/UCafxR2HWJRmMfSdyZXvZMTw The Hacksmiths https://www.youtube.com/user/MstrJames Check out the new FURZE Merch store.

No Comments

Raspberry Pi 3 baby monitor | Hackspace magazine #26

You might have a baby/dog/hamster that you want to keep an eye on when you’re not there. We understand: they’re lovely, especially hamsters. Here’s how HackSpace magazine contributor Dr Andrew Lewis built a Raspberry Pi baby cam to watch over his small creatures…

When a project is going to be used in the home, it pays to take a little bit of extra time on appearance

Wireless baby monitors

You can get wireless baby monitors that have a whole range of great features for making sure your little ones are safe, sound, and sleeping happily, but they come with a hefty price tag.

In this article, you’ll find out how to make a Raspberry Pi-powered streaming camera, and combine it with a built-in I2C sensor pack that monitors temperature, pressure, and humidity. You’ll also see how you can use the GPIO pins on Raspberry Pi to turn an LED night light on and off using a web interface.

The hardware for this project is quite simple, and involves minimal soldering, but the first thing you need to do is to install Raspbian onto a microSD card for your Raspberry Pi. If you’re planning on doing a headless install, you’ll also need to enable SSH by creating an empty file called SSH on the root of the Raspbian install, and a file with your wireless LAN details called wpa_supplicant.conf.

You can download the code for this as well as the 3D-printable files from our GitHub. You’ll need to transfer the code to the Raspberry Pi. Next, connect the camera, the BME280 board, and the LEDs to the Raspberry Pi, as shown in the circuit diagram.

The BME280 module uses the I2C connection on pins 3 and 5 of the GPIO, taking power from pins 1 and 9. The LEDs connect directly to pins 19 and 20, and the camera cable fits into the camera connector.

Insert the microSD card into the Raspberry Pi and boot up. If everything is working OK, you should be able to see the IP address for your device listed on your hub or router, and you should be able to connect to it via SSH. If you don’t see the Raspberry Pi listed, check your wireless connection details and make sure your adapter is supplying enough power. It’s worth taking the time to assign your Raspberry Pi with a static IP address on your network, so it can’t change its IP address unexpectedly.

Smile for Picamera

Use the raspi-config application to enable the camera interface and the I2C interface. If you’re planning on modifying the code yourself, we recommend enabling VNC access as well, because it will make editing and debugging the code once the device is put together much easier. All that remains on the software side is to update APT, download the babycam.py script, install any dependencies with PIP, and set the script to run automatically. The main dependencies for the babycam.py script are the RPi.bme280 module, Flask, PyAudio, picamera, and NumPy. Chances are that these are already installed on your system by default, with the exception of RPi.bme280, which can be installed by typing sudo pip3 install RPi.bme280 from the terminal. Once all of the dependencies are present, load up the script and give it a test run, and point your web browser at port 8000 on the Raspberry Pi. You should see a webpage with a camera image, controls for the LED lights, and a read-out of the temperature, pressure, and humidity of the room.

Finishing a 3D print by applying a thin layer of car body filler and sanding back will give a much smoother surface. This isn’t always necessary, but if your filament is damp or your nozzle is worn, it can make a model look much better when it’s painted

The easiest way to get the babycam.py script to run on boot is to add a line to the rc.local file. Assuming that the babycam.py file is located in your home directory, you should add the line python3 /home/pi/babycam.py to the rc.local file, just before the line that reads exit 0. It’s very important that you include the ampersand at the end of the line, otherwise the Python script will not be run in a separate process, the rc.local file will never complete, and your Raspberry Pi will never boot.

Tinned Raspberry Pi

With the software and hardware working, you can start putting the case together. You might need to scale the 3D models to suit the tin can you have before you print them out, so measure your tin before you click Print. You’ll also want to remove any inner lip from the top of the can using a can opener, and make a small hole in the side of the can near the bottom for the USB power cable. Next, make a hole in the bottom of the can for the LED cables to pass through.

If you want to add more than a couple of LEDs (or want to use brighter LEDs), you should connect your LEDs to the power input, and use a transistor on the GPIO to trigger them

If you haven’t already done so, solder appropriate leads to your LEDs, and don’t forget to put a 330 Ω resistor in-line on the positive side. The neck of the camera is supported by two lengths of aluminium armature wire. Push the wire up through each of the printed neck pieces, and use a clean soldering iron to weld the pieces together in the middle. Push the neck into the printed top section, and weld into place with a soldering iron from underneath. Be careful not to block the narrow slot with plastic, as this is where the camera cable passes up through the neck and into the camera.

You need to mount the BME280 so that the sensor is exposed to the air in the room. Do this by drilling a small hole in the 3D-printed top piece and hot gluing the sensor into position. If you’re going to use the optional microphone, you can add an extra hole and glue the mic into place in the same way. A short USB port extender will give you enough cable to plug the USB microphone into the socket on your Raspberry Pi

Paint the tin can and the 3D-printed parts. We found that spray blackboard paint gives a good effect on 3D-printed parts, and PlastiKote stone effect paint made the tin can look a little more tactile than a flat colour. Once the paint is dry, pass the camera cable up through the slot in the neck, and then apply the heat-shrink tubing to cover the neck with a small gap at the top and bottom. Connect the camera to the top of the cable, and push the front piece on to hold it into place. Glue shouldn’t be necessary, but a little hot glue might help if the front parts don’t hold together well.

Push the power cable through the hole in the case, and secure it with a knot and some hot glue. Leave enough cable free to easily remove the top section from the can in future without stressing the wires.

If you’re having trouble getting the armature wire through the 3D-printed parts, try using a drill to help twist the wire through

This is getting heavy

Glue the bottom section onto the can with hot glue, and hot-glue the LEDs into place on the bottom, feeding the cable up through the hole and into the GPIO header. This is a good time to hot-glue a weight into the bottom of the can to improve its stability. I used an old weight from some kitchen scales, but any small weight should be fine. Finally, fix the Raspberry Pi into place on the top piece by either drilling or gluing, then reconnect the rest of the cables, and push the 3D-printed top section into the tin can. If the top section is too loose, you can add a little bit of hot glue to hold things together once you know everything is working.

With the right type of paint, even old tin cans make a good-looking enclosure
for a project

That should be all of the steps complete. Plug in the USB and check the camera from a web browser. The babycam.py script includes video, sensors, and light control. If you are using the optional USB microphone, you can expand the functionality of the app to include audio streaming, use cry detection to activate the LEDs (don’t make the LEDs too stimulating or you’ll never get a night’s sleep again), or maybe even add a Bluetooth speaker and integrate a home assistant.

HackSpace magazine issue 26

HackSpace magazine is out now, available in print from your local newsagent, the Raspberry Pi Store in Cambridge, and online from Raspberry Pi Press.

If you love HackSpace magazine as much as we do, why not have a look at the subscription offers available, including the 12-month deal that comes with a free Adafruit Circuit Playground!

And, as always, you can download the free PDF here.

4 Comments

Hands-free Raspberry Pi Airdrum | The MagPi 89

We’re always going to beat the drum for projects that seek to improve the lives of people with disabilities. That’s why we fell in love with the Airdrum, which was created to allow anyone, in particular people with disabilities, to play a musical instrument.

The Airdrum – speaker and MIDI song demo

This video demonstrates the speaker functionality with playing a song from a midi file on the Raspberry pi using Fluidsynth. (The hand movement is just for fun) The Airdrum is powered by a power supply for demonstration purposes.

Raspberry Pi Airdrum

Designed by two Dutch electrical engineering students, Alessandro Verdiesen and Luuk van Kuijk, the project came to life during their first year at university. “We aimed to develop a musical instrument that could be used to generate music by moving,” explains Alessandro, who has recently been working on a fully modular version 2.0.

After speaking with therapists and health care institutions, the pair decided to make a drum that could be played by moving objects above a set of panels and they put Raspberry Pi at its heart. “The basic functionality of the Airdrum is to detect the distance of an object above each connected panel and play a sound,” says Alessandro. “These panels contain IR distance sensors and coloured LEDs for visual feedback.”

Sorting the bass-ics

From the outset, Alessandro and Luuk needed their project to be accessible, affordable, adjustable and, in the latest iteration, modular, with each drummable section containing an Arduino Mini, an IR sensor, and LEDs. They also wanted the instrument to have a broader appeal and be suitable for everybody, including professional musicians, so it had to sound as good as it played.

“We needed it to be as versatile as it can be and allow people to choose custom sounds, colours, and lights while being a standalone instrument and a multi-purpose input/output device,” Alessandro reveals. To make it easy to place the modules together, they used magnetic connections between the panels. This allowed them to be placed together in various configurations, with a minimum of two per Airdrum.

These speaker modules can bookend the sensor panels, although the sound can be outputted via the Raspberry Pi to a different sound system too

With a structured plan that divided milestones into electrical, mechanical, and software components, the pair used 3D printing for the enclosure, which allowed rapid prototyping for quick interactions. They used speaker panels to bookend the modules for auditive feedback.

Panel beating

Each of the panels includes a buck converter so that the current through the connectors can be drawn to a minimum. The master module panel contains Raspberry Pi 3 running custom programs written in C and Python, as well as the free, open-source software synthesiser FluidSynth. It connects to the other panels through I2C, constantly polling the panels for their measurements and for the configuration of their colour.

“If an object has been detected, the Raspberry Pi generates a sound and outputs it on the AUX audio jack,” says Alessandro. “This output is then used by the mono D-class amplifiers in the speaker panels to make the tones audible.”

Custom-made Airdrum detecting modules fit snugly into their 3D-printed cases and can be arranged in a full circle if you have enough of them

The pair chose Raspberry Pi because of its versatility and technical prowess. “The Airdrum needed something powerful enough to run software to generate audio through MIDI using the input from the panels and the Raspberry Pi is a great universal and low-cost development board with integrated DAC for audio,” explains Alessandro. “It also has a I2C bus to act as a data transfer master unit and they’re compact enough to fit inside of the casing. The Raspberry Pi enables easy implementation of future upgrades, too.”

Indeed, the pair want to explore the MIDI possibilities and connect the Airdrum with a smartphone or tablet. An app is being planned, as is a built-in synthesiser. “The people we have shown the Airdrum to have been very enthusiastic,” Alessandro says. “That has been very motivating.”

Read The MagPi for free!

There’s loads more amazing projects and tutorials in The MagPi #89, out today, including our 50 tools and tips for makers, and a huge accessory guide! You can get The MagPi #89 online at our store, or in print from the Raspberry Pi Store in Cambridge and all good newsagents and supermarkets. You can also access The MagPi magazine via our Android and iOS apps.

Don’t forget our amazing subscription offers either, which include a free gift of a Raspberry Pi Zero W when you subscribe for twelve months.

And, as with all our Raspberry Pi publications, you can download the free PDF from our website.

2 Comments

How to run a script at start-up on a Raspberry Pi using crontab

Do you need to run a script whenever your Raspberry Pi turns on? Here’s Estefannie to explain how to edit crontab to do exactly that.

How to start a script at start-up on a Raspberry Pi // LEARN SOMETHING

Do you want your Raspberry Pi to automatically run your code when it is connected to power? Then you are in the right place. In this new #LEARNSOMETHING video I show you how to make you Raspberry Pi run your script automatically when it is connected to a power source.

Running script on startup

While there are many ways of asking your Raspberry Pi to run a script on start-up, crontab -e is definitely one of the easiest.

AND, as Estefannie explains (in part thanks to me bugging asking her to do so), if you create a run folder on your desktop, you can switch out the Python scripts you want to run at start-up whenever you like and will never have to edit crontab again!

Weeeeee!

Now go write some wonderful and inspiring festive scripts while I take a well-earned nap. I just got off a plane yet here I am, writing blog posts for y’all because I love you THAT DARN MUCH!

A fluffy cat

This is Teddy. Teddy is also in the video.

And don’t forget to like and subscribe for more Estefannie Explains it All goodness!

20 Comments