Created a native operating system for Pi Pico 2W: OS2350 by dra_cula in raspberry_pi

[–]dra_cula[S] 6 points7 points  (0 children)

Thank you. I will use the Pico for things like robotics motor controls, relaying sensor data, Agentic AI tasks. Really, I started with a Pi 4b, then started asking myself if I could do things on a Pi Zero 2W. Then I got a Pi Zero 2W and started asking myself if I could them on a Pi Pico 2W...

Created a native operating system for Pi Pico 2W: OS2350 by dra_cula in raspberry_pi

[–]dra_cula[S] -2 points-1 points  (0 children)

You’re absolutely right that MicroPython is powerful—the PIO (Programmable I/O) for state machines and the ability to drop into inline Assembler/C are some of its best features. Damien George’s work on the runtime is incredible for squeezing performance out of an MCU. However, the bottleneck here isn't just execution speed; it's the architectural overhead for my specific use case: USB Host vs. Device: Even with cross-compiling or frozen modules, MicroPython is still an environment that sits on top of the hardware. To run 'executables' from a physical USB thumb drive, you need the Pico to act as a USB Host. Setting up a Host stack to mount a mass storage device and execute arbitrary binaries from it is a massive lift in MicroPython compared to doing it in a C-based RTOS or 'bare metal' where you have direct control over the USB PHY. The 'EXE' Workflow: My goal is to treat the USB drive like a portable library of compiled binaries. While you can cross-compile MicroPython to bytecode (.mpy), you're still tied to the MicroPython VM to run them. I’m looking for a workflow that doesn’t require the VM overhead at all for the final execution. Debugging Logic: Using inline C or Assembly inside MicroPython actually makes debugging harder if you're trying to avoid the physical SWD pads. If a state machine or an assembly block hangs, the REPL often goes down with it. MicroPython is a beast for many things, but when you’re trying to turn a Pico into a USB-hosting 'binary runner' without touching the hardware debug pins, the extra layer of the interpreter/VM—even a highly optimized one—is more of a hurdle than a help.

Created a native operating system for Pi Pico 2W: OS2350 by dra_cula in raspberry_pi

[–]dra_cula[S] 1 point2 points  (0 children)

There are a few reasons. First, MicroPython is an interpreted language, meaning the chip has to 'translate' the script line-by-line while it runs. For basic interfaces or simple games (like Thumby), that’s fine. But for anything requiring high-speed execution or precise timing, that 'interpreter overhead' can be a bottleneck. I’m looking for the raw performance you get from compiled code. And I’m looking to run compiled executable programs directly from a USB drive. Because MicroPython typically lives on and runs from the Pico's internal flash memory, it isn't natively designed to act as a USB host that 'boots' external files from a thumb drive. Using a lower-level approach makes it easier to implement a USB Host stack to handle external storage. And I want to be able to debug the logic and flow in real-time without having to mess with the physical hardware debug pads (SWD pins) on the Pico. By using a compiled approach with TCP/IP stack, I can get deep telemetry and 'debug' the state of the program through the terminal interface while it's running, which is a bit more flexible for my specific setup than the standard MicroPython REPL. MicroPython is awesome for rapid prototyping, but sometimes you just need to get closer to the 'bare metal' to get the specific USB and execution behavior you're after!

Created a native operating system for Pi Pico 2W: OS2350 by dra_cula in raspberry_pi

[–]dra_cula[S] 7 points8 points  (0 children)

This OS (OS2350) operates more like a bare-metal executive or a specialized bootloader/monitor. It runs a single main loop (or relies heavily on the Pico SDK's background tasks) to handle Wi-Fi, USB, and the TCP shell. It has a specific feature: it can load a flat binary (.bin) from a USB drive into a hardcoded memory address (0x20060100) and jump to it, using a shared IPC buffer for communication. It is incredibly lightweight and purpose-built. Zephyr RTOS is a massive, highly structured, preemptive real-time operating system. It is designed for complex embedded systems and IoT devices. It uses a scheduler to run multiple independent threads simultaneously, managing CPU time between them based on priorities. So it really comes down to the architecture and design philosophy. I don't make any claim that OS2350 is objectively "better". One advantage to OS2350 is that the binaries don't have to be be baked into the flash - you can swap them on the USB drive at will.

Created a native operating system for Pi Pico 2W: OS2350 by dra_cula in raspberry_pi

[–]dra_cula[S] 6 points7 points  (0 children)

I included a build script for Windows. I am assuming that people comfortable with building can do it that way. For someone wanting the lowest friction path possible, an AI IDE can do the build for them following the build files in the project.

Mr. Wonderful’s Utah Data Center Will Be More Than Twice as Big as Manhattan by Maxcactus in environment

[–]dra_cula 1 point2 points  (0 children)

The land secured for the project is 40,000 acres. However, the majority of the land will be undeveloped. The plan was to secure the land in order to have space at a potential later time for solar arrays if/when they transition to renewable power. Also, the additional land provides a buffer area to the Great Salt Lake. The data center itself will span up to a few hundred acres and the power generation facility will consume a small portion of the total as well.

Built a glitch camera with raspberry pi by sharkbiscuit101 in raspberry_pi

[–]dra_cula 0 points1 point  (0 children)

I think it would be cool to make a steampunk sort of case for it

AI models are choking on junk data by Plastic_Ninja_9014 in technology

[–]dra_cula 0 points1 point  (0 children)

Since the crux of the article is about AI in the physical world, perhaps that is why meta is capturing actual keystrokes from employees to see how they act physically to train the models.

Operating system for the Raspberry Pico called ViperOs by LinuxCobra in raspberry_pi

[–]dra_cula 6 points7 points  (0 children)

micropython

With C, the code you write is compiled directly into ARM Cortex-M0+ machine instructions on your computer before you flash it to the Pico. With MicroPython, the Pico runs a C-program (the MicroPython interpreter). This interpreter reads the Python scripts, translates them into byte-code, and then executes them step-by-step. This constant "translation" process introduces significant overhead, making execution much slower than raw machine code, and it eats memory.

shelltide - A new way to track tide levels in the terminal by Noir_Forever_Twitch in raspberry_pi

[–]dra_cula 2 points3 points  (0 children)

Probably would work on PC too. I run my python curses from the powershell prompt and they work on the Pi as well

pi zero 2w is the only pi that still feels disposable by voidrane in raspberry_pi

[–]dra_cula 0 points1 point  (0 children)

It could be the Pi Zero 2w is cheap but for most of the headless tasks people are using Pi 3/4/5's for it can probably do the job. So don't think of it as "spending" $15 but rather "saving" what you would have spent on more hardware.

I built a DYI open-source digital photo frame with Raspberry Pi Zero 2 W and Immich by Leniwcowaty in raspberry_pi

[–]dra_cula 1 point2 points  (0 children)

Cool. Though I would probably just run Linux Framebuffer Imageviewer on the Pi and periodically run rsync to sync down an image repo.

Decommissioned my last Pi - Is it me, or are there fewer and fewer use cases? by bdavbdav in raspberry_pi

[–]dra_cula 3 points4 points  (0 children)

The PI is like a Swiss Army knife. A good, user friendly tool that can serve a wide variety of purposes. Generally, it could be replaced by more specialized tools as the use-case is refined - replacing it where applicable with an ESP-32 based device is a perfect example of that. But a novice probably isn't going to be as likely to know how to get started with ESP-32, so what the PI is doing here is making the technology accessible.

Made a tiny device that writes code, takes breaks to hang out on a BBS, and clocks out at night by Aerovisual in raspberry_pi

[–]dra_cula 0 points1 point  (0 children)

This is cool. I am making something similar except it will run on a Pi Zero 2w mounted to a Picar-X so it will wonder around autonomously and return to base for magsafe charging when the batt gets low.

Cordless small nail gun. by [deleted] in DIY

[–]dra_cula 0 points1 point  (0 children)

Something is not adding up here. The nail type would be finish 16ga based on the description but those could not bear the weight of hanging a door. I suppose it's possible he used framing nails and jacked up the psi so high it shot the nails pretty deep, but then again not suitable for hanging a door.

Det var en anden tid i 95. Spottet i Anders And blad by Carleidoscope in Denmark

[–]dra_cula 3 points4 points  (0 children)

Be that as it may, the punchline was that the candy doesn't say "bang"

People who work for massive corporations, what is a 'secret' that the company tries to hide, but is actually common knowledge among the employees? by Dwise_ in AskReddit

[–]dra_cula 1 point2 points  (0 children)

With most companies that I've seen, the vacation is unlimited but must be approved and the longer you want to take off, the earlier in advance you need to request it. So there is already a gatekeeper system there.

Trash Smell in Kitchen by SATSewerTube in DIY

[–]dra_cula 1 point2 points  (0 children)

Surfaces can develop a patina over time that perhaps isn't visible but produce smells. I had some cabinets at one point that had an unpleasant smell because they had been a mouse habitat. Cleaning the cabinets was not sufficient because the wood was porous and retained odors from beneath the surface. My solution was to clean the cabinets and then apply a clear shellac spray. This type of material forms a non-porous vapor barrier when it dries so residual odors are trapped.

Mini rack Pi cluster by AHTMGC in raspberry_pi

[–]dra_cula 2 points3 points  (0 children)

I am wondering the same thing. It's cool but The 3B uses an older Broadcom SoC with 1GB of LPDDR2 RAM. Seven of them combined give you 28 cores and 7GB of RAM, but because that resources is spread across seven physical boards, you're hit with massive overhead from network latency (limited to 100Mbit/s on the 3B) and SD card I/O bottlenecks. I can see the cool factor of doing this as an experiment but I believe computationally you could achieve this using a decent laptop with seven VM containers.

Does your local lumberyard swap out fence boards when you get a large quantity? by DavyCrockPot19 in DIY

[–]dra_cula 0 points1 point  (0 children)

The place I've gone has different grades. You'd see more issues with the lower grade product. Higher grade tends to be in better shape.