This post shows the automation of transferring oscilloscope screenshots from the scope to a desktop PC. Where previously a USB stick was used to transfer the images, now, the images are transferred to the desktop immediately after pressing the self-defined hotkey.
This post is the product page for a Raspberry Pico 2 5.1 Mbps Streaming Reference Implementation using TinyUSB. A Python Application is offered for throughput measurements on a Windows Host.
In this post, I explore whether the Raspberry Pi Pico 2 can act as a rudimentary oscilloscope. Some theoretical considerations about the Pico 2’s ADC are presented. These are then put to the test through measuring HC-SR04’s echo pulses.
When I read about the presence of the USB controller on the RP2350, I got intrigued if I would be able to stream data from the Pico 2 board. I set out to use TinyUSB on the RP2350 and created a host application in Python to ingest the data. This post is about some of the key insights I gained during the development of a simple datapipeline: from the pico 2W USB device to the Python USB host.
This all started when I was trying to understand how my RP2350 would react when I wanted to read a memory address like 0x00000000 on the RISC-V and ARM cores. However, this sidetracked me into a deeper understanding of debugging the RP2350 with my Raspberry Pi Debugger Probe! At first, it felt like regular breakpoints were just ignored, if the program even started running at all! My attempts at…
Just a small post about how I’m making sure I can quickly get my Raspberry Pi Pico 2W with me when on a commute. A small assortment box carries all components I need to quickly set up a small development environment.
The HC-SR04 is a popular and inexpensive ultrasonic distance sensor that measures range using sound waves. In this post, we connect it to a Raspberry Pi, explain the electronics behind the Trig and Echo pins, build a safe voltage divider for 3.3 V logic, and write a simple Python script to read accurate distance measurements. Oscilloscope measured signals put theory to the test. We’ll also touch…
A quick discovery I made while dumping ELF files with hexdump. A single flag changed the output in a way that made me rethink what I was seeing. Turns out, understanding how hexdump works under the hood is more important than it looks at first glance
We explore what happens when the GNU linker turns an object file into an ELF executable on Raspberry Pi, diving into entry points, program headers, and binary layouts.
This post dives deeper into the format of the object files generated by the ARM Assembler: ELF files. An object file is parsed by hand, just to get a better understanding of what is going on!
The journey has got to start somewhere! What could be better than a “Hello World!” application in ARM assembly on my Raspberry Pi to kick this off? It took me to the GNU assembler, syscalls and provided me glimpses into the ELF format.
About Embedded Journeys Embedded Journeys is a technical blog dedicated to exploring the world of embedded systems, Raspberry Pi, and low-level programming. The goal of this site is simple: to document real, hands-on journeys into embedded software and hardware — from first principles down to the bits and bytes. On this blog you’ll find: Deep dives into low-level programming (ARM assembly, ELF…
Privacy Policy for Embedded Journeys At Embedded Journeys ( https://embeddedjourneys.com ), the privacy of visitors is important. This Privacy Policy document outlines the types of information that are collected and recorded and how they are used. Information We Collect Embedded Journeys does not require users to create an account or provide personal information to browse the site. However, like…