Before Starting The Journey
Main thread:
The purpose of this post is to share my experience “tinkering” with Picocalc on the Luckfox Lyra SBC. I hope my journey can help those who follow or provide some troubleshooting ideas for anyone encountering similar issues.
Regrettably, I am a complete novice when it comes to programming and Linux system development. I relied heavily on AI to implement many of the technical solutions. As a result, my skills in customizing the rootfs are still quite basic, and the current state is far from “out-of-the-box” ready. I would like to sincerely apologize for that.
However, I plan to update this post continuously. My goal is to build a more seamless, plug-and-play experience so that more people can enjoy the fun of embedded Linux hardware through Picocalc. (Just like me—Picocalc has become an excellent platform for learning about both the SBC and Linux.)
The First Version Image:
features:
- Intree LCD drivers with DRM support;
- Adb and RNDIS network interface;
- Baud Rate: The serial port operates at 1,500,000 bps. You can log in via the USB-C port on the Picocalc and view system boot verbose as power up.
- Includes an improved keyboard driver loaded as a
.kokernel module. This update specifically addresses Shift key shortcut usability within the Picocalc’s unique layout and retains the original mouse mode design from - Supports hardware PWM audio via the RMIO12 pin (requires minor hardware modification/soldering).
- SD Card Slot: The onboard SD card slot is fully functional but requires manual mounting. Note that read/write speeds are relatively slow, which may limit its practical utility for high-performance tasks.
Hardware Requirements:
-
Luckfox Lyra SBC: If you want the board to fit perfectly inside the back cover, you should purchase the non-PLUS version (the one without the Ethernet port). Personally, I don’t recommend the version with 256MB Flash, as the capacity is too small for an SBC intended for learning. The TF-card-only version is much more convenient, as it allows you to swap systems quickly just by changing cards.
-
USB Wi-Fi/Bluetooth Module: I am using the BL-M8188FU3, so my network testing concluded once I got this specific module working. It is very affordable—only about 6 RMB in China, and you can find plenty of them on AliExpress globally.
-
MX1.25 Connector Cable. You need to connect the wifi module to the lyra board with this cable.
-
Soldering Tools (Soldering iron, solder, flux): Basic soldering is required to connect the Wi-Fi module and to enable hardware PWM audio output.
-
Note 1: I tested software PWM for audio, but it suffered from annoying noise and poor compatibility. If you need audio output, a basic hardware modification to use hardware PWM is the only recommended path.
-
Note 2: Soldering is not necessary if you don’t need audio or Wi-Fi (you can actually get a network connection via the USB-C port) or if you prefer using an MX1.25 to USB-A adapter cable to handle the Wi-Fi module.
-
A vast amount of time and patience: The joy is in the endless tinkering, right?
Flash the image
Disclaimer
Unfortunately, I haven’t yet mastered the complete packaging techniques of the Rockchip SDK. As a result, this image is a “pieced-together” version rather than a polished “one-click flash” package.But the magic of apt works here: once you get the system boot up and make access to internet, every thing can be installed and customized by yourself.
Additionally, I have only tested this image on Windows. Users on Linux or macOS will need to figure out the flashing process on their own.
Step 1: Download and Extract
Download the image file and extract it to your local directory.
Step 2: Prepare the TF Card
Insert a TF card (minimum 8GB) into your Lyra Board. During the first boot after flashing, the system will automatically expand the rootfs to fill all available space on the card and create a 1GB swap file.
Step 3: Enter Flashing Mode
Refer to the official Luckfox flashing tutorial. Download RKDevTool and put your device into Loader Mode or Maskrom Mode.
Step 4: Import Configuration
Open RKDevTool and go to the first tab, “Download Image”(下载镜像).
-
Right-click anywhere in the list and select “Clear All Items”(清空所有项).
-
Right-click again and select “Import Config”(导入配置).
-
In the file selection window, change the file type filter (bottom right) to “ParameterFile(*.txt)”.
-
Select the
parameter.txtfrom my extracted folder.
Step 5: Select Image Files
After importing the config, you will see several partitions in the list: Loader, Parameter, uboot, boot, and rootfs. Match them with the files in the folder as follows:
- Loader →
MiniLoaderAll.bin - Parameter →
parameter.txt - uboot →
uboot.img - boot →
boot.img - rootfs →
rootfs.img
Click the […] button in each row to select the corresponding file, and ensure the “Check” box for each item is ticked.
Step 6: Execute Flashing
Click the [Run] (执行) button at the bottom left and wait for the process to complete. Once finished, the system will reboot automatically. If you see the red LED on the Lyra Board start blinking, the system is running.
Step 7: Final Assembly
Unplug the USB-C cable, install your Lyra Board back into the Picocalc, and power it on. If everything went well, you should see the Linux Tux penguin logo. Mission accomplished—now, enjoy the fun of tinkering with Linux !






