Schlagwort: tech articles

  • CDP Studio: Control a robot arm

    CDP Studio: Control a robot arm

    Reading Time: 6 minutes

    01 Install the software

    On your PC, visit cdpstudio.com/getstarted and download the free non-commercial version for Windows or Linux. During installation, select the ‘ARMv8 64-bit (Debian 11)’ component under CDP Studio 4.12, along with the one already ticked for your host PC. You will then be able to deploy projects to the myCobot 280 Pi arm, which uses a 64-bit version of Ubuntu.

    If you already have CDP Studio installed, make sure it’s updated to version 4.12, then go to Help > Package Manager and select ‘Add or remove CDP versions’ to add the ARMv8 64-bit (Debian 11) component.

    CDP Studio myCobot 01

    02 Download the project

    This is a complex project that would be time-consuming to build from scratch, so we’ll download it from CDP Studio’s GitHub repo. Go to magpi.cc/recordnplay, click the green Code button, and select Download ZIP. Unzip the file on your PC. Move the resulting myCobotRecordNPlay-main folder to the CDPStudioWorkspace/systems folder.

    03 Download and build library

    To deploy the project to the robot arm, you’ll also need the myCobotLib library. Go to the GitHub repo at magpi.cc/mycobotlib, click the Code button and Download ZIP. Extract it and then move the resulting myCobotLib-main folder to the CDPStudioWorkspace/libraries folder. Open the myCobotLib project file (with the .pro suffix) in CDPStudio, then right-click its name in the left panel and select Build.

    CDP Studio myCobot anno

    04 Open the project

    Now open the RecordNPlay CDP project file (.pro) in CDP Studio. If you click the arrow next to it in the left panel, you’ll note that it comprises two main applications. RecordNPlayUI runs the database logic for recording arm movement steps and shows a GUI on the PC to make programming the arm easier. It also has an ArmVisualizer pane that can be used to view the arm positions in 3D. This can be used even if you don’t have a real arm connected, so you can still run the project and see how recorded steps affect its movements.

    The RecordNPlayIO application is the part of the project that’s deployed to the myCobot Pi arm over the network, once paired, enabling CDP Studio to communicate with it.

    05 Prepare myCobot

    The myCobot arm’s Ubuntu OS has a non-standard version of the OpenSSH server. So you’ll need to make a small change to a config file so CDP Studio can communicate with it over the network. SSH into the myCobot with the username ‘er’ at its IP address; the default password is ‘Elephant’. Then enter:

    sudo nano /etc/ssh/sshd_config

    Locate the line that sets the PubkeyAuthentication parameter and set it to yes (and make sure the line is not commented out). Press CTRL+X, then Y to exit and save. Then restart the OpenSSH server with:

    sudo systemctl restart sshd

    CDP Studio myCobot 02

    06 Pair the arm

    Open the Deploy Configuration tab. Under Networks, press the Select button for ‘WiFi’. The ‘Devices – WiFi’ table below should start showing any devices available to pair with CDP Studio.

    Click the Username field for your myCobot (based on its IP address) and enter ‘er’, then click the Pair button next to it. You will be prompted to enter the password – the default is ‘Elephant’.

    Under Applications, change the Device for RecordNPlayIO application to your myCobot device name, then change the Toolkit to ARMv8 64-bit (Debian 11). When you run the RecordNPlay project, this will then be deployed over the network to the robot arm.

    CDP Studio myCobot 03

    07 Run the project

    Right-click RecordNPlay in the left panel and select Run & Connect. After a few moments, a new Arm Record‘n’Play window should appear, showing the GUI for recording arm movements. First, enter a name for the sequence and click Add. Then click Record to start recording steps. You can move the sliders, but it’s a lot easier to move the robot arm around and then click its LED panel button to add each position as a step. Recorded steps are shown in a list and can be updated or deleted individually using the buttons at the bottom right. The ‘Step duration’ bar sets the time for which an arm position is held.

    Try recording some steps and then hit the top-left Play button to play the sequence. If you have a myCobot arm connected, it should follow the movements you recorded; if not, select ArmVisualizer in the project’s left panel, then the DHChain Visualizer tab to view a 3D representation of the arm with its six joints. As you move between two steps, the visualisation shows both and the movement of the arm’s head with a red line. The gripper status is indicated by a green (closed) or grey (open) dot.

    CDP Studio myCobot 04

    08 Pick and place

    Now, let’s get our arm to pick up an object and place it down in another location. We placed a pencil sharpener on top of a biscuit tin, high enough to give the arm plenty of space to pick it up without the bottom of the gripper hitting the table.

    Move the arm between positions and press the LED panel button to record each step. You can also open and then close the gripper manually to program it. Make sure the arm is stationary, in the right position, before closing it. Then lift the arm up and move it round and down to where you want to place the object. After opening the gripper to drop it, move the arm straight up so you don’t bump into the item. You can adjust step positions in the GUI if needed. The steps are stored in an SQLite database too, so you could always edit that manually.

    CDP Studio myCobot 05

    09 Kinematics

    This project makes used of CDP Studio’s Kinematics framework, in the form of the DHChain component. The basic concept of kinematics is that if you input joint angles for a robot arm, or chain of links, the framework can calculate the end position in 3D space – as shown in our project’s ArmVisualizer pane, with the X/Y/Z coordinates shown in the Arm Record‘n’Play GUI.

    The method can also be used in the reverse direction, to convert a desired 3D end position into the required joint angles; this is known as ‘inverse kinematics’.

    Kinematics has many uses in the field of engineering, helping to calculate positions and velocities of moving parts such as those in an industrial robotic arm, or a bionic limb or exoskeleton. An example real-world case is the use of CDP Studio and kinematics is for controlling deck cranes on ships.

    CDP Studio myCobot 06

    10 Exploring the project

    You can click the Block Diagram tab to see how the project’s block-based components have been put together. At the highest level, there are two main blocks: for the RecordNPlayUI application for the GUI step recorder, and the RecordNPlayIO one for communicating with the myCobot arm. Here, the UI block’s DesiredStates port links to the IO block’s DesiredAngles port; it sends the angles set for the six joints, along with the gripper status, so that the arm will move accordingly. The ControlModes link is used to determine whether the arm should maintain a position or be allowed to move freely, for when you’re recording moves. CurrentStates is a feedback port from IO that’s used by UI to know what is the current position of the arm joints, gripper and LED button; this information is used by the recording process in UI.

  • Raspberry Pi 5 Cases – Group Test

    Raspberry Pi 5 Cases – Group Test

    Reading Time: 6 minutes

    Official Raspberry Pi 5 Case

    Raspberry Pi

    £10 / $10

    Coming in red/white or black, the official case comprises three plastic sections that snap-fit together, so assembly is a cinch. The middle section includes a clear insert with a fan that connects to Raspberry Pi 5’s Fan port. A small SoC heatsink is also included.

    Capacity: By removing the clear insert and fan from the middle section, you can mount a HAT. Or you could use a booster header to lift it above the fan.

    Port access: All side ports are accessible via cutaways, along with the power button. The middle section features a wide slot to enable access to the GPIO pins when the lid is removed; it could also be used for routing cables for a camera or other accessories.

    Cooling: The variable-speed fan’s cooling is aided by vents in the bottom of the case, plus the SoC heatsink. It works even with the lid on, due to a circular gap. In our tests, it prevented throttling even under a heavy workload, but some other cases performed better.

    Wi-Fi signal: As you’d expect, the plastic case has very little effect on the signal, which remained strong.

    Verdict

    A well-thought-out, versatile design that covers most uses.

    ICE Tower CPU Cooler

    The Pi Hut

    £16 / $17

    Its cool-looking tower design is enhanced by RGB LEDs making it glow in various colours. Is it really a case? Well, it does have a plastic base, connected via screws and bolts to two metal mounting brackets and the main fan/heatsink section on top. Assembly is a little fiddly (especially the brackets), but not too tricky. The heatsink it connected to the SoC via a thermal pad.

    Capacity: You won’t be mounting any HATs with that large fan and heatsink sitting atop Raspberry Pi!

    Port access: The open design means access to all the ports and GPIO pins is unhindered.

    Cooling: The vertically mounted fan blows air onto the aluminium fins of the large heatsink, whose base is connected to Raspberry Pi 5’s SoC via a thermal pad. This results in excellent cooling performance. By default, the fan doesn’t even kick in until the temperature reaches 60°C (which didn’t happen during our tests), but it could prove more useful if you’re overclocking Raspberry Pi 5.

    Wi-Fi signal: The presence of that metal heatsink does have an effect on the signal, but not too much.

    Verdict

    With its unusual design and lighting, it looks very cool… and delivers great cooling.

    Argon NEO 5

    Argon 40

    £18 / $19

    A three-piece design – with two aluminium sections and a plastic base – the NEO 5 oozes style and quality with its red/black colour scheme and solid feel. The middle section is especially impressive, with a fan next to curved fins to aid cooling. Assembly is aided by a guide in a small booklet.

    Capacity: With the top part removed, you could mount a HAT with a booster header to lift it over the fan. A special NVMe version of the case is also available.

    Port access: The middle section has cutouts for the main ports, camera/display, PCIe, UART, RTC, and the GPIO pins (with a helpful labelled strip on the side).

    Cooling: The fan’s effect is aided by vents in the middle section and base, plus a couple of thermal pads for the SoC and PMIC. This results in very good cooling performance.

    Wi-Fi signal: The mainly metal case does result in a noticeable reduction in signal strength and quality.

    Verdict

    A stylish, quality case with great cooling performance.

    KKSB HAT Case

    The Pi Hut

    £16 / $16

    The tallest case in the group, it’s 56mm high, and is designed to accommodate a Raspberry Pi 5 with a HAT mounted on top. The anodised aluminium case has no built-in cooling, but you could add an Active Cooler or heatsink. There’s plenty of room, and a GPIO booster header is supplied if needed to lift a HAT up slightly. Assembly is tricky, as you need to remove both side panels and slide in Raspberry Pi, screw it in place with tiny screws, and then add a HAT afterwards.

    Capacity: The high headroom means there’s plenty of room to mount HATs on top of Raspberry Pi. Getting things in and out of the case and securing them in place is fiddly, though. We’d have preferred a removable lid.

    Port access: The main ports are accessible via cutouts. There are slots for camera connections and PCIe ribbon cables. You’ll need to remove one or both side panels to access the other ports.

    Cooling: There’s no built-in cooling, but the KKSB can be used with an Active Cooler, or most other coolers and heatsinks. Lots of slots in the case aid ventilation.

    Wi-Fi signal: Maybe it’s all those ventilation slots, but the signal is hardly affected.

    Verdict

    Not the most user-friendly design and no built-in cooling, but good capacity.

    Passive Cooling Open CNC Case

    EDATEC

    £7 / $8

    Raspberry Pi 5 is sandwiched between the two case sections, with no side pieces. Each grooved aluminium piece is fitted with several thermal pads to aid passive cooling, including for Raspberry Pi 5’s SoC, PMIC, and wireless module. The two case sections are secured with long bolts.

    Capacity: With the open design and GPIO header access, you can mount a HAT just above the top section.

    Port access: With no side pieces, access to ports is unfettered, with cutouts for the GPIO pins, PoE header, PCIe and camera/display ports, plus UART and RTC battery connectors.

    Cooling: Highly effective passive cooling is provided by the numerous thermal pads and grooved aluminium case pieces. It keeps Raspberry Pi 5 cool (37.8°C) even under a heavy workload.

    Wi-Fi signal: The metal case does result in a noticeable reduction in signal strength and quality.

    Verdict

    Great port access and some impressive passive cooling performance.

    ABS Fan Case

    The Pi Hut

    £15 / $16

    While it doesn’t feel the most solid or weighty case, its two main sections have plentiful vents and you get a choice of coloured stripes to stick on the lid! An Armour Lite V5 fan-equipped heatsink sits on top of Raspberry Pi 5 via five thermal pads.

    Capacity: The heatsink takes up a fair amount of space in the case. You could still mount a HAT with a GPIO header booster and the lid off.

    Port access: The main side ports are accessible via cutouts. With the lid removed, you can access all the others.

    Cooling: Five thermal pads connect the SoC, PMIC, RP1, RAM, and wireless module to the heatsink with built-in fan. Considering this, cooling performance was not quite as good as we expected, but decent.

    Wi-Fi signal: There’s some effect on the strength and quality, possibly due to the metal heatsink.

    Verdict

    Middling cooling performance in a lightweight case.

  • Transcription and speech synthesis

    Transcription and speech synthesis

    Reading Time: 3 minutes

    Speech Note transcription

    $ sudo apt install flatpak
    $ flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
    Now reboot Raspberry Pi, then open a terminal and type:
    $ flatpak install speechnote

    Say “yes” to confirm that you wish to use the suggested ref, that you wish to install it, and that you wish to proceed with the suggested changes to your system installation.

    Open SpeechNote from the Sound & Video menu, then go to the Languages menu, search for English (and any other language you may require) and select the models you wish to use.

    OpenAI’s Whisper is open-source, and transcription tools don’t carry the intellectual property violating baggage of text or image generators, so English Whisper Small should do the trick for Speech To Text.

    A number of Text To Speech models are available. We find Piper Alba Medium to be both easy on the ears and conveniently near the top of the list.

    A few translation options are also available, but this list is limited to only one per language pair. You can try them out based on your translation requirements – we installed English to French and French to English – the latter was only available when we selected French in the first step of the Language installation workflow. Some punctuation checkers are also available, which can be helpful for language learners.

    Download the test file, which is four seconds of speech.

    In Speech Note, click File > Transcribe a file, and open the file we just downloaded. Transcription will begin automatically, and the transcribed text will be output in Speech Note’s main text pane.

    Integrate Piper with Orca

    Piper speech synthesis is a clear upgrade from the eSpeak synthesised voices we’re all familiar with. It’s not yet available as a default option for many screen readers, but we can integrate it with Orca, the most mature Linux screen reader.

    Using Orca with Piper has its limitations, such as comparatively slow reading performance when working in a command terminal and requiring more system resources, but the more natural voice can make it more pleasant to work with if you’re primarily interacting with a GUI via keyboard shortcuts.

    $ sudo apt install orca
    $ cd Software
    $ git clone https://codeberg.org/MightyOwlbear/rpi-piper-tools.git
    $ sh install-spd-piper.sh

    Enter your password to install dependencies when prompted.

    Once installed – assuming the test audio was produced, it’s time to configure the Orca screen reader to use Piper:

    $ orca -s

    In Orca’s settings tool, select the Voice tab. Under Speech synthesiser, select ‘piper-generic default voice’ from the pull-down menu.

    Untick the ‘Break speech into chunks between pauses’ box on the right, then click Apply. You may also wish to change the Rate at which it speaks – we like putting this at 70.

    You’ll now be hearing a Piper voice named Alan narrating your interactions. It’s worth noting that, if you’re a quick typist, Piper will not be able to keep up with your letter-by-letter text entry in the same way as eSpeak.

    Orca works with both Xorg and Wayland, but we’ve seen slightly better performance in X. If you’re booting to command line and starting the GUI from there, simply invoke

    $ startx

    instead of

    $ wayfair

    If you’re booting to the GUI, you’ll have to change your config to reflect your preference. In a terminal type:

    $ sudo raspi-config

    Go to 6 Advanced Options > A6 Wayland > X1 X11 and select OK. Reboot to enact your settings changes.

  • AI projects spotlight

    AI projects spotlight

    Reading Time: 3 minutes

    Adafruit Braincraft HAT

    Built for Raspberry Pi 4, Adafruit’s Braincraft HAT is a pretty comprehensive kit for machine learning. It includes a 1.54-inch 240×240 TFT screen as a display, a joystick to navigate options you might wish to display on it, a cooling fan, three controllable LEDs, plus speaker, headphone and microphone ports to help you build text-to-speech tools or home assistant projects. There’s no integrated camera, but it does include a slot to connect one, as well as a range of other IC2 and JST STEMMA devices.

    Adafruit publishes a range of projects targeting the Braincraft, and is currently updating its guides and software to support Raspberry PI OS Bookworm. The legacy version of Raspberry Pi OS Bullseye, which is known to be stable with the HAT, is available via both Raspberry Pi Imager and as a direct download.

    Vizy Camera

    Like XGO, Vizi camera is driven by a Raspberry Pi, although it’s a standard version, rather than the Compute Module form factor. You can even choose how much RAM you’d like your camera to have.

    Once set up on your network, it throws up a local intranet page that you can access from your browser. You can also configure it to be available over the internet. Here, you can access the cam’s feed and run a range of built-in machine learning applications including object identification, motion analysis, a bird species identifier for your bird feeder and a pet detector that can take photos or be used as a trigger for other events. Suggested projects include a treat dispenser or ball launcher.

    As you’d expect for something that can be used to spy on garden birds, Vizy can be weatherproofed with an outdoor enclosure. Other add-ons include extra lenses, a 4G adaptor for enhanced portability, and a Power over Ethernet adaptor.

    Luwu Dynamics XGO 2

    Luwu Dynamics’ XGO Mini 2 and Lite 2 dogs look like desk-sized takes on Boston Dynamics’ Spot robot. The robot can be addressed by a variety of microcontrollers and single-board computers, but the default configuration uses Raspberry Pi CM4.

    As well as manual control options, it has a selection of pre-programmed behaviour routines that you can invoke, including object recognition using the Yolo real-time object detection system, voice command recognition, and efforts at gender, emotion and gesture recognition. All of these behaviours are handled by a clutch of Python scripts and their accompanying libraries, which makes them really easy to customise.

    If you don’t want to immediately dive into XGO’s scripts, there are also a range of programming interfaces available and custom libraries for controlling the cyberdog body. Your options range from a remote control smartphone app to a Python-based block-based programming interface accessible via a web browser.

  • Pico Throttle

    Pico Throttle

    Reading Time: < 1 minute

    “I’ve often had the occasional flight on my grandad’s copy of Flight Simulator X when I visit him, but I purchased X-Plane 12 after Christmas, so I’ve been using it regularly for about three months.” Leo tells us about what inspired him. “[The throttle is] reasonably rigid. There’s some flex in the lever side-to-side, so the plate that pushes the reverser button has to be a bit wider, but the box and paper-tube pivot is solid enough. It is, however, very light and likes to move around the desk.”

  • 10 amazing: robot projects

    10 amazing: robot projects

    Reading Time: 3 minutes

    BurgerBot

    Inedible round robot

    This Pico-powered robot is small and compact, and a great base for expanding and building bigger and more complex robots

    magpi.cc/burgerbot

    PicoTico

    Tic-tac-toe-bot

    Would you like to play a game of tic-tac-toe? This robot will play with you, but unlike WOPR (from 1983’s WarGames) it’s a bit more physical

    magpi.cc/picotico

    NE-5

    Who’s Johnny?

    This compact robot inspired by Short Circuit’s Johnny 5 is also powered by Raspberry Pi 5. It’s a very advanced robot with stereoscopic vision

    magpi.cc/ne5

    C-Turtle

    Landmine clearing robot

    This clever and very cheap robot is great for clearing minefields, which hopefully is not something you’ll have much need for. If you do, though, know it’s made of cardboard and does move like a turtle.

    magpi.cc/cturtle

    BMOctoprint

    3D printing buddy

    This helpful robot keeps an eye on your 3D printer and looks very cute while doing it. It’s also 3D printed itself!

    magpi.cc/bmoctoprint

    AI-suke the robot

    Remote greeter

    This robot uses facial recognition to greet people at the door, and was created during COVID lockdowns. It alerts the home owner when someone arrives, and even talks to them

    magpi.cc/aisuke

    Open Weed Locator

    Farming robot

    Weeding can be a long task that requires a sharp eye and precision, a perfect use case for machine learning on a robot in a big field, which uses computer vision to detect and then pick weeds

    magpi.cc/openweed

    CUBOTino

    Toy puzzle solver

    The theory behind Rubiks cube solving is fascinating, and so is the sport of doing it with speed. While this robot won’t be beating any world records, it’s very fun to watch.

    magpi.cc/cubotino

    Olga The Fortune Teller

    Clairvoyant AI

    This fortune teller uses ChatGPT to predict your fate. It’s probably not going to be correct, but it’s also about as accurate as star sign horoscopes, so your mileage may vary

    magpi.cc/olga

    K-9

    Famous robot dog

    This full-size replica of the classic Doctor Who prop recreates the original and adds several features the older version didn’t have, such as touch sensors

    magpi.cc/k9replica

  • Office space

    Office space

    Reading Time: 2 minutes

    This has caused me a little bit of a quandary though. My desk in the office is my home away from home and I want to make it feel comfy and welcoming when I visit. However, I’m not there that often, so I can’t bring in stuff I need at home, where I do most of my work.

    Sparse

    Currently I’ve brought in an original Raspberry Pi Zero from the cover of an issue 40, still in its blister pack, a 3D POP camera, some jingle bells I found, and a little ceramic hedgehog with a fake succulent plant growing out of it. It’s also got some prizes there for future competitions but they’ll come and go so that’s a bit different. The benefit of bringing stuff in also means I won’t have it filling up my home any more, but don’t tell the boss that.

    I’ve been thinking about having little Raspberry Pi and/or Pico-powered devices to keep there – I have threatened to make a mini set of two drums and a cymbal so I can make a rimshot machine to punctuate my steady stream of bad jokes – and as we have a fancy new maker lab here with lots of toys – er, I mean serious tools – I feel I should make use of that while I’m visiting. Send me suggestions for simple little machines to the usual places!

    Something to call your own

    This is clearly a fairly unique and low-level problem, but I wanted to bring it up because it is important to be able to have a space to work/indulge in hobbies at while being comfortable. I have the luxury of being able to personalise my working space at home as well as my hobby space, which is full of boom arms holding cameras, lights and microphones though. I may have chosen the wrong hobby.

    It’s taken me a while to get to this stage, so don’t get frustrated if it takes a while for you to get a space you can feel comfy in. Just like learning any skill, it can take practice as well as some trial and error. Also, money.

    I now need to figure out the work policy on how many hedgehog plushes I can keep on my desk.

  • Retro printer

    Retro printer

    Reading Time: 4 minutes

    “I was working at Heathrow Airport developing controls software for a baggage handling line in 1999 when we decided it would be useful to attach a dot matrix printer to keep track of errors and how the code was treating each piece of luggage passing through the system,” he explains.

    “The choices for a dot matrix printer with a Centronics connector were very limited and still cost more than £500. From using a Sinclair QL at home I also knew the problems of finding a suitable printer which understood plain text and realised this was going to pose an increasing issue for home-computer users and industry.”

    Emulating the Seiko QT-2100P printer was tricky. It works with a watch-timer instrument, but the control codes didn’t follow any logical pattern for text or graphics output. Rich discovered it sends the raw data of tick-tock readings from a watch and the printer decides how to display the readings

    Having talked with two fellow electrical engineers, he tried in vain to work out a low-cost solution. “It was only with the release of the earliest Raspberry Pi that I realised an affordable printer emulator could be developed,” he says. This prompted him to begin work on the Retro-Printer project – a HAT designed to plug into a Raspberry Pi computer that allows data captured from the Centronics (or parallel) port on a retro machine to be sent to a modern printer.

    Bit by bit

    Most personal computers released from the 1970s to the 2000s had Centronics ports for connecting the machines to printers and other devices. Data would be sent eight bits at a time in parallel to each other at 150 kilobytes/sec. Rich figured he could develop working hardware that acted as an interface between the port of any one of those computers and the Raspberry Pi. Software would then convert the captured data into a PDF, ready for printing.

    “The Retro-Printer HAT is simply an interface to convert the incoming data signals from the Centronics output to the GPIO pins on a Raspberry Pi computer,” Rich says. “The hardware incorporates some hard-wired signals so that the busy signal is asserted as soon as any data is received from the Centronics port, and we found that we needed to add jumpers to allow 5v to be enabled on three different pins of the Centronics port as this was expected by some computers. We also initially added an offline switch as a nod to the fact that many old printers had one but we’ve since changed the software to support different functions on that switch such as swapping page sizes or printer types.”

    The Retro-Printer HAT means you don’t need to buy an expensive dot-matrix printer, delve into the used market (and struggle to find ink cartridges or ribbons) or upgrade your software and equipment

    The software is written in C and it makes use of a single capture process that runs constantly. “It watches for incoming data, spooling it to a temporary file and sending the acknowledge and ready signals as we process each byte,” Rich continues. “That process also has to deal with 7-bit or 8-bit data, the position of an offline switch and different timing mechanisms.”

    There are two background processes: “One handles the three LEDs on the HAT which can be controlled externally by the user if they wish and the other is the all-important printer emulator.” Since there have been so many different printer types over the years, testing has been a major challenge. “We’ve had to work alongside users to identify and address issues particularly around equipment which does not fully implement the Centronics protocol or where there is little or no information about programming.”

    Ink-spiring

    Such is the lack of information about some original printers, Rich has sometimes had to rely on old faded printouts or photos on the internet. “We’ve been able to reverse engineer the printouts mainly using a Sinclair QL emulator in the first instance to understand what the data means,” he says. As a result of all of this, different printer emulators have been developed for each printer type.

    “They all include standard classes for reading the captured bytes from the temporary file and graphics routines and creating the PDFs,” Rich explains. “The printer emulator is responsible for interrupting each captured byte and determining whether it is data for processing, text or a printer command – for example, an ESCape code sequence.

    The Retro-Printer software formed Rich’s second ever C program. His first was amending third-party code for the Sinclair QL to support 720dpi and full colour printing on an Epson printer in 1999

    “We then create a PNG of the printed page in memory using those printer commands to set the position on the page and draw any text or graphics. Once the capture process indicates that it thinks the end of the print job has been reached, or we have filled a page of data, the PNG is converted to a PDF for printing or storage.”

    Given the amount of work involved, it’s surprising to hear that the project was created rather quickly. “Thanks to a contact in Germany who had previously developed hardware for the Sinclair ZX81, the initial hardware and basic Epson printer emulator only took six months to develop,” Rich says. “Getting the product readyfor manufacture by a well-known Raspberry Pi supplier took a further 12 months, although thanks to a production issue picked up after the initial batch of boards were received and sold, it took another six months before we had a v4 Retro-Printer.”

    Not that the work is complete. Development is still ongoing as Rich meets new challenges and old printer technologies. “We have found a niche among retro computer users and industry alike, with uses from the humble ZX Spectrum and Commodore 64 through to various commercial flight simulator and industrial production lines,” he says. “In some cases, we have extended the useful life of multi-million pound equipment which would have needed complete replacement for the sake of a working printer.”

  • Meet André Costa: the brains behind rpilocator

    Meet André Costa: the brains behind rpilocator

    Reading Time: 3 minutes

    The service we now know as rpilocator started off as cm4locator, with André coding it during a couple of days off. Initially it was private, and within a couple of days it had helped him locate – and buy – a Raspberry Pi Zero 2 W. Surprised at how easy it was, he decided to make a public version.

    “I registered the domain on January 26 and spent a couple of hours a day after work adding more listings to be tracked,” André says. “On January 29 I pushed the website to a cloud service. Rpilocator was officially live but no one knew about it. I waited a day to make sure everything was working and I sent an email to Lee from leepspvideo and Jeff Geerling.”

    This Raspberry Pi Pico-powered air quality sensor helped André and his family when Canada wildfires caused issues

    From there, word spread, and rpilocator became the best way to find a Raspberry Pi.

    What is your history with making?

    I grew up in a household where both my parents were very handy at making things. My dad is an engineer who loves tinkering with everything. I remember one of the first projects we worked on together was a crystal radio receiver – the classic kid introduction to making project.

    A Raspberry Pi Camera Module zooms in on André’s soldering efforts

    I grew up in Brazil and access to maker kits wasn’t as widely available as in the US or the UK. This was in the ’80s and the ’90s. There were some STEM magazines available in English and that was one of the reasons why I wanted to learn English.

    My mom started sewing when she was young and she’s an experienced seamstress. Seeing a flat sheet of fabric turn into a 3D object was so inspiring to me. I’ve played with and created things with textiles my whole life.

    What projects have you made with Raspberry Pi?

    I’ve used Raspberry Pi in quite a few projects over the years ranging from a network of sensors to home automation and camera applications.

    Last year, there were many large wildfires in Canada. A lot of the smoke drifted into where we live. The air quality outside was unhealthy for long periods of time. My daughter hadn’t turned one yet and I wanted to make sure the air quality inside our home was healthy for her. I created a PCB that hosts a Pico W and makes it easy to plug an air quality sensor and I2C devices to the Pico W. It runs an open-source CircuitPython firmware that calculates the Air Quality Index inside our home and sends sensor information through MQTT.

    There’s a lot of green on rpilocator now that supply chain issues are mostly resolved around the world

    What is your dream project?

    I find the intersection between science and art so intriguing. My pie-in-the-sky project would be something that combines scientific knowledge and artistic expression. I don’t know exactly what it would be. Maybe something that would spark kids’ interest in learning more about science and art.

  • Home Assistant Yellow review

    Home Assistant Yellow review

    Reading Time: 2 minutes

    Setting up the device is very simple, although depends slightly on the version you get. The kit that comes with a Compute Module 4 already installed is basically ready to go, just requiring you to get it set up for your network and IoT add-ons.

    If you’re adding the Compute Module, you just need to take the case off using the hand-tightened screws (no screwdrivers involved) and firmly click CM4 in. You can also add an M.2 SSD at this stage too if you want the extra storage. After that, it’s just installing the OS via a USB stick (set up with Raspberry Pi Imager), and then doing the usual network setup. The longest part of setting up this way is just letting all the software install – in about 30 minutes we were all ready to go.

    The board comes with its own heatsink for CM4, as well as a PCIe x1 expansion slot for SSDs

    Automated automation

    During the last stages of set up, Home Assistant will let you know what devices it has found on your network. It has access to a huge range of services and standards as you’d expect, and puts any found devices on your dashboard for you to configure further. This is accessible via a smartphone app or your browser, and there’s an astonishing level of customisability in the software. From the use of general active triggers for actions (including voice control) to different passive ‘scenes’ that will, for example, automatically lower the lights when watching TV.

    As this is positioned as a big hub on your network, you can also add plenty of other software services to it – such as Plex, Sonos, TOR, and a whole variety of extensions that you can easily add from the browser. The SSD slot will come in handy if you use the media server applications.

    It’s a fantastic piece of kit that we found very easy to use without sacrificing any of the nitty-gritty home automation tools you’d want to use to truly customise your home – to the point that it’s inspired us to expand the amount of automated devices in our home.

    The dashboard surfaces a lot of information so that you can perfectly tweak your home

    Verdict

    10/10

    Extremely easy to set up and use, it’s a very compact and practical box that really helps power your home.

    Specs

    Dimensions: 123mm x 123mm x 36mm

    Power: 12v/2A barrel DC jack, PoE+ IEEE 802.3at-2009 Class 3 or 4

    Extra features: M.2 SSD slot, stereo audio DAC with 3.5mm jack output, enhanced wireless (Silicon Labs MGM210P Mighty Gecko Module), RTC

  • PiDP-10

    PiDP-10

    Reading Time: 4 minutes

    Mainframes were actually quite boring machines to work with. You created punch-cards, fed them in, waited, then a response was printed out. DEC’s PDP-10 was the first to be truly interactive. It was DEC’s decision in 1968 to provide a unit to MIT that really sealed its place in history. For the first time, a mainframe became a multi-use computer. Students and staff attached graphics terminals and other displays and started hacking the system. One of the main outcomes from this period was the first computer game, Spacewar! PDP-10s were the first computers to connect via ARPANET, which later became the internet.

    A look at the back reveals the mount for Raspberry Pi 5

    Pieces of the puzzle

    Oscar’s new project had two distinct parts: The emulator and the hardware. In truth, the hardware is a simple lightboard with some control circuitry. It’s the attention to detail that makes it special. However the software was a bigger problem. Oscar wanted to recreate the MIT experience, and that meant emulating their custom operating system, the Incompatible Timesharing System (ITS). Fortunately, a group was already working hard on emulating ITS, despite MIT having switched everything off in the 1990s. When Oscar met Lars Brinkhoff, the principal driver of the project, the PiDP-10 was born.

    The beautiful injection-moulded case is two-thirds scale and took two years to get right

    Now emulation was taken care of, attention turned to the hardware. Part of the magic of the PDP-10 is its beautiful panel, complete with rows of lights and toggle switches. Oscar was determined to create an accurate replica and found it a satisfying and fun process: “Producing that pretty front panel, with its artwork and transparent windows for the LEDs behind it. That is artisanal work that I really enjoy. Endless tinkering, and then tweaking a big printer to print out the front panels with the exactly correct colours, that sort of thing.”

    The injected-moulded case, over 50 cm in width, would be more challenging though. “The problem with injection mould making is – you make a 3D model, you give it to a mould maker, and if you’re lucky he makes a mould to your specifications. Any mistake you made in your 3D model is your problem, there is no going back to fix things.” Luckily, Oscar found a friendly manufacturer who understood the importance of the project and helped him with the process. The result took two years to get right.

    The components that make up the PDP-10 are simple, but precision

    The PCB was designed in Kicad, connecting matrices of LEDs and switches to the GPIO of a Raspberry Pi 5, which would be hidden away inside the case. The next challenge was to interface everything together. “Part of the fun is getting the simulator working right. Making sure that it blinks the right LEDs at the right time, that the complex front panel switches for the debugger built into the system really work as they did on the old machine.” explained Oscar. But how to confirm this? Since the mid-eighties there have been no operational PDP-10s. In 2018 Paul Allen, co-founder of Microsoft, who had a strong affinity with the mainframe, tasked the Living Computer Museum in Seattle with restoring an example. Shortly before the pandemic, Oscar was able to see the machine working and fine-tune the emulation to match. Sadly Allen died a few weeks before the restoration was complete.

    It was obvious to Oscar that the recreated PDP-10 would be based on Raspberry Pi. A primary factor was cost, as he could see no way he could assemble all the I/O ports and connectors necessary for less than the cost of Raspberry Pi 5, which had everything he needed. Even though the Raspberry Pi does not run a true real-time operating system, it is fast enough to be able to scan the switches and refresh the LEDs two hundred times a second, which is more than enough for accurate emulation.

    Two hearts

    Oscar also wanted the result to be ‘dual-hearted’. Emulating a PDP-10 and controlling the front panel is a breeze for Raspberry Pi 5, so there’s plenty of processing power available to run other things such as a media server. It’s certainly more aesthetically pleasing than a small black box.

    Is Oscar happy with the result? “Yes! In the end, I think the primary motivator for such a project is that you want to have this thing for yourself, blinking away in your living room, and it becomes almost an obsession to Get It Right. And I think we did.” He acknowledges that this has been a project with a lot of contributors such as the ITS Reconstruction Project and many ex-Digital employees, many of which attended the project’s launch at MIT in April.

    Best of all, if you’re happy with through-hole soldering, you can have your own PiDP-10! Oscar has put the kit into production and you can order it from his site and build your very own 1960s mainframe. This project has taken seven years, but Oscar is not done yet. Next on the list is the PDP-1 from the 1950s which would complete the ‘evolutionary tree’ of interactive computers. We can’t wait.

  • Understand artificial intelligence in The MagPi magazine issue #141

    Understand artificial intelligence in The MagPi magazine issue #141

    Reading Time: 2 minutes

    Learn how AI really works by building your own language models, image diffusers, and smart robots

    Raspberry Pi AI Made Clear

    Our Raspberry Pi AI Made Clear feature demystifies artificial intelligence by showing you how to develop generative technologies using Raspberry Pi and open-source software. Create personal image diffusers, generate large language models, and assemble intelligent-acting robots, cameras, and speech assistants. All while keeping one eye on the ethics at play!

    Use CDP Studio and Kinematics to learn how to control industrial robots

    Control an industrial robot arm

    This month we use CDP Studio and its Kinematics framework to program a Raspberry Pi-powered robot arm, the myCobot 280 Pi we reviewed in The MagPi magazine issue 137. CDP Studio is an ‘out of the box’ software development tool to build industrial control, automation, and edge systems. Yet it’s fairly easy to get to grips with its low-code programming environment.

    Raspberry Pi 5 cases on test

    Raspberry Pi 5 cases

    We’ve got 10 Raspberry Pi 5 cases on test this month. We’ve tested cooling effectiveness and Wi-Fi signal alongside each case’s capacity for mounting HAT hardware and access ports. Keep your Raspberry Pi in the best case!

    Discover and control devices on a home network with Home Assistant Yellow

    Home Assistant Yellow

    Home Assistant has been around for nearly as long as Raspberry Pi has. You can even find it in our Raspberry Pi Imager. It’s no surprise then that Home Assistant Yellow branded hardware is pretty high quality. This neat board finds devices on your home network enabling you to take direct control of them with a dashboard interface.

    This Pi-DP10 mainframe recreation brings a classic machine back to life

    PiDP-10 Mainframe

    After tackling the PDP-8 and PDP11, Oscar Vermeulen goes mainframe with DEC’s PDP-10. PJ Evans fires up the big iron and looks at this incredible Raspberry Pi project that brings a classic mainframe computer to life.

    Get your copy today

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

  • Win an ED-HMI3020 Touchscreen

    Win an ED-HMI3020 Touchscreen

    Reading Time: < 1 minute

    Subscribe

  • Raspberry Pi 5 and Raspberry Pi Pico

    Raspberry Pi 5 and Raspberry Pi Pico

    Reading Time: 3 minutes

    Raspberry Pi 5 and Thonny IDE

    The easiest way to program Raspberry Pi Pico is with MicroPython, a Python-compatible programming language developed to run on microcontrollers. With Pico connected to Raspberry Pi 5 via USB, you can use the Thonny IDE (integrated development environment) application to write MicroPython programs and run them on Pico. Packed with features, Thonny is very user-friendly and its ‘Shell’ pane will show you any output from the running Pico program, or error messages if something goes wrong. It also features a built-in debugger which lets you walk through a program step by step to show what’s happening at each stage, helping you to find bugs.

    Programming Pico

    We’ll connect Pico to Raspberry Pi 5 and write a MicroPython program to blink its on-board LED.

    1. To program Pico using MicroPython, we’ll use the Thonny IDE. With Raspberry Pi 5 connected to a monitor, open Thonny – found in (top left) Menu > Programming.

    2. Connect the larger end of the cable to any free USB Type A port on Raspberry Pi 5. While holding Pico’s BOOTSEL button, connect the other end of the cable to Pico’s micro-USB port to mount it as a drive.

    3. We need to install the MicroPython firmware on Pico. In Thonny, click ‘Local Python 3’ at the bottom right of the window. Select ‘Install MicroPython’ from the pop-up menu.

    4. In the next menu, click the ‘variant’ drop-down and select your Pico model type to get the correct version. Finally, click the ‘Install’ button to flash the MicroPython firmware to Pico.

    5. A message in the Shell pane will confirm the version of MicroPython installed on the connected Pico. You are now ready to start programming it.

    6. To use Pico’s GPIO pins, we need to import the Pin class of the

    machine

    MicroPython module. Add this code to Thonny’s main pane:

    from machine import Pin

    7. Next, we assign a variable (we’ve named it

    led

    ) to the LED’s GPIO pin on Pico and set it as an output:

    led = Pin(“LED”, Pin.OUT)

    8. To toggle the LED on/off, we add the line:

    led.toggle()

    Click Thonny’s Run button to run the program and turn Pico’s LED on. Run it again to turn it off.

    9. To save your program, click Thonny’s Save button and name the file with a .py suffix – we called ours blink.py – and opt to save it on Raspberry Pi Pico.

    10. To toggle the LED at regular intervals, we’ll alter the code. Under line 1, add the following to import the

    time

    module’s sleep class:

    from time import sleep

    11. Before

    led.toggle

    , add a new line to create an infinite loop:

    while True:

    Indent

    led.toggle

    by four spaces (so it becomes part of the loop).

    12. Add another indented line to the loop to add a one-second time delay each time:

    sleep(1)

    Now run the code and the LED should toggle on and off every second.

  • Sandeep Mistry profile

    Sandeep Mistry profile

    Reading Time: 2 minutes

    After working for various companies as a software engineer in Ottawa, and also working remotely with Arduino, he started looking for a new way to use his expertise with embedded and mobile devices. There’s not much better place than Arm for that, and when an acquaintance of his mentioned a position coming up, he jumped at the chance.

    He’d already worked on a Raspberry Pi Pico project before joining Arm – if you cast your mind back to 2021 around the time Pico was released, he built a way to add Ethernet to Pico via the PIO. It was even featured on the blog. Since then, he’s been putting out software and hardware projects of varying levels of complexity, and has really shown off the power of Raspberry Pi in the process.

    Sandeep’s builds

    Give a plant a personality

    “[A favourite project of mine] was using Pico W to create a plant that texts you when it needs water, after it’s been watered, good morning/night, and random jokes,” Sandeep says. “It was the first time I used MicroPython, and it was fun to use the Pico W to give a plant a personality.”

    See sound in real time

    Building on the Pico microphone project, this project shows how you can create cool visualisers for sound using a display also hooked up to Pico. These specific visualisations are audio spectrograms, which display sound as amplitude over time for cool visual effects.

    Create a USB microphone

    Pico can do a lot with its PIO capabilities – and it also has an ADC (analogue-to-digital converter) onboard. Combining the ability to connect to a system as a USB device while also listening to a microphone means you can create a custom Pico-powered mic. It’s an interesting and fairly cheap way to add a mic to a computer.

  • #MagPiMonday

    #MagPiMonday

    Reading Time: < 1 minute

    Every Monday we ask the question: have you made something with a Raspberry Pi over the weekend? Every Monday, our followers send us amazing photos and videos of the things they’ve made.

    Here’s a selection of some of the awesome things we got sent this month. Remember to follow along at the hashtag #MagPiMonday!

  • Mini Observatory

    Mini Observatory

    Reading Time: 3 minutes

    A familiar tale

    Matt began with a series of traditional telescopes, but found them “a little frustrating to use in practice”. It was hard to locate objects in the sky and most of what he could see was “often just a grey smudge”. Digital telescopes were not that common and were expensive, but when Raspberry Pi launched the HQ camera sensor Matt wondered whether he could build a really simple digital telescope with the Raspberry Pi at the heart of it.

    The gearing allows the telescope to move vertically and horizontally in 0.004-degree steps

    He had already built an Aurora clock that lets you know if there’s a chance of seeing the Northern Lights, and a similar device using Raspberry Pi to track the International Space Station. With ten years of Raspberry Pi familiarity to draw upon, Matt was confident he could handle both high- and low-level functions and decided it would be the ideal basis for his own telescope and observatory design. “I knew there were Python packages available and I hoped to find pre-existing solutions to most of my needs”. The initial plans were for a Raspberry Pi Pico project but Matt soon realised he needed more power, switching to “Raspberry Pi 4B with RP2040 help”.

    Matt was less confident of his 3D design skills: he needed to create more parts than he’d ever done previously and regarded this aspect as a distraction at the time, but says it’s a new skill that has come in useful elsewhere since.

    Seeing the lights

    The Mini Observatory design emerged from successive experiments using Raspberry Pi Pico. Having started tinkering, Matt gradually developed routines to solve specific problems, learning how to control stepper motors and the technical aspects of the HQ camera. He needed precision here and went to a specialist company called Stepperonline to source them. Matt bought other parts from well-known Raspberry resellers such as The Pi Hut and Pimoroni, with more generic nuts and bolts from general hardware stores. He cautions over scrimping on potentially dangerous items such as power supplies: “always buy them from a trusted source”.

    A processed photo of the Andromeda galaxy using images gathered by the telescope using a 50mm lens

    The project provided a great learning experience, with the observatory, gears and mechanism all home-grown. The ‘semi-intelligent’ motor controller for the telescope is probably the most novel element. Matt needed a way for the telescope to move while Raspberry Pi was busy taking photographs, so gave the motors a little RP2040 microprocessor brain. “They were released at the perfect time.”

    Matt was able to make use of Python packages such as Skyfield, OpenCV, PiDNG and Astroalign and says it was a good choice for his Mini Observatory project. He is also really keen to process the photographs in real time onboard the telescope. “I haven’t solved that yet, so I still need to do some offline processing afterwards. Realtime processing must be possible, I just have to research more.”

    The software attempts to recognise objects and helps ‘tune’ the system

    Since Matt first unveiled the project, several other makers have created versions, providing invaluable feedback and prompting him to tweak a few elements such as removing the infrared cutoff filters from his cameras which will make more objects visible.

    Matt is also plotting a second version of his mini observatory, and is excited about the possibilities of Raspberry Pi with improved imagery and support for a second camera: one camera to do the tracking another to photograph the heavens. In fact “Raspberry Pi 5 may trigger quite a rewrite!”

  • Passive Cooling Open CNC case review

    Passive Cooling Open CNC case review

    Reading Time: < 1 minute

    On the smooth opposite side of the two parts are thermal pads; for the top piece, there are three that stick to the SoC, power management IC, and Wi-Fi and Bluetooth module. The base section is almost totally covered by a single thermal pad that sticks to the underside of Raspberry Pi 5.

    The case comprises two aluminium heatsink parts that sandwich Raspberry Pi 5 between thermal pads

    Unlimited access

    The two case parts are secured in place with long bolts. With no side pieces, access to Raspberry Pi 5’s ports is unobstructed. Cutouts in the top part give access to the GPIO pins and PoE header. There are also slots for the two camera/display MIPI ports and the UART and RTC battery connectors, while the fan connector remains uncovered.

    So, how much cooling does this case provide? A lot! When idle, Raspberry Pi 5 was 10–15°C cooler than without a case; running a stress test, the difference was around 40°C.

    Verdict

    9/10

    Provides an impressive amount of cooling while giving full access to all Raspberry Pi 5’s ports.

    Specs

    Cooling: Two large heatsink panels (top and base) with thermal pads attached

    Features: Cutouts/slots for all Raspberry Pi 5 top-side ports; open sides for the others

  • Coding in an AI age

    Coding in an AI age

    Reading Time: 2 minutes

    Artists are understandably less than thrilled that AI is producing facsimiles of their work without giving them credit, or payment. For coders: AI changes everything. It can help you write, explain, understand, and improve the quality of code, and increase productivity by enhancing performance. It’s versatile in all programming languages and can help translate code between them.

    On the downside, GPT can spit out code that kind of works for people who sort of understand it. And, as it gets better, they may not need, or even want, to understand it.

    Abstract arts

    Everybody involved in technology knows about abstraction. The process whereby the intricate technology stack gets hidden away, and the user is presented with a simpler interface. The iPhone is easier than the GUI PC, which is easier than the DOS PC, which is easier than the PDP.

    This next step: the ChatGPT “How can I help today?” rather than an IDE and knowledge of coding.

    Raspberry Pi exists, on some level, counter to abstraction. We want to tear people away from their shiny slabs of glass and glue, and show them the insides of a computer. “It isn’t magic, it’s just billions of on/off switches flicking on and off at a billion times per second!” Which is, in itself, a form of magic.

    Anybody doubting the importance of GPT and similar technologies isn’t really paying attention. The negative responses remind me of Douglas Adams’ three rules:

    1. Anything that is in the world when you’re born is normal and ordinary and is just a natural part of the way the world works.

    2. Anything that’s invented between when you’re 15 and 35 is new and exciting and revolutionary and you can probably get a career in it.

    3. Anything invented after you’re 35 is against the natural order of things.

    Most of us are somewhere between two and three, but objections to AI aren’t just Ludditism. When applied to creative arts, AI devalues human involvement and can be accused of plagiarism. The same can be said of code, of course, but art feels instinctively more personal.

    Coding is an incredibly cerebral process and requires creativity and deep thought. But coders stand on the shoulders of giants. I may understand a merge-sort algorithm, but I sure as heck didn’t come up with it. And using AI to put it to work and explain it to me feels inherently useful. John von Neumann might disagree if he was around, but somehow I feel he’d be delighted.

  • Backpack Cyberdeck

    Backpack Cyberdeck

    Reading Time: 3 minutes

    A great framework

    The Backpack Cyberdeck was inspired by Davide’s need to move his experiments easily without setup breakdowns – he works in the metalworking industry, and reasoned that a custom-designed frame that fits inside a commercially available backpack would come in mighty useful for other people as well as himself. He says the idea is that hobbyists and professionals can carry, use and interact with a variety of devices on the go. Raspberry Pi 4 was chosen for its compactness and power efficiency and serves as the ‘brain’ of Davide’s mobile setup. It allows him to remotely control devices mounted on the frame. The project runs on open-source software – “primarily GNU Radio for wireless communications analysis, and Kali Linux tools for security and penetration testing tasks”. He says the build cost was “moderate, reflecting the price of the Raspberry Pi, the backpack, and some additional electronic components like the RTL-SDR”.

    A slightly overclocked and power-efficient Raspberry Pi 4 acts as the brain, allowing for the components to be remotely controlled

    Sharing the build photos on Facebook, Davide explains that it transforms a simple backpack into a customisable platform, allowing for the creation of mobile workstations, entertainment systems, or unique projects through 3D-printed attachments”. The Backpack Cyberdeck avoids the risk of damage or subsequent discomfort because there is no desk outdoors. Having cycled to his destination he can conduct his outdoor experiments “the most comfortable way”.

    Bag your own

    For Davide, one advantage of using Raspberry Pi is its compact size, which allowed him to design a system that was both powerful and practical. The design is entirely original, with all parts created or modified by him to suit his project’s requirements.

    Davide has now developed an online store for versions of his Backpack Cyberdeck

    Interest in the backpack led Davide to set up Bag Builds as an online custom bag business, but he designed the Backpack Cyberdeck’s frame for DIY enthusiasts with a passion for 3D printing. He shares STL files for several versions of the Backpack Cyberdeck on his GitHub page, with customisation options for the hardware components all designed to fit neatly into a standard backpack. There is plenty of opportunity for DIY builds to be customised, since some users may need holes to allow antennae through, and to fit cables.

    Reassuring curious but impressed project followers, Davide says all the components meet flight-safe guidelines for power output, so it could potentially be taken on board aircraft too. Davide is at pains to point out that everything he’s done with the Backpack Cyberdeck is legal and poses no security issues. He has posted several assembly videos on YouTube that show the breadth of uses for his backpacks, including using one as a mobile radio station.

    “The idea could be adapted for various other purposes, such as mobile video streaming, electronic repair setups, or even as a simple organiser,” he says. “My advice to anyone interested in similar projects is to start small, and to pay attention to the interference that the various devices and cables could generate, compromising the functionality of some parts.”

  • Meet Sara Parodi: The MagPi’s new designer

    Meet Sara Parodi: The MagPi’s new designer

    Reading Time: 3 minutes

    “Growing up, I went to art school in Italy,” Sara says. “It felt like the right path for me to undertake, and through the years I pushed myself to try different things; I would find myself at events drawing on walls or floors, other times I would be at home testing lino printing using a DIY device made from an olive press. I’d even try painting on T-shirts or home-printing personalised stickers to stick everywhere. At the time I couldn’t figure out a specific definition of what I wanted to do, but nowadays I feel that the best way to explain it is that I love to work as a visual communicator. So here I am.”

    How did you join Raspberry Pi?

    At the end of 2021 I was submitting my final major project for an illustration MA at Falmouth University. In January I was ready to get back into the creative industry, so I began looking for job vacancies when I came across to a catchy one on LinkedIn. In a series of paragraphs, I saw described what I enjoy doing, and I applied for it straight away. The interview was great and I remember coming back home very enthusiastic about it.

    What Raspberry Pi design stuff have you worked on?

    I’m lucky enough to be in a place where projects vary, and the nice part is that depending on the scale of them I might be working on my own or with the skillset of my colleagues. So far I’ve worked on a variety of projects of different scales, such as packaging design, visual communication for events and related merch, design layout for case studies, books, flyers, brochures and now magazines!

    Some of the more recent, simple (and very stylish) graphic design that has been the work of Sara

    Have you made anything with a Raspberry Pi, or have any plans to?

    I’d never done any coding before joining Raspberry Pi, so I’m still in a phase of learning while watching [my partner] doing some small home projects. Last year I participated in a couple of workshops on using Pico on a breadboard, and learned how to turn on some LEDs!

    In regards to future plans… I have an idea for creating something that involves my artwork, like a sort of flipping book installation, or a projected animated GIF, but I need to define the idea first and understand how to use Raspberry Pi with it.

    Raspberry Pi prides itself on simple yet beautiful packaging – we especially love the new Touch Display designs which Sara worked on

    What other hobbies do you have?

    I love creating bodies of work that mix illustration with fine art, along with testing new materials and techniques. I usually do this at the studio space I share with other creatives in the heart of Cambridge. I enjoy going there to meet them for a coffee or to chat about what they’re up to. Sometimes we organise open studios or small exhibitions next door.

    Recently I also started to explore working with ceramics, and how to bring out the personal artwork in such tactile material.

  • Get coding with Raspberry Pi in The MagPi magazine #140

    Get coding with Raspberry Pi in The MagPi magazine #140

    Reading Time: 2 minutes

    Get coding with Raspberry Pi

    Learn to code with Raspberry Pi computers

    In this month’s edition of The MagPi we look at your coding options with Raspberry Pi: should you learn Python, Node.JS, or Go? And which IDE is best? PJ Evans has you covered with this in-depth guide to coding.

    Raspberry Pi 5 & Pico

    Double your making ability by using two of Raspberry Pi's products together

    Raspberry Pi 5 is the fastest Raspberry Pi ever made, and Pico is the RP2040 microcontroller-based computing board. Put the two together and you can really start learn code, and electronics and build some amazing things.

    Cyberdeck Backback

    This backpack features Raspberry Pi and a wide range of electronic and wireless communication technology. With it Davide Marchetti can take his mobile lab from place to place performing security and wireless communication analysis.

    Improve your upcycled Sonos Play:1

    Trick out your upcycled Sonos Play: 1 system with fresh Raspberry Pi 5 software

    PJ has converted a Sonos Play:1 into a Raspberry Pi-driven powerhouse of sound. This month he’s going to trick it out with software.

    Amazing new projects: Red Telephone

    Turn a classic piece of history into a Raspberry Pi-powered personal assistant

    Rob Miles returns with a brand new project. The red telephone takes a classic analogue rotary phone and turns it into a super smart assistant with Raspberry Pi in the innards. 

    Get your copy today

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