Schlagwort: tech articles

  • Win a Raspberry Jam Bundle!

    Win a Raspberry Jam Bundle!

    Reading Time: < 1 minute

    We were honoured to find out that a year long subscription to The MagPi is part of the Raspberry Jam bundle sent out to event organisers over the next couple of months, and thought we’d give our readers a chance to win a version of the bundle with a Raspberry Pi Zero 2 W and a Raspberry Pi Camera Module 2! You can enter below…

  • ED-HMI3020 Pi 5 touchscreen review

    ED-HMI3020 Pi 5 touchscreen review

    Reading Time: 2 minutes

    An upgrade over the HMI3010 models, the HMI3020 adds RS232 and RS485 interfaces, as well as 3.5mm headphone and mic jacks. The key addition, however, is an M.2 socket. To access it, you’ll need to unscrew Raspberry Pi 5 and the case from the rear of the unit, then you can use the M.2 slot inside to add an NVMe 2230, 2242, or 2260 SSD.

    Mounted on the rear, Raspberry Pi 5 has its main ports accessible through the rugged case

    Touch control

    Our unit’s microSD card had Raspberry Pi OS Bookworm pre-installed with the drivers for the ten-point touchscreen, which worked instantly upon bootup. As we’ve found with other Raspberry Pi touchscreens, there’s no right-click functionality by default and we also couldn’t double-click files to open them (so had to enable one-click opening in the File Manager). There was no on-screen keyboard available either, though we managed to get one running with a workaround from the Raspberry Pi forums.

    The EDI-HMI3020 also comes with an optional 8MP front-facing camera – a Camera Module V2 – for video conferencing and suchlike, making it a versatile touchscreen tablet.

    Verdict

    8/10

    A robust touchscreen panel with well-protected Raspberry Pi 5 mounted on the rear and the option to add an M.2 SSD

    Specs

    Features: 10.1-inch screen with ten-point touch input, Raspberry Pi with 4GB or 8GB RAM, optional front-facing camera

    Ports: 2 × USB 3.0, 2 × USB 2.0, 1 × USB-C power, 2 × micro-HDMi, Ethernet (with optional PoE), RS232 and RS485, M.2 SSD socket (internal)

    Dimensions: 258 × 172 × 39.6mm; 1000g

  • GitHub Universe attendees treated to custom RP2040 Badgers

    GitHub Universe attendees treated to custom RP2040 Badgers

    Reading Time: 2 minutes

    Special custom gift

    GitHub’s Martin Woodward made a dedicated repo to help conference attendees learn how to hack their badges. Lo and behold, in it he confirms that the hackable conference badges are indeed a custom version of the Badger 2040 that Pimoroni made especially for GitHub.

    An RP2040 is running MicroPython which throws text up on a built-in 2.9-inch E Ink display. All five buttons dotted around the edge of the screen are user-configurable, and there’s also a Stemma QT expansion port so you can connect your own accessories, such as sensors. You can power the badge via its USB-C port, or use either a 2 × AAA battery pack or a standard 3.7V LiPo cell. It’s “extremely low power”, according to Martin, which is what you need when you’re wandering around a conference all day and don’t want to be tied to a power outlet.

    Open source ideas

    Custom PCB aside, the GitHub Universe Badger is electronically identical to the original Badger 2040. This means conference attendees can make use of all the open-source examples already out there, as people have shared cool things they’ve done with their Badger – the devices aren’t tied to a one-time use as a conference badge. Pre-loaded goodies on the GitHub Universe Badger include an eBook reader, to-do list, and image viewer.

    Want cool badges for your event?

    Martin’s GitHub repo pointed us towards Badge.team, an open-source community for people who want to create excellent badges for events. There are some magical designs on display in the gallery already. They’re also looking for volunteers to support the project, so join their Telegram group or Discord channel if you think you can help people make next-level event badges.

  • PicoZX Handheld

    PicoZX Handheld

    Reading Time: 2 minutes

    Peter Misenko (Bobricius to his friends on GitHub, and YouTube, is the brain behind the original design for PicoZX, and PicoZX Handheld – the Raspberry Pi Pico-based Spectrum emulator that inspired Ken.

    Peter’s short and snappy demo video explains the project, but Ken’s longer build video, goes into more detail on how he made his version.

    Components being soldered onto the PicoZX Board

    Reason number one why I personally would argue [are you sure you want to do this – Ed.] that PicoZX might be even better than the original ZX Spectrum: it exists in the now. Reason number two: it’s cuter because it’s smaller, meaning you can also use it as a handheld device and carry it around in your pocket. Reason number three: it’s built on Raspberry Pi Pico.

    Seeing as Sinclair was a pioneer of affordable home computing with the ZX Spectrum, it’s pretty cool to see a modern-day emulator running on a microcontroller which costs just $4/£4.

    How is it made?

    PicoZX is made up of several custom PCBs, but the Pico and most of the device’s parts are soldered onto one main board. There’s also a faceplate, which is largely cosmetic and holds everything in place nicely, and a backplate, which holds the battery and the charge controller. The other four PCBs frame the device around its edges, leaving openings for the microSD card and USB ports.

    Ken’s version of the PicoZX Handheld in eye-catching black

    A 2.8-inch IPS display soldered directly onto the main PCB is the screen for the device. Fifty 7mm tactile switches give the tiny QWERTY keyboard its clickety tactility. PicoZX can also be used with a joystick; Ken showcases an Atari 2600 joystick in his build video.

    How does it work?

    The Raspberry Pi Pico runs Fruit-Bat’s ZX Spectrum emulator and Jean-Marc Harvengt’s Multi-Computer Machine Emulator (M.CU.M.E). So not only do you have all of the original ZX Spectrum programs at your fingertips, but you can also emulate other devices – such as the Commodore 64, Atari 2600, and ColecoVision – all in one compact handheld device. You’ll have 1980s nostalgia coming out of your ears after a couple of hours with this thing.

    Remembering Clive Sinclair

    I’d wager you’re an admirer of Sir Clive Sinclair, the inventor of the ZX Spectrum, who died in 2021. Raspberry Pi co-founder Liz Upton wrote a short but sweet note on the day we heard the news, and the comments section quickly filled with stories from people who had been inspired by his work. Have a look if you’d like to take a scroll down memory lane.

  • Argon ONE V3 M.2 NVME case review

    Argon ONE V3 M.2 NVME case review

    Reading Time: 4 minutes

    This month we have the hotly anticipated Argon ONE V3 M.2 NVMe PCIe Case. Hopes are high for this one and we can tell you it hits home runs all the way. Redesigned for Raspberry Pi 5 this board combines the features of the Argon ONE V2 with the – previously separate – M.2 Expansion Board add-on to create an all-in-one computer case with super-fast, and super-large, storage that also cleverly uses passive cooling and heatsinks to keep everything running. This is the one we have been waiting for.

    Underneath Argon ONE V3 is a removable thermal heatsink to fit the M.2 NVMe drive. Here we can also see the power button, full-sized HDMI slot, 3.5mm audio jack and Raspberry Pi 5 ports

    All together now

    The Argon ONE is Argon40’s flagship case, containing a daughterboard for Raspberry Pi that adds additional features such as full-sized HDMI sockets and an infrared (IR) receiver.

    On the base of Argon ONE V3 is a removable cover that provides access to the M.2 NVMe socket. Here you can insert any M.2 NVMe with M-Key up to 2280 size. The flap is marked “THERML” which nods to its aluminium heatsink and a long strip of thermal pad is included to transfer the heat out into the case.

    Two more silicon pads are included to connect Raspberry Pi’s CPU and PMIC (Power Management Integrated Circuit) to the case.

    Alongside this impressive passive cooling is a redesigned 30mm fan and blower. This is repositioned at an angle to be “more efficient and quiet”, and we found it unobtrusive even when stress testing.

    Argon ONE V3 now sports Raspberry Pi’s RP2040 microcontroller to control various functions like fan speed and power management (via jumper pins on the daughter board). The power button is less of a novelty now that Raspberry Pi 5 itself features one. However, the presence of a 3.5mm audio jack will be a welcome addition for audio buffs now that it has been removed from Raspberry Pi 5’s main board.

    One advantage over the Argon ONE V2 board is that the M.2 NVMe now connects directly to the PCIe socket on Raspberry Pi 5. This leaves all four USB-A sockets available.

    A removable magnetic flap on top of the case provides access to repositioned GPIO pins alongside a handy pinout guide.

    Assembly and testing

    Putting together the Argon ONE V3 was a relatively painless process thanks to the included assembly instructions. Raspberry Pi 5 is connected to the HDMI daughterboard, and the PCIE cable is used to connect the bottom half of the case to Raspberry Pi 5. Then the whole thing is screwed together. Finally, the M.2 NVMe storage is connected to the underside making it possible to upgrade the drive without opening the whole case.

    As with previous Argon ONE cases, the microSD card is hidden away and can’t be used without opening up the case. This is less problematic these days as a USB thumb drive flashed with Raspberry Pi OS can be used to run Imager and flash the storage drive. Attach an Ethernet cable and you can also use Network Install with Raspberry Pi 5.

    Speed-testing of the NVMe drive tells you much more about the quality of your drive than the case itself. We used a 500GB WD Blue storage stick and measured the speed using Raspberry Pi OS’s built-in Raspberry Pi Diagnostics tool to test performance. It returned a sequential write speed 789590 KB/sec (790 MB/s) almost 80 times faster than the recommended pass speed for a microSD card. It’s fast.

    The heat test is also interesting. We used stress –cpu 4 and measured the output with the script found here for 15 minutes.

    Raspberry Pi 5 inside the Argon ONE V3 case idles at around 54°c (down from the 65°c baseline of an uncooled Raspberry Pi 5 without a heatsink). We found the fan kicked in at the 60°c mark after five minutes and kept the Raspberry Pi 5 hovering around 61°c for another 10 minutes. At no point did Raspberry Pi OS reach the 80°c mark where performance throttling begins. It compared favourably to a Raspberry Pi 5 and an official Active Cooler unit.

    Put it to use

    One optional extra we should mention is an internal Argon ONE BLSTR DAC audio board upgrade, which will be sold separately. Alongside the 3.5mm jack this will make Argon ONE V3 ideal for audio fans. We didn’t have one for testing and can’t see it on the Argon40 website just yet, so hopefully that will come down the line.

    All of this transforms Raspberry Pi 5 from a hackable board to a desktop computer. A role our favourite computer is increasingly fulfilling with aplomb. The built-in infrared connection, large storage, and full-sized HDMI connection also ensure Argon ONE V3 becomes the perfect media player or home games console. This case is highly recommended.

    Verdict

    10/10

    An excellent case that sees a lot of Argon’s ideas reach fruition. Turn your Raspberry Pi 5 into a smart desktop computer, media player, games console or DAC audio player.

    Specs

    Components: Argon ONE Pi 5 V3 case, M.2 NVME carrier board, Video/Audio PCB extender (daughterboard), GPIO & Fan board, RP2040-based microcontroller

    Input/output: Adjustable M.2 NVME with M-Key up to 2280 size, 2 × standard (type A) HDMI ports, Ethernet, 4 × USB-A ports, USB-C power port, 3.5mm audio jack

    Cooling: Aluminium alloy case for passive cooling, blower type PWM programmable 30mm fan

  • SNES XL

    SNES XL

    Reading Time: 2 minutes

    Button management

    Every button on SNES XL controller has its own custom PCB, created using PCBWay an online service for producing PCB prototypes. Each board is shown fully working by Arnov on YouTube. Tactile switches on the custom boards are positioned just below the 3D-printed buttons, such that pressing a button toggles its switch. Each of the switches is wired up to a pin on a XIAO SAMD21 development board from Seeed Studio (see Figure 1). When SNES XL is connected to a computer (in this case Raspberry Pi 4), the Seeed XIAO appears as a gaming controller icon and can be selected for gameplay.

    Figure 1: The buttons are switches wired up to a pin on a Seeed XIAO SAMD21 board

    Too big to print or hold

    Arnov designed the controller housing in Fusion360. It had to be 3D printed in three separate parts due to its size, before being superglued together. More videos and images can be found on Arnov’s Instructables.

    Retro game emulation here comes courtesy of Recalbox. Power Pi, a Raspberry Pi dock/enclosure with an integrated lithium cell battery pack that Arnov also designed, provides power.

    Inside the giant 3D-printed case

    Arnov has to set the controller flat on the table to play games, because it’s too big to hold comfortably. Our favourite Raspberry Pi builds are the ones that are so absurd they turn out to be unusable for their originally intended purpose. The BFG would have no problem, but we’re still not sure if he’s real or not. We’ve let Nessie and Bigfoot go, but we’re hanging onto our oversized childhood friend.

    Gamer geek

    Arnov has graced us with his Raspberry Pi-powered gaming kit twice before. The first time was with SANDWICH DOT IO, an all-in-one desktop gaming system based around Raspberry Pi 3B+ and featuring on-board power as well as a dedicated cooling layer.

    The SNES XL is fully working (although hard to hold). Here, Arnov is using it to play a game of Doom!

    PALPi, a handheld games console with a retro aesthetic that’s powered by Raspberry Pi Zero W, is another of Arnov’s creations. Let’s start taking bets on what he builds next. We’re thinking he might go to the other end of the size spectrum and come up with something miniature. Maybe a teeny, tiny, thimble-sized Wii controller for dainty indoor tennis and golf.

  • Mac Mini KVMac16

    Mac Mini KVMac16

    Reading Time: 3 minutes

    The right tools

    Ivan values Raspberry P’s modularity which allows him to create unique devices and has previously used various models including Compute Module 4 in his Compute Blade, an energy-efficient alternative to a rack-mounted server. He praises the “relatively cheap minicomputer with a huge community, which greatly lowers the threshold of entry and increases trust”.

    For the Mac Mini KVMac16 project – Ivan describes it as “a console for 16 Mac minis on a shelf that occupies a 6U space in a server rack” – Raspberry Pi is used as a KVM (kernel-based virtual machine) while “the PiKVM HAT is used for video capture and keyboard/mouse command transfer”. Ivan chose Raspberry Pi because it both supports the components and offers long-term software support. He says: “Raspberry Pi 4 with 4GB is easily sufficient for the task”.

    KVMac16 helps get an offline Mac mini back up and running should an update or other issue cause it to be out of action

    As Ivan’s blog explains, should a Mac go down due to a failed update or any another reason, the only way to reboot it is to physically press its power button. This is not something that can be done remotely, and is the issue his KVMac device addresses. “To provide full control, with the ability to completely reinstall the OS, you need to press the power button and there are no other options.” Ivan has created the optimal workaround: a Servo HAT and self-written Python scripts control the servos used to physically push buttons on the Mac mini. He also uses RS232 to control a regular KVM switch from the user interface between a Raspberry Pi PiKVM HAT and 16 Mac minis, through which he can connect to any of them.

    Third time’s a dream

    As Ivan details on his Uplab blog, creating the KVM Mac Mini project involved three different versions, with improvements each time focusing on ease of installation and overall reliability. PiKVM is at the heart of the project, and provides a basic user interface, “but the ability to physically push buttons, and the 16 Mac mini install stand itself, are designed by me from scratch [as were the] custom scripts and UI modifications to give the user full control”.

    Ivan’s “perfect shelf’ for his Mac mini project allows air to circulate while being very robust

    Many of the challenges were because the project uses servos and levers to push buttons on the Mac minis, which need to work with maximum reliability. He started the project from scratch three times and counsels other would-be makers that if you find your project moving in the wrong direction, stop, reappraise and “have the strength to start over from scratch”. Ivan did this twice here, and says it strengthened his project as well as validating the potential for both a four-Mac mini model and a potential CI/CD one (Continuous Integration Continuous Deployment).

    It is just as well that Raspberry Pi proved a good option. Ivan says there are “simply no alternatives. This project was only possible thanks to Raspberry Pi and PiKVM.

  • NVMe Base review

    NVMe Base review

    Reading Time: 3 minutes

    Before attaching the NVMe Base to the underside of Raspberry Pi 5 using the supplied standoff kit – demonstrated in Pimoroni’s installation video – you’ll want to insert your NVMe SSD stick into the Base’s M.2 key slot. The board is long enough to accommodate 2280 size SSDs, and has mounting holes for this plus 2230, 2242, and 2260 drives – so you can secure it with a bolt and nut.

    Securing the Base

    The next step is to attach M2.5 standoffs to the top of the Base using the four mounting holes. The kit helpfully includes both short and long bolts – the latter are useful if you want to securely mount another HAT on top of Raspberry Pi 5.

    The NVMe Base comes with a standoffs kit, flat flexible PCIe cable, and four rubber feet

    Connecting the Base’s PCIe slot with the one on Raspberry Pi 5 is done using a small, flat S-shaped cable that flexes and has labels to help you orient it correctly – the end for the Base is slightly wider, at 18 pins. It’s easier to connect Raspberry Pi 5’s PCIe slot first, then the Base’s, due to the latter’s less fiddly flip tab. You can then fold the flexible cable over so the Base is underneath Raspberry Pi 5 to form a sandwich, before using a small screwdriver and bolts to secure it. The only downside is that the extra height means it won’t fit in a standard case.

    With the hardware installed, you’re ready to start using your SSD… that is, once you’ve checked that your system is up to date and you have the latest bootloader version selected in raspi-config: Advanced Options > Bootloader Version > Latest, then select ‘No’ and reboot. The drive should then appear in the /media directory, and be shown by the lsblk command. If not, make sure it is formatted (you can use Raspberry Pi Imager).

    Drive compatibility

    While the majority of NVMe M.2 drives should work fine, Pimoroni’s product page notes that a few models have quirks or have proved troublesome. The safest option is to choose a tested model listed there, or purchase the NVMe Base bundled with a compatible 250GB or 500GB SSD.

    The slimline NVMe Base fits snugly under Raspberry Pi 5, secured by bolts and standoffs

    Raspberry Pi 5 officially only supports the Gen 2.0 version of PCIe, but adding an extra line to /boot/config.txt will force Gen 3.0 for extra speed. In our tests, using the dd command, we achieved a write speed of 514MB/s and a read speed of 858MB/s. While far from our SSD’s maximum (due to only using one of its PCIe lanes), it’s still many times faster than microSD (typically around 30MB/s write, 90MB/s read), and also better than an SSD connected via speed-limiting USB. Check out Pimoroni’s own tests on various SSDs at.

    You’ll want to make Raspberry Pi 5 boot from the SSD instead of the microSD card. This is easily achieved by writing the OS to it with Raspberry Pi Imager and then selecting Advanced Options > Boot Order > NVMe in raspi-config. For our drive, this cut around four seconds from the average boot time. We also noticed that some apps, such as Chromium, seemed a little snappier.

    Verdict

    9/10

    A slimline adapter that sits neatly under Raspberry Pi 5 and enables fast PCIe read/write speeds with a suitable SSD

  • Troubleshooting Raspberry Pi in The MagPi magazine #139

    Troubleshooting Raspberry Pi in The MagPi magazine #139

    Reading Time: 3 minutes

    Solve new problems with our Raspberry Pi Troubleshooting Guide 2024

    Raspberry Pi Troubleshooting Guide 2024

    Raspberry Pi star PJ Evans wants to sit you down, hand you a tissue and ask how he can help. This month’s cover feature is jam-packed with advice. From power supply issues to video errors, audio problems, networking, and more. 

    Take part in 2024's #MonthOfMaking event and build something remarkable

    #MonthOfMaking 2024

    Every March we enter #MonthOfMaking, where we all come together to build incredible things and share them with one another. This month, we’ve scoured for the most extravagant and elaborate projects out there – genuine Rube Goldberg devices that utilize Raspberry Pi to produce unique DIY projects!

    Add an M.2 drive to Raspberry Pi 5 with NVMe Base

    NVME SSD Drive options

    The PCIe port on Raspberry Pi 5 is perfect for adding super-fast, and super-large, SSD drives. It’s a huge upgrade from the microSD card and we’ve got the first of two pieces of kit in for testing: Argon ONE V3 M.2 case and NVME Base. With two very different approaches to providing SSD storage, we put each device to a full test.

    This interactive climbing wall uses Raspberry Pi to light up the way

    The best projects! Like PeggyBoard

    Every month we strive to cover the very best of Raspberry Pi’s amazing community. One of our standout projects this month is Pegor Karolglanian’s PeggyBoard. This incredible climbing wall features LEDs to provide interactive routes and help train climbers. 

    Yet Another Flux Capacitor uses a digital screen to replicate the prop from Back to the Future

    YAFC Flux Capacitor

    Great Scott! It’s “Yet Another Flux Capacitor” built with the power of Raspberry Pi. Ambrogio Galbusera’s Flux Capacitor recreates the energy flow using a video screen, rather than the LED strips found in other projects. 

    One maker built a fully-working giant SNES controller with Raspberry Pi and custom PCB boards

    SNES XL

    Sometimes the very best projects are a little daft! Like this gigantic (but fully working) SNES controller. Inside is a Raspberry Pi so you can play games, and each button has its own custom-built PCB board.

    Turn an old Sonos speaker into a super-smart SOMA FM radio player

    Upcycle a Sonos

    Raspberry Pi is ideal for upcycling kit (rescuing old equipment that is no longer supported). PJ has taken an old Sonos speaker and used Raspberry Pi to turn it into a SOMA FM radio player. He walks you step-by-step through the process.

    Grab your copy of The MagPi magazine today! Straight from our Raspberry Pi Press Store.

  • Win! One of five Argon ONE V3 cases!

    Win! One of five Argon ONE V3 cases!

    Reading Time: < 1 minute

    Subscribe

  • 8BitDo Retro Mechanical Keyboard

    8BitDo Retro Mechanical Keyboard

    Reading Time: 3 minutes

    8BitDos latest offering (£79/$100) bucks this trend. A pair of beautiful wireless mechanical keyboards with colour schemes based on the original NES and Famicom, the most noticeable thing about them is an included pair of gigantic ‘super buttons’, arcade-esque add-ons that plug into the keyboard and can be programmed to run certain keys or macros.

    Playing with power

    If you’ve used any 8BitDo input device before, you’ll know that you can press a specific macro button to assign a keypress manually to these buttons, along with very conspicuous A and B buttons next to the space bar. In our mind, the intended use of this is either shortcuts on the desktop, or to assign custom keys for a more accurate experience on some retro games via RetroPie. Unlike other controllers and keyboards, you can’t set up these extra super buttons inside RetroPie but it will recognise the inputs you’ve set to it from using the macro button, or via a custom ‘profile’ that’s set up on another machine.

    The software is fairly easy to use although it does allow for a lot of customisation

    The customisation software, called 8BitDo Ultimate Software V2 is very powerful, allowing you to not only assign keys and/or macros to the super buttons, but also completely remap the keyboard as well – including adding special navigation or media control functions, which is very fancy. Creating macros is very deep as well, allowing you to pull off long combos with custom delay between button presses too. It’s an astounding amount of customisation, although unfortunately the software is only available on Windows PCs right now. Still, you can turn the customisation on and off with a simple press of the keyboards profile button, so once you have set it up on a PC you don’t need to remain connected to it.

    Hook it up

    The connection options are great – as well as a classic wired connection via the USB-C charging port, you can connect via Bluetooth or a 2.4GHz RF stick stored away on the underside. We found initially connecting the keyboard via Bluetooth had some issues, but once connected it worked just fine. The 2.4GHz stick worked right away and is currently out preferred way to use it. There’s a satisfying clunky switch that goes between the different radio types which perfectly complements the comfy and clicky keys on the keyboard. We had no lag on any games we played on RetroPie, and the super buttons were very fun to smash for that.

    The super buttons connect via a 3.5mm jack just like peripherals on accessible game controllers, and are very satisfying to use

    The switches and keys are standard PCB/PBT types so you can swap them out if you have preferred keys or want a quieter type (we have been banned from using them at Pi Towers due to the noise, oops).

    There is currently only a US layout, and despite the Japanese symbols on the Famicom version, it’s missing one or two keys to be a full Japanese keyboard. It is just an aesthetic choice though, and the design of the keys and labelling elsewhere is authentic and very pretty.

    Verdict

    9/10

    A very good retro keyboard for retro gaming, although you can’t unlock its full features with just a Raspberry Pi.

  • Adam Cohen-Rose interview

    Adam Cohen-Rose interview

    Reading Time: 3 minutes

    What is your history with making?

    I’ve always enjoyed building things – I had a big chest of LEGO as a kid, and so did my wife, and now we’ve only expanded it as our children got into model building too!

    I’ve been going to BarCamps and hackathons since 2007 and have loved the opportunity to work with other people to put something together in a short space of time. I was even featured on BBC Click as an ‘Inventor’ back in 2009 for building a LEGO Dalek controlled from my phone.

    The maze game on the Astro Pi – it’s a bit small, but so is the screen it’s displayed on.

    When did you learn about Raspberry Pi?

    Pretty early on. My then 12-year-old (now 20!) was one of the judges at the Code Club Pi-hack back in December 2012.

    I’ve three active Raspberry Pi [boards] in the house, plus about seven or eight others, connected or embedded in various projects.

    This displays temperature and humidity, so during the demo people can figure out how the Sense HAT works.

    How did you start with Code Club?

    I started running a programming club in my child’s primary school back in February 2012 – just before Code Club was founded. I approached the head teacher to offer a free lunchtime club for year 4s and he jumped at the idea!

    Once the Code Club Scratch projects came out, I switched to using them pretty quickly as they were great fun and the children really enjoyed making their own games.

    We’ve now had Code Clubs at Fleetville Junior School for nearly 12 years. I’m still running the year 6 club, even though neither of my kids go there any more! And we also run lunchtime clubs for years 4 and 5 – using Code Club material as well as Minecraft Education, micro:bits and Machine Learning for Kids.

    I’ve also started up Code Clubs at work: Tesco Technology supports two clubs – one lunchtime club by our Welwyn office, and one after-school club by our London office.

    What are some of your favourite Astro Pi moments?

    Getting the kids to guess what the sensors are on my 3D-printed Astro Pi mockup – I run a small program that displays a maze for the gyroscope and accelerometer, and a bar graph for the humidity and temperature sensors. The kids then have to try different inputs to figure out what they are responding to. See the code and some pictures here.

    Seeing the actual Astro Pi hardware at Raspberry Pi Big Birthday Bash events and at Richard Hayler’s talk at EMF Camp – and then seeing videos of their twins in the space station.

  • Argon NEO 5 Raspberry Pi case review

    Argon NEO 5 Raspberry Pi case review

    Reading Time: 2 minutes

    The enclosure is provided with instructions. These are straightforward, although we will confess to some confusion with wiring in the fan cable. It took four attempts before the ‘ah ha!’ moment when we realised what was intended. The instructions could cover this better. The rest of the installation was painless and thermal pads are included for good contact with the heatsink. Once you have Raspberry Pi inserted, you can add the aluminium cover which gives the overall package a solid, strong feel making it more suitable for environments such as factories or classrooms. The case is held together by screws, adding to the strength of the overall package. You can choose between rubber feet (supplied) or wall-mounting using the built-in screw points.

    The case in use

    The aluminium cover looks great, but it does mean that the GPIO, PCIE, camera ports and other headers become inaccessible. You are not required to have the cover on to use your Raspberry Pi but it would be great to see alternative covers just as with the official cases. The SD card slot is exposed (which is not the case with many third-party cases) and a nice touch is a cover which can be screwed into place to protect the card from accidental removal. A welcome feature is the combo power light and switch, which links to the new on-board power switch.

    Being actively controlled by Raspberry Pi OS means that the fan is silent for the majority of the time and you’ve got to get the CPU nice and busy to get any noise out of the case, which is minimal. As the body is nearly all aluminium, there is plenty of area for soaking up heat, so this would be a great choice for Raspberry Pis under heavy load.

    With the cover removed, the NEO exposes all important headers and the GPIO

    Argon’s build quality is some of the best in Raspberry Pi’s space and this case is no exception. You get the impression that a fall off a desk (normally due to a curious cat) would do it no harm whatsoever. The plastic base has a cheaper feel, but the red accents it provides look the part.

    The NEO 5 is another excellent product from Argon that combines value and features into a hard-to-beat package.

    Verdict

    8/10

    A low-cost, good-looking case with excellent resilience and cooling options. A solid choice for any Raspberry Pi project, although some may wish to wait for the next generation of the Argon ONE.

    Specs

    Cooling: Passive and active, air intake vents

    Fan: 30mm PWM

    Materials: Aluminium, plastic

  • DOS ain’t dead

    DOS ain’t dead

    Reading Time: 2 minutes

    No one really uses MS-DOS any more, but the modern, open-source FreeDOS ships with every copy of DOSBox, and you’ve quite probably used that. Most modern DOS developers use DOSBox and its forks for testing, so they can rapidly spot bugs and iterate solutions.

    The year 2023 in DOS also saw the release of Damien “Cyningstan” Walker’s stylish Barren Planet, a turn-based, space exploitation-themed strategy game in which rival mining corporations battle for control of resources, with some of the best four-colour CGA graphics we’ve ever seen. Cyningstan has also released a range of tools and libraries to support DOS games development in C, as well as open-sourcing his older games.

    Juan J. “Reidrac” Martinez, developed Gold Mine Run! in C and cross-compiled from Linux to DOS, using DJGPP to target 32-bit (i386) DOS. He also open-sourced the game’s code to help other developers.

    But you don’t have to use C. Tiny DOS city-builder Demografx was developed in Microsoft QuickBasic 4.5, an IDE released in 1990, which you can run on Raspberry Pi in DOSBox if you can find a copy. Microsoft’s more common QBASIC and GW-BASIC languages are no longer available, but PC-BASIC is a fully-compatible GW-BASIC interpreter you can install on Raspberry Pi, and there’s even a GW-BASIC extension for Visual Studio Code if you want an IDE.

    There’s an entire community of developers making wildly distinct games based on ZZT, a 1991 game creation system by Tim Sweeny, now CEO of Epic Games. ZZT spawned a vast living ecosystem of DOS games like WiL’s Galactic Foodtruck Simulator, development tools like KevEdit, and modding tools such as Weave.

    There are multiple DOS game jams to encourage would-be developers. In 2023, we saw the DOS COM jam, the DOS Games June Jam, and the DOS Games End of Year Jam.

    The DOS renaissance still has a way to go before it catches up to the C64, ZX Spectrum, and Game Boy development scenes, but the sheer range of tools available makes it a very approachable space to experiment in. If you want some inspiration, check out this DOS games we’ve created.

  • Double Standards

    Double Standards

    Reading Time: 3 minutes

    Once people had recovered from the shock of seeing both a power button and a real-time clock on a Raspberry Pi, one of the most commented-on features of the new platform was the small, vertical, 16-way FFC (Flat Flexible Cable) connector on the left-hand side of the board, which exposes a single-lane PCI Express interface.

    PCIe of cake

    Peripheral Component Interconnect Express (PCI Express or PCIe) is, as the name suggests, a board-level interconnect that allows high-speed data transfer between a processor chip (in our case BCM2712) and external peripherals such as NVMe SSDs, Ethernet cards, or more exotic things such as AI/ML accelerators.

    PCIe works by serialising data transfers and sending one bit at a time down a single channel. Higher-capacity PCIe interfaces have more lanes (×2, ×4, ×8, ×16); on Raspberry Pi 5, BCM2712 is connected to our RP1 I/O controller via a ×4 interface. Each lane runs at 5Gbits/s for PCIe 2.0 (the fastest mode that we officially support on Raspberry Pi 5); after coding overhead, this translates into a capacity of 4Gbits/s. Even taking into account other protocol overheads, you’re likely to see ~450MBytes/sec to and from a good NVMe SSD. Pretty fast!

    Alongside the data and clock channels, the PCIe specification requires some sideband signals like reset, clock request (which does double duty as a power state signal), and wakeup. Our 16-way connector provides all these signals. We also have two pins that allow us to control board power, and to ensure that an appropriately designed PCIe peripheral is automatically detected by the Raspberry Pi firmware.

    Not an M.2

    Why didn’t we add an M.2 connector to the Raspberry Pi 5? The M.2 connector is large, relatively expensive, and would require us to provide a 3.3V, 3A power supply. Together, these preclude us offering it in the standard Raspberry Pi form factor.

    Using a small, low-cost FFC connector allowed us to provide a PCIe interface without growing the board, or imposing the cost of an M.2 connector and its supporting power-supply circuitry on every Raspberry Pi user.

    Specification the first

    One thing we did not have ready at the time of the Raspberry Pi 5 launch was a specification for how to build peripherals that attach to the 16-way PCIe connector. The interaction of PCIe peripherals with Raspberry Pi power states and firmware required detailed consideration, and we wanted to make sure we had done extensive testing of our own prototype product to make sure everything was working exactly as expected.

    Today, we’re releasing the first revision of that specification: Raspberry Pi Connector for PCIe A 16-way PCIe FFC Connector Specification. Our own M.2 M Key HAT+ is in the final stage of prototyping, and will be launched early next year.

    The 16-way FFC PCIe connector

    Specification the second

    For those of you reading closely, you’ll have noticed that we’re calling our M.2 HAT a “HAT+”. If one new specification wasn’t enough for you, today we’re also releasing a preliminary version of the new Raspberry Pi HAT+ Specification.

    The original HAT specification was written back in 2014, so it is now very overdue for an update. A lot has changed since then. The new specification simplifies certain things, including the required EEPROM contents, and pulls everything into one document in the new Raspberry Pi documentation style, along with adding a few new features.

    HAT+ on the Raspberry Pi 5 silkscreen, sort of gave the game away?

    There’s still work to be done on this standard, and our EEPROM utilities haven’t yet been updated to support the generation of the new style of EEPROMs. So this release is very much for people that want to get a feel for how the HAT standard is changing.

    We really wanted to get the HAT+ standard right, as it’s likely to be around for as long as the old HAT standard. One of the reasons for the delay in getting the PCIe connector standard published was our sense that PCIe boards that go on top, rather than boards that go beneath, should probably be HAT+ boards. Ours is going to be!

    Standards for all!

    If you want to discuss them with the community, head over to the Raspberry Pi forums, where you’ll find a dedicated area to talk about HATs, HAT+ and other peripherals.

    Watch this space for the new M.2 HAT+, and a final version of the HAT+ standard, which we’ll release alongside it in 2024.

  • Bullfrog synthesizer review

    Bullfrog synthesizer review

    Reading Time: 3 minutes

    The front of Bullfrog is a smorgasbord of dials with instant appeal to anybody who loves tweaking and the feel of hands-on analogue technology. There are three main sections: VCO, VCF, and VCA/Delay (corresponding to the three elements of sound: pitch, timbre, and amplitude). To the right of this are envelope generators and a Sample&Hold section, while at the top sits a blue cartridge socket. This is where the (included) voicecards slot in. Voicecards patch the internals of Bullfrog and quickly expand the sounds to create a variety of noises. The kit comes with three voicecards: an acid bassline, sampler-loopers (that can record and playback any sound), and a sequencer. There are also three blank voicecards that you can patch yourself by soldering the points together with wires.

    Around the back of Bullfrog we see input and output including CV and MIDI control inputs

    To the rear are CV (control voltage) and MIDI (Musical Instrument Digital Interface) ports, phone and audio out, plus power sockets and config buttons. There’s a speaker set into the device itself, or you can use headphones.

    Wired for sound

    The 77-page manual is where things come to life. It walks you through sound generation, pitch, waveforms, overtones and harmonics, plus virtually every aspect of sound synthesis. Far more than just how to use the equipment, it covers the science behind sound. If there’s any criticism, it’s that it gets a little stuck in the weeds before getting you to patch together the components and start making noises. But this is nitpicking on what is a wonderful educational resource. Girts Ozolins from Erica Synths has made a YouTube video that explains the Bullfrog project that also includes a patching guide.

    Taking things further

    Bullfrog is more fun with a CV (controlled voltage) keyboard, and the manual mentions an Arturia Keystep or a MIDI keyboard. These enable you to turn the synthesized sounds into notes. It’s also possible to use Raspberry Pi to expand on the music abilities and learning. Either by using Pico to create a CV generator or by attaching a MIDI HAT to Raspberry Pi (see this OSA tutorial). Both of which could add programming aspects to this sound generator.

    Girts Ozolins running a workshop in Hamburg

    Erica Synths is using Bullfrog as an educational tool, and to that end has been running workshops using an XL version of the kit that also features an oscilloscope. They are hoping to get it into educational environments around the world.

    Verdict

    10/10

    An innovative educational resource that takes you through sound creation and is a fully working subtractive synthesizer to boot. We loved testing this one out.

    Specs

    Features: Analogue design, 8-octave voltage controlled oscillator (VCO), voltage controlled amplifier (VCA), voltage controlled waveshapes with pulse width modulation (PWM, voltage controlled amplifier (VCA)

    I/O: DIN5 MIDI input, USB connector, CV (controlled voltage), phones out, audio out

    Voicecards: cid bassline, sampler-looper, sequencer, 3 × black voicecards are included

  • Persistence of vision (POV) candle

    Persistence of vision (POV) candle

    Reading Time: 2 minutes

    His solution was to make use of persistence of vision (POV) – the brief retention of a visual impression on the eye’s retina that creates the illusion of a moving image in film and television.

    Shine a light

    While the general consensus was that POV displays require too much in the way of supporting machinery to make them work, such as bearings and slip rings, Tim had the bright idea of getting a whole tiny device, including battery and motor, to spin.

    He quickly threw together an LED matrix board design. “It took about a week for the matrix PCB to arrive,” he says, “which gave me a little time to think about how it was going to go together, but once I had all the parts building the whole thing only took a couple of hours.

    For the brains of the device, he looked at using Raspberry Pi Pico, but eventually opted for a Waveshare RP2040-tiny partly due to its smaller size (about half that of Pico).

    “Aside from the low cost and easy availability, one of the nice things about the RP2040 is that you can set, or get, all of the GPIO pins in a single clock cycle,” he notes. “This makes implementing a custom matrix very easy. The software [for the project] does very little at all: it just steps through an array of numbers to send to the GPIO port.”

    The flame effect is an animation based on volumetric data and rendered in the open-source Blender 3D modelling application. Tim first experimented with a rotating cube and fluid simulation. “Getting the software to work and generating those animations took maybe a couple of days of experimenting.”

    Spinning around

    The candle is spun around by a Mabuchi RF-410CA motor Tim had to hand. This can rotate at up to 5900rpm, but for a 30fps animation he used PWM to reduce it to around 1800rpm.

    Power for the project is supplied by a LIR2450 coin cell housed in a custom 3D-printed battery holder. “The amount of current a battery can deliver is related to its capacity,” says Tim, “so it’s not just about making the battery last as long as possible, it’s also that a smaller battery might not be able to drive the motor at all.”

    From this initial prototype, “the next step is to make a circuit board out of the hand-wired mess it is currently, and then increase the resolution of the display. We can roughly double the number of LEDs without changing the design, but beyond that we’ll need to rethink how the display is driven.”

  • Raspberry Pi OS goes dark

    Raspberry Pi OS goes dark

    Reading Time: 4 minutes

    This has taken a few weeks longer this time, simply due to the sheer amount that changed under the hood in Bookworm, but the bug-fix release is now ready and can be installed from today via Raspberry Pi Imager, or downloaded from the usual place on our website. Or, to upgrade an existing image, simply use the updater icon on the taskbar, or (if you’re more old-school) open a terminal and type

    $ sudo apt update

    followed by

    $ sudo apt full-upgrade

    This update includes improved support for encrypted connections in WayVNC; the latest version of Thonny; Mathematica and Scratch 3 working on Raspberry Pi 5; and a bunch of other small bug fixes and tweaks. But we thought we’d give you a little bonus in this release too…

    A few weeks ago, Eben wandered past my desk, and remarked, “wouldn’t it be nice if we had a dark theme?” (He’s not the first person to suggest this, but he is the boss, so I tend to pay more attention when he suggests things!) And as it happened, I wasn’t particularly busy that day.

    Our PiXflat theme has been around for a few years now – we launched it along with Raspberry Pi OS Buster back in 2019. It started out as a mildly tweaked version of the default GTK theme called Adwaita, but it changed quite a bit over the years, so now doesn’t have all that much in common with Adwaita any more.

    The Appearance Settings menu in Raspberry Pi OS

    A theme is basically a big CSS (cascading style sheet) file as used for styling web pages, e-books and the like, which defines the appearance of every widget used to draw applications. (A widget is a user interface element such as a button or a text label.) You can set the colour, the font, the background and numerous other aspects for each widget, and you can set different values depending on whether the widget is active (e.g. a button which is being pressed), whether it is disabled, whether the mouse pointer is over it, and so on. And when I say it is a “big” file – it’s really big: PiXflat is around 4500 lines.

    Dark mode

    Creating a dark theme can be relatively easy, or really hard, depending on how the colours have been defined in your original theme. If all your colours are defined as variables, it is relatively easy – but if all your colours are hard-coded values then it is rather more time-consuming. In PiXflat, as in Adwaita before it, the colours were all hard-coded! So the first job was to go through 4500 lines of CSS and find all the hard-coded colours, replacing them with variables, and then setting those variables to the original hard-coded values so I didn’t break the original light theme.

    Then, having done that, it was time to consider how each one of those colours should change to produce a suitable dark appearance. The obvious first step was simply to invert each colour, so that black became white and so on. The trouble with this is that while what you end up with is indeed dark, it doesn’t usually look that good.

    So then the hard work began – choosing exactly which contrasting colour was going to be used in the dark theme to replace the light version. This involved setting the values of around 70 colour variables to create a set that worked together; you have to take into consideration having sufficient contrast between elements so that you can still see everything clearly, so that text is still readable against darker backgrounds, so that the colour change when you move the mouse over an element is still obvious, and so on. And it all interacts, so you find that if you tweak one colour, you then need to tweak four or five others to keep all the contrast correct.

    Endless themes

    From past experience with PiXflat, creating a theme is very much like the proverbial painting of the Forth Bridge; it’s never really finished, because you keep making little tweaks. But the theme which I have called PiXnoir – the dark version of PiXflat – is now ready to use; like PiXflat it will doubtless continue to evolve over time, but the first version is included in this release.

    We’ve made it easy to switch between the themes. Just open ‘Appearance Settings’ from the ‘Preferences’ section of the main menu, go to the ‘System’ tab, and switch the ‘Theme’ option from ‘Light’ to ‘Dark’. Most applications will load the new theme on the fly, but some applications – particularly Geany and Calculator – use their own internal themes as well, so you’ll need to close those first if they are running in order to get the theme to change

  • Retro gaming for a new (old) generation with Raspberry Pi 5

    Retro gaming for a new (old) generation with Raspberry Pi 5

    Reading Time: 3 minutes

    Emulate a whole new generation of classic consoles with the more powerful Raspberry Pi 5

    Next gen retro

    Smoothly emulate fifth- and sixth-generation consoles including Playstation, Nintendo Game Boy Advance and GameCube, Sega Dreamcast and more. What’s more, there’s a whole new homebrew scene to discover, with brand-new games being made for these classic consoles.

    Technology and creativity working hand in hand with Raspberry Pi

    Arts & Crafts with Raspberry Pi

    Technology and creativity are inclusive and Raspberry Pi brings the two together. These projects stop people in their tracks because they either look good or perform tasks that are just sheer, plain fun.

    Discover incredible projects like OneInchEye, the Raspberry Pi solar camera

    The best Raspberry Pi projects

    We’ve got a fantastic selection of project showcases this month. Such as this OneInchEye for solar photography. It can capture 4K images at 30fps (frames per second) or 20MP at 12fps for RAW recording.

    Add real time clock functionality to Raspberry Pi 5 using a lithium battery

    Learn to use Raspberry Pi’s RTC funcitonality

    Our step-by-step tutorials walk you through the process of learning to use Raspberry Pi. Amongst other tutorials, this month is this fantastic step-through of the new RTC (real time clock). Attach a lithium battery to Raspberry Pi to automatically turn the device on and off while keeping perfect time.

    Play games on a Raspberry Pi palmtop computer with Beepy

    Play games on Beepy

    We’re still smitten with the Beepy device that turns Raspberry Pi into a PDA (personal digital assistant) with a BlackBerry-style keyboard. In keeping with the theme this month we’re looking at a range of text adventures and other games you can play on this diminutive device.

    Learn how sound synthesizers work using the RP2040-powered Bullfrog synth

    Learn to use a synthesizer

    We adore this Bullfrog Synth developed in association with Richie Hawtin (aka Plastikman). Inside a RP2040 is used to generate audio and integrate MIDI control while a series of wires are used to link the various synth elements together. It’s the ideal way to learn about sound generation.

    Raspberry Pi at Maker Faire Shenzen

    Raspberry Pi at Maker Faire Shenzen

    Raspberry Pi CEO Eben Upton attended one last big event before Christmas: Maker Faire Shenzen. Joining them was Seeed Studios, a Raspberry Pi Approved Reseller, showing off their wares and hunting down cool Raspberry Pi projects in the process. It was a busy event full of talks and cool stalls!

  • Win! One of three CrowVision displays!

    Win! One of three CrowVision displays!

    Reading Time: < 1 minute

    Subscribe

  • Retro Gaming with Raspberry Pi (3rd Edition) out now

    Retro Gaming with Raspberry Pi (3rd Edition) out now

    Reading Time: 2 minutes

    This book is packed with information on retro gaming. In particular, it covers how to retro game with Raspberry Pi 5 in a lot of detail. Learn to use all the major emulation systems, and recreate retro consoles up to the Dreamcast and Sony Playstation generations. It’s packed with homebrew software and new games being developed for original systems. This year’s retro gaming guide is bigger than ever: 180 pages. Each page is packed with classic gaming goodness. We’re incredibly proud of this one and we hope you enjoy reading it as much as we did writing it.

    Click here to buy your copy of Retro Gaming with Raspberry Pi (3rd edition).

    Finally build that arcade machine of your dreams

    Build your dream consoles and arcade machine

    Use ready-made emulation software to quickly and easily turn Raspberry Pi into a huge range of retro consoles and computers. It’s easy to set up a retro gaming console and we’ll show you how. You’ll even learn how to build your own portable gaming consoles and finally achieve that dream of owning your own arcade machine.

    One maker put a complete ZX Spectrum inside an original cassette tape

    Rediscover those systems from your childhood

    We’ve got the latest information hot from The MagPi team on how to emulate a whole new generation of consoles. From the Nintendo GameCube, to Sony PlayStation, and the Sega Dreamcast. Discover how to play new games on these classic systems with Raspberry Pi.

    Build a handheld retro console with Raspberry Pi Pico

    Meet incredible makers and hear all about their builds

    We’ll show you how to download retro games and emulate them with Raspberry Pi computers. You’ll discover how to build your consoles, both handheld and television-based and hear from some of the best makers around. They share their secrets to successful emulation.

    Emulate a huge range of computers and consoles with Raspberry Pi

    Discover a thriving homebrew scene

    There are hundreds of developers making games every bit as good as back in the 1980s and 1990s. And they’ve only got better at making classic games. We’ll show you how to find new games for classic consoles, and how to get involved with this incredible gaming scene.

    Pick up your copy of Retro Gaming with Raspberry Pi (3rd edition) from the Raspberry Pi Press store today.

  • PiArtFrame

    PiArtFrame

    Reading Time: 2 minutes

    What are fractals?

    Fractals are shapes that contain complex detail however closely you look at them, or however far you zoom in. Often, they are self-similar: if you zoom in on the small-scale detail, you find it resembles the overall shape. Some of the most familiar forms that have fractal features are ones found in nature, like fern leaves and frost patterns, and we bet we’re not the only ones who call Romanesco “fractal cauliflowers”.

    They are also beautiful. Fractal art can be created algorithmically by software, with the results usually represented as still digital images or animations. It all kicked off in the mid-1980s, so it’s the kind of thing that’s likely to be right up our street.

    The maker kept the assembly pretty simple, cutting a small hole in the picture frame’s back mount panel to slip the display HAT’s ribbon cable through, with the project’s Raspberry Pi left free-floating behind it. The e-ink display itself fits snugly inside the frame, with a card mount providing a little breathing space between the display and the glass.

    Software setup

    Getting the software going looks to be as elegantly easy as the hardware. All the code you need is on GitHub, including a step-by-step guide in the README. It generates part of a Mandelbrot set with dimensions to suit the e-paper screen, then renders it for display.

    Fellow maker Rob Weber has added extra code to the GitHub repository from the Omni-EPD project. The additional code allows for more electronic display types to be used.

    We’re not going to get into what the Mandelbrot set is, but Jimi Sol in this here video seems to do a great job of explaining.

    The display is attached to a Raspberry Pi wearing the e-ink display HAT

    “I bought the panel from the Waveshare Amazon store,” says Karl. “For the 7.5 in Waveshare panel, I’d recommend getting an 18×24 cm frame [like this one].” Karl also ordered a custom frame from Best4Frames: “I ordered mine around 15×9.7 cm, which is one of the smallest cutouts they can make.”

    “The picture mount is good for aesthetics,” explains Karl alongside offering “extra protection.” A small slit on the side of the back panel of the frame allows access to the ribbon cable. “I attached it to the header which comes with the Waveshare panel, and which goes directly on [Raspberry] Pi Zero.

    “Those of you who are more gifted in building might be able to come up with an enclosure, but in my build Raspberry Pi is free‑floating,” says Karl.