Re: Heap Logging

2024-06-13 Thread Lee, Lup Yuen
Hi Mark: Thanks for watching my presentation! To show the Heap Logs, I enabled "Build Setup > Debug Options > Enable Debug Features > Memory Manager Debug Features". Here's the complete definition (I hope it's applicable to your platform)... << Symbol: DEBUG_MM_INFO Type : boolean Prompt:

Re: NuttX with rv64ilp32

2024-06-06 Thread Lee, Lup Yuen
Thanks YF! That's a very cool concept for RISC-V code: 64-bit architecture with 32-bit pointers. In case we need to use RV64ILP32 for NuttX, do you happen to have the patched source code to support RV64ILP32? Your recent PRs are very interesting, perhaps other folks here might like to comment:

Re: [Article] NuttX on Sophgo SG2000 RISC-V SoC (Milk-V Duo S SBC)

2024-05-19 Thread Lee, Lup Yuen
Lup! > > Fantastic work! And nice board to run NuttX > > On Sat, May 18, 2024 at 7:50 PM Lee, Lup Yuen wrote: > > > Soon we’ll see many new 64-bit RISC-V SBCs based on the Sophgo SG2000 > > RISC-V SoC. Will they boot NuttX? Let’s find out… > > > > (1)

[Article] NuttX on Sophgo SG2000 RISC-V SoC (Milk-V Duo S SBC)

2024-05-18 Thread Lee, Lup Yuen
Soon we’ll see many new 64-bit RISC-V SBCs based on the Sophgo SG2000 RISC-V SoC. Will they boot NuttX? Let’s find out… (1) We boot Linux on Milk-V Duo S (with SG2000) (2) Peek inside SG2000 Linux and observe how it boots (3) Then we take NuttX for RISC-V (Ox64 BL808) (4) Tweak NuttX Kernel to

[Article] Rust Apps on NuttX for Ox64 BL808 RISC-V SBC

2024-05-04 Thread Lee, Lup Yuen
Will Rust Apps run on a 64-bit RISC-V SBC? Like Ox64 BL808 SBC? Let’s find out! (1) We take a Barebones Rust App (“Hello World!”) (2) Compile it for QEMU RISC-V Emulator (64-bit) (3) Run it on QEMU Emulator with NuttX (4) Do the same on Ox64 BL808 SBC (via MicroSD) (5) We’ll discuss the

Re: Help regarding the code formatting

2024-05-03 Thread Lee, Lup Yuen
Thank you so much Greg! I'll copy and paste the relevant sections into the NuttX Docs. Lup On Fri, May 3, 2024 at 10:04 PM Gregory Nutt wrote: > On 5/3/2024 2:12 AM, Lee, Lup Yuen wrote: > > https://lupyuen.github.io/articles/pr#check-coding-style > Nice article. This would be

Re: Help regarding the code formatting

2024-05-03 Thread Lee, Lup Yuen
Hi Janardhan: I have an article that explains the "nxstyle" tool, maybe this will help? https://lupyuen.github.io/articles/pr#check-coding-style I'm not aware of a script that does auto-formatting for NuttX Code. I do it manually in VSCode :-) Lup On Fri, May 3, 2024 at 3:24 PM Janardhan

Welcoming Rushabh Gala to NuttX GSoC

2024-05-01 Thread Lee, Lup Yuen
Please welcome Mr Rushabh Gala to the NuttX Community! He's a Third-Year Student at Mumbai University (Computer Science and Engineering). For Google Summer of Code, I'll work with him on Rust Apps for NuttX. (Which includes the Rust Wrapper for the POSIX Functions in NuttX) He's new to NuttX,

Re: [Article] Rust Custom Target for QEMU RISC-V on NuttX

2024-04-20 Thread Lee, Lup Yuen
een phosphor effect, how did you do it? > > Best Regards, > > Alan > > On Sat, Apr 20, 2024 at 7:41 PM Lee, Lup Yuen wrote: > > > Last article we were compiling Rust Apps for NuttX QEMU (RISC-V 32-bit). > > And we hit a baffling error… > > > > "C

[Article] Rust Custom Target for QEMU RISC-V on NuttX

2024-04-20 Thread Lee, Lup Yuen
Last article we were compiling Rust Apps for NuttX QEMU (RISC-V 32-bit). And we hit a baffling error… "Can't link Soft-Float modules with Double-Float modules" Let’s solve the problem! In this article we dive inside the internals of C-to-Rust Interop… (1) Rust compiles for Soft-Float, NuttX

Re: Nano-x porting

2024-04-09 Thread Lee, Lup Yuen
Hi Pavel: I'm sorry the GSoC Proposal Submission has closed last week. Though Shijo is still keen to do NanoX on NuttX in his spare time. I asked Shijo to bounce some ideas with you. If you could help him, that would be great. Thanks :-) Lup On Tue, Apr 9, 2024 at 1:48 PM Pavel Pisa wrote: >

Re: [VOTE] Apache NuttX 12.5.1 RC0 release

2024-04-09 Thread Lee, Lup Yuen
+1 for Ox64, Star64 and PinePhone = Ox64 Compiler + riscv64-unknown-elf-gcc -v Using built-in specs. COLLECT_GCC=riscv64-unknown-elf-gcc

Re: [Article] Rust Apps on NuttX with QEMU RISC-V Emulator

2024-04-08 Thread Lee, Lup Yuen
gives a kind of rosetta stone to interop basic rust with > C and the usual toolchains, which I did not see anywhere else (I did not > search for long). > > I'll keep it as a reference doc. > > Thanks, > > Sebastien > > Le 07/04/2024 à 00:56, Lee, Lup Yuen a écrit : &

Re: [Article] Rust Apps on NuttX with QEMU RISC-V Emulator

2024-04-07 Thread Lee, Lup Yuen
C. Assis wrote: > Very nice article! > > I think it should be nice to take a look at the Rustix project again, it > will avoid these 'extern "C" ' for each function on NuttX. > > BR, > > Alan > > On Sat, Apr 6, 2024 at 7:57 PM Lee, Lup Yuen wrote: >

[Article] Rust Apps on NuttX with QEMU RISC-V Emulator

2024-04-06 Thread Lee, Lup Yuen
This article explains the current steps for running barebones Rust Apps on NuttX and the challenges we faced: (1) How we compile Rust Apps for NuttX (2) Running NuttX and Rust Apps on QEMU RISC-V Emulator (3) Console Input and Output for Rust on NuttX (4) Software vs Hardware Floating-Point and

Re: [VOTE] Apache NuttX 12.5.0 RC0 release

2024-04-01 Thread Lee, Lup Yuen
+1 for Ox64, Star64 and PinePhone = Ox64 Compiler + riscv64-unknown-elf-gcc -v Using built-in specs. COLLECT_GCC=riscv64-unknown-elf-gcc

[OT] PineVox Smart Speaker might boot NuttX (Bouffalo Lab BL606P)

2024-03-23 Thread Lee, Lup Yuen
Pine64's new PineVox Smart Speaker looks interesting, it runs on Bouffalo Lab's BL606P 64-bit RISC-V SoC. Which is very similar to Ox64 BL808, so it might boot NuttX!

[Article] NuttX Log Parser with PureScript

2024-03-02 Thread Lee, Lup Yuen
While porting QuickJS to Ox64 BL808 SBC, we hit a Baffling Crash Dump on NuttX. Which made us ponder... Is there a better way to analyse a NuttX Crash Dump? Without scrolling pages and pages of logs? In this article, we create a real-time NuttX Log Parser that will: (1) Extract the RISC-V

Re: [Article] Drag-n-Drop a NuttX App

2024-02-24 Thread Lee, Lup Yuen
to create NuttX > applications! > > Best Regards, > > Alan > > On Sat, Feb 24, 2024 at 7:03 PM Lee, Lup Yuen wrote: > > > Remember MakeCode? BBC micro:bit and its Drag-n-Drop App Builder? > MakeCode > > for BBC micro:bit is an awesome creation that’s way ahead

[Article] Drag-n-Drop a NuttX App

2024-02-24 Thread Lee, Lup Yuen
Remember MakeCode? BBC micro:bit and its Drag-n-Drop App Builder? MakeCode for BBC micro:bit is an awesome creation that’s way ahead of its time (7 years ago!) - TypeScript Compiler and Arm Assembler in the Web Browser (in JavaScript!) - Custom Embedded OS (CODAL + Mbed OS) - micro:bit Simulator

[Article] QuickJS JavaScript Engine on NuttX

2024-02-17 Thread Lee, Lup Yuen
QuickJS is a small JavaScript Engine that supports POSIX Functions. Can we run QuickJS on NuttX? And Blink the LED in 4 lines of JavaScript? const ULEDIOC_SETALL = 0x1d03; const fd = os.open("/dev/userleds", os.O_WRONLY); os.ioctl(fd, ULEDIOC_SETALL, 1); os.ioctl(fd, ULEDIOC_SETALL, 0);

[Article] NuttX ROM FS Driver in the Web Browser

2024-02-10 Thread Lee, Lup Yuen
NuttX has an awesome driver for ROM FS Filesystem. What if we could transplant the NuttX Driver and run it in a Web Browser, embedded in any WebAssembly App? Today we solve a hefty headache in our port of TCC Compiler to WebAssembly: Missing C Header Files... (1) We host the C Header Files in a

Re: [Article] Build & Test NuttX Apps in the Web Browser (TCC RISC-V Compiler)

2024-02-04 Thread Lee, Lup Yuen
integrated on apps/ to run inside MCUs > with much memory (like STM32 with external SDRAM), ESP32, BL808, etc. > > Best Regards, > > Alan > > On Sat, Feb 3, 2024 at 8:08 PM Lee, Lup Yuen wrote: > > > Today we're running NuttX Emulator inside a Web Browser. What if

[Article] Build & Test NuttX Apps in the Web Browser (TCC RISC-V Compiler)

2024-02-03 Thread Lee, Lup Yuen
Today we're running NuttX Emulator inside a Web Browser. What if we could build and test NuttX Apps in the Web Browser? Learning NuttX becomes so cool! Let's explore with TCC (Tiny C Compiler) for 64-bit RISC-V, compiled to WebAssembly with Zig Compiler... (1) Zig Compiler compiles TCC Compiler

Re: [Article] NuttX on Ox64 BL808: Automated Testing with Ox64 Emulator

2024-01-27 Thread Lee, Lup Yuen
ations, I think it could be very useful if integrated with CI. > > We could find many issues that aren't detected currently. > > Best Regards, > > Alan > > On Sat, Jan 27, 2024 at 8:05 PM Lee, Lup Yuen wrote: > > > Every day we’re auto-building NuttX for Ox64 BL80

[Article] NuttX on Ox64 BL808: Automated Testing with Ox64 Emulator

2024-01-27 Thread Lee, Lup Yuen
Every day we’re auto-building NuttX for Ox64 BL808 RISC-V SBC... Can we test NuttX on Ox64 automatically after building? Yes we can! With a little help from the Ox64 BL808 Emulator that we created last week. In this article, we fill in the missing pieces of our Ox64 Emulator and run it for

[Article] NuttX on Ox64 BL808 RISC-V SBC: Emulated in the Web Browser

2024-01-20 Thread Lee, Lup Yuen
In olden times we had Computer Games (plus Operating Systems) on 5.25-inch Floppy Disks. And we’d boot the Floppy Disks (clackety-clack) on Apple II Computers with 64 KB RAM. Today (40 years later) we boot microSD Cards (clickety-click) on Ox64 BL808 RISC-V Single-Board Computers with 64 MB RAM.

Re: [Article] NuttX in the Web Browser (TinyEMU + VirtIO)

2024-01-16 Thread Lee, Lup Yuen
ting it further! > > > > BR, > > Alan > > > > On Mon, Jan 15, 2024 at 2:34 AM Lee, Lup Yuen wrote: > > > > > << Do you think it is possible to find an alternative to use the users' > > > browser connection to communicate to the Internet? This way it

Re: [Article] NuttX in the Web Browser (TinyEMU + VirtIO)

2024-01-14 Thread Lee, Lup Yuen
Do you think it is possible to find an alternative to use the users' > browser connection to communicate to the Internet? > This way it avoids users' consumption of all internet limits on the server > side. > > BR, > > Alan > > On Sun, Jan 14, 2024 at 4:17 AM Lee, Lup

Re: Ox64 crash Was: Re: [VOTE] Apache NuttX 12.4.0 RC0 release

2024-01-14 Thread Lee, Lup Yuen
gt; > [ > https://opengraph.githubassets.com/4259c40e0ffc51679b0d2f48e65e04e9821afb513a3d978f91a3fb2ceb8bb188/lupyuen/nuttx-ox64/releases/tag/nuttx-ox64-2024-01-11 > ]<https://github.com/lupyuen/nuttx-ox64/releases/tag/nuttx-ox64-2024-01-11 > > > Release nuttx-ox64-2024-01-11

Re: [Article] NuttX in the Web Browser (TinyEMU + VirtIO)

2024-01-13 Thread Lee, Lup Yuen
/login/ > > Is it possible to get network enabled and use it to communicate? It could > open new possibilities! > > BR, > > Alan > > > On Sat, Jan 13, 2024 at 8:30 PM Lee, Lup Yuen wrote: > > > NuttX now boots and runs inside a Web Browser! (With

[Article] NuttX in the Web Browser (TinyEMU + VirtIO)

2024-01-13 Thread Lee, Lup Yuen
NuttX now boots and runs inside a Web Browser! (With WebAssembly) Try "ostest" here: https://lupyuen.github.io/nuttx-tinyemu This article explains how we… (1) Boot NuttX in the Web Browser with TinyEMU RISC-V Emulator (2) Modify NuttX for HTIF Console (Berkeley Host-Target Interface) (3) Explore

Re: [VOTE] Apache NuttX 12.4.0 RC0 release

2024-01-10 Thread Lee, Lup Yuen
+1 for Ox64, Star64 and PinePhone = Ox64 Compiler + riscv64-unknown-elf-gcc -v Using built-in specs. COLLECT_GCC=riscv64-unknown-elf-gcc

[Article] NuttX on Ox64 BL808 RISC-V SBC: Nim Programming Language

2023-12-31 Thread Lee, Lup Yuen
Happy New Year! 2024 is here and we’re running NuttX on Single-Board Computers with plenty of RAM. Like Pine64 Ox64 BL808 SBC with 64 MB RAM! In this article, we create a Blinky LED app with a Python-like, Garbage-Collected Language that compiles to C: Nim Programming Language. Garbage-Collected

Re: [Article] NuttX on Ox64 BL808 RISC-V SBC: Bare Metal Experiments

2023-12-17 Thread Lee, Lup Yuen
gt; > I had intended to support 6LoWPAN with Bluetooth radios too, but never > got around to it. > > On 12/16/2023 5:03 PM, Lee, Lup Yuen wrote: > > Pine64 Ox64 BL808 (64-bit RISC-V SBC) is now supported in NuttX Mainline! > > (Many thanks to my reviewers) > > > > Ox64 BL8

[Article] NuttX on Ox64 BL808 RISC-V SBC: Bare Metal Experiments

2023-12-16 Thread Lee, Lup Yuen
Pine64 Ox64 BL808 (64-bit RISC-V SBC) is now supported in NuttX Mainline! (Many thanks to my reviewers) Ox64 BL808 is an affordable $8 SBC with: - 3 x RISC-V Cores (T-Head 64-bit / 32-bit) - Networking: Ethernet, WiFi, Bluetooth LE, Zigbee - Peripheral Interfaces: UART (Serial), I2C, SPI, USB,

Re: Re: minimal funcational acceptance for a new port

2023-12-12 Thread Lee, Lup Yuen
Hi yf: Kendryte K230 sounds really cool! (Dual-core T-Head C908 64-bit RISC-V with NPU) I'm now upstreaming to NuttX Mainline a similar board (Pine64 Ox64 SBC with Bouffalo Lab BL808 SoC and T-Head C906). These links might be helpful: PR for BL808 SoC: https://github.com/apache/nuttx/pull/11371

Re: [Article] NuttX on Ox64 BL808 RISC-V SBC: Fixed the UART Interruptand Platform-Level Interrupt Controller

2023-12-11 Thread Lee, Lup Yuen
> yf > > > > > Original > > > > From:"Lee, Lup Yuen"< lu...@appkaki.com ; > > Date:2023/12/10 7:11 > > To:"dev"< dev@nuttx.apache.org ; > > Subject:[Article] NuttX on Ox64 BL808 RISC-V SBC: Fixed the UART > Interruptand Platform-

Re: [Article] NuttX on Ox64 BL808 RISC-V SBC: Fixed the UART Interrupt and Platform-Level Interrupt Controller

2023-12-10 Thread Lee, Lup Yuen
nfortunately Pine 0x64 doesn't ship to Brazil (probably many buyers let > the boards return after getting notified of higher taxes from Brazilian > Customs). > > Best Regards, > > Alan > > On Sat, Dec 9, 2023 at 8:11 PM Lee, Lup Yuen wrote: > > > Last week we w

[Article] NuttX on Ox64 BL808 RISC-V SBC: Fixed the UART Interrupt and Platform-Level Interrupt Controller

2023-12-09 Thread Lee, Lup Yuen
Last week we walked through the Serial Console for Pine64 Ox64 BL808 64-bit RISC-V Single-Board Computer. And we hit some illogical impossible problems on NuttX for Ox64: (1) Console Input is always empty. (Can’t enter any Console Commands) (2) Interrupt Claim is forever 0. (Ox64 won’t tell us

[Article] NuttX on Ox64 BL808 RISC-V SBC: UART Interrupt and Platform-Level Interrupt Controller (PLIC)

2023-12-02 Thread Lee, Lup Yuen
Our article today is all about RISC-V Interrupts on the tiny adorable Pine64 Ox64 BL808 64-bit Single-Board Computer (based on Bouffalo Lab BL808 SoC)… (1) What’s inside the Platform-Level Interrupt Controller (PLIC) (2) Setting up the PLIC at startup (3) Enabling the PLIC Interrupt for Serial

[Article] NuttX on Ox64 BL808 RISC-V SBC: NuttX Apps and Initial RAM Disk

2023-11-25 Thread Lee, Lup Yuen
In Asia the wise folks say: “One can hide on a certain day but cannot hide for a long time / 躲过初一,躲不过十五” In other words: “Transformers? More than meets the eye!” In this article, we go behind the shadow puppetry (wayang kulit) and deceptive simplicity of NuttX Applications inside Apache NuttX

Re: [Article] NuttX on Ox64 BL808 RISC-V SBC: Sv39 Memory Management Unit

2023-11-19 Thread Lee, Lup Yuen
Thanks Ken! Yep you read my mind, I'll write about NuttX Apps in the next article: (1) What's inside the simplest "Hello World" app (2) How NuttX Apps call NuttX Kernel with "ecall" (3) Bundling the NuttX Apps into the Initial RAM Disk (initrd) for Ox64 BL808 SBC. (We'll append the initrd to the

[Article] NuttX on Ox64 BL808 RISC-V SBC: Sv39 Memory Management Unit

2023-11-18 Thread Lee, Lup Yuen
Memory Management Unit (MMU) is the hardware inside our Single-Board Computer (SBC) that implements Memory Protection and Virtual Memory. Sv39 is the RISC-V MMU inside the Pine64 Ox64 SBC, based on Bouffalo Lab BL808 SoC. In this article, we boot NuttX on Ox64 SBC to find out how Sv39 MMU works

Re: [Article] Starting NuttX on Ox64 BL808 RISC-V SBC

2023-11-11 Thread Lee, Lup Yuen
On Sun, Nov 12, 2023 at 7:37 AM Tomek CEDRO wrote: > On Sun, Nov 12, 2023 at 12:18 AM Lee, Lup Yuen wrote: > > Last week we booted Linux on the Pine64 Ox64 64-bit RISC-V SBC, powered > by > > Bouffalo Lab BL808 SoC. And we wondered if a tiny 64-bit RTOS like NuttX > > might run

[Article] Starting NuttX on Ox64 BL808 RISC-V SBC

2023-11-11 Thread Lee, Lup Yuen
Last week we booted Linux on the Pine64 Ox64 64-bit RISC-V SBC, powered by Bouffalo Lab BL808 SoC. And we wondered if a tiny 64-bit RTOS like NuttX might run more efficiently on Ox64. (With only 64 MB of RAM) Let’s make it happen! In this article we... (1) Begin with NuttX for Star64 JH7110

[Article] NuttX on Ox64 BL808 RISC-V SBC

2023-11-04 Thread Lee, Lup Yuen
Pine64 Ox64 is an affordable RISC-V SBC ($8) based on Bouffalo Lab BL808 SoC with 3 (Asymmetric) RISC-V Cores: (1) D0 Multimedia Core: 64-bit T-Head C906 with MIPI CSI, Neural Processing Unit (2) M0 Wireless Core: 32-bit T-Head E907 with WiFi, Bluetooth LE, Zigbee, Audio, USB, Ethernet (3) Low

[Article] NuttX on Star64 JH7110: OpenSBI (Supervisor Binary Interface)

2023-10-28 Thread Lee, Lup Yuen
Bare Metal Programming on a RISC-V SBC (Single-Board Computer) sounds difficult. Thankfully we can get help from the OpenSBI Supervisor Binary Interface! (A little like BIOS, but for RISC-V) In this article, we boot NuttX on Star64 JH7110 RISC-V SBC (and VisionFive2) to experiment with OpenSBI:

Re: [VOTE] Apache NuttX 12.3.0 RC1 release

2023-10-18 Thread Lee, Lup Yuen
+1 for PinePhone and Star64 Minor Issue: Building PinePhone on macOS shows the message "sed: illegal option -- r" and still builds OK. The patch has been merged, we can add this to the next release: https://github.com/apache/nuttx/pull/10881 = PinePhone Compiler + aarch64-none-elf-gcc -v

Re: [VOTE] Apache NuttX 12.3.0 RC0 release

2023-10-09 Thread Lee, Lup Yuen
+1 for PinePhone and Star64 Minor Issue: Building on macOS shows "sed: illegal option -- r", probably because macOS sed works differently from Linux. I'll track down the PR that caused this. Here are the sed messages:

Re: riscv64 libm link question

2023-09-17 Thread Lee, Lup Yuen
Here's what Ken and I have tried for the riscv64 libm linking problem: (1) The recommended toolchain for NuttX on riscv64 is SiFive Freedom Tools. But it doesn't support Raspberry Pi OS (64-bit Debian). (2) So we used Debian gcc-riscv64-unknown-elf instead. Which shows the missing libm error

[Article] NuttX on Star64 JH7110: Power Up the Display Controller with U-Boot Bootloader

2023-09-02 Thread Lee, Lup Yuen
In olden days we’d "peek" and "poke" the Display Controller, to see weird and wonderful displays. Today (46 years later), we poke around the Display Controller of Star64 JH7110 RISC-V SBC with a modern tool (not BASIC): U-Boot Bootloader! In this article we discover… (1) U-Boot Commands "md" and

[Article] NuttX on Star64 JH7110: Inside the Display Controller

2023-08-22 Thread Lee, Lup Yuen
We’re building a HDMI Display Driver for NuttX on Star64 SBC, but the JH7110 Display Controller isn't documented! In this article, we decipher the Official Driver for JH7110 Display Controller and figure out how it works... (1) What’s inside the Direct Rendering Manager (DRM) Driver for JH7110

[Article] NuttX on Star64 JH7110: Creating the First Release

2023-08-07 Thread Lee, Lup Yuen
Good News! NuttX now officially supports the Pine64 Star64 64-bit RISC-V SBC, based on the StarFive JH7110 SoC. (StarFive VisionFive 2 SBC will probably work too, anyone would like to test?) In this article we explain how we created the First Release of NuttX for Star64 JH7110… (1) Building

Re: [Article] NuttX on Star64 JH7110: RISC-V PLIC Interrupts and Serial I/O

2023-08-01 Thread Lee, Lup Yuen
-f208234edbfb636de240a0fef1c85f9cecb37876d5bc91ffb759f70a1e96b1d1 We're all ready to merge NuttX for JH7110! :-) Lup On Wed, Aug 2, 2023 at 7:19 AM Tomek CEDRO wrote: > On Wed, Aug 2, 2023 at 1:14 AM Lee, Lup Yuen wrote: > > NuttX on Star64 JH7110 RISC-V SBC is almost ready! But we're stuck with >

[Article] NuttX on Star64 JH7110: RISC-V PLIC Interrupts and Serial I/O

2023-08-01 Thread Lee, Lup Yuen
NuttX on Star64 JH7110 RISC-V SBC is almost ready! But we're stuck with 16550 UART Controller firing too many Spurious Interrupts. In this article, we explain… (1) Why there’s No Console Output from NuttX Apps (2) How Serial I/O works in NuttX QEMU (3) How UART I/O differs for Star64 vs QEMU (4)

[Article] NuttX on Star64 JH7110: RISC-V Semihosting and Initial RAM Disk

2023-07-27 Thread Lee, Lup Yuen
NuttX crashes on Star64 JH7110 RISC-V SBC because there's no Semihosting. But no worries! We modified NuttX to boot with an Initial RAM Disk instead (initrd). In this article, we find out… (1) What’s RISC-V Semihosting (2) Why it crashes NuttX on Star64 (3) How it affects the Apps Filesystem in

Re: Raspberry pi 4 Support

2023-07-19 Thread Lee, Lup Yuen
Hi Joseph: I think we could follow the same porting steps as I did for PinePhone? (Allwinner A64 / Cortex-A53) We started by booting NuttX with the U-Boot Bootloader: https://lupyuen.github.io/articles/uboot Then we built up the NuttX Drivers. Check out the articles here:

Re: [Article] NuttX on Star64 JH7110: RISC-V Privilege Levels and UART Registers

2023-07-18 Thread Lee, Lup Yuen
Mode :-) Lup On Wed, Jul 19, 2023 at 10:25 AM Nathan Hartman wrote: > On Tue, Jul 18, 2023 at 7:33 PM Lee, Lup Yuen wrote: > > > We’re in the super-early stage of porting NuttX to the Pine64 Star64 > 64-bit > > RISC-V SBC. (Based on StarFive JH7110 SoC) > > > >

[Article] NuttX on Star64 JH7110: RISC-V Privilege Levels and UART Registers

2023-07-18 Thread Lee, Lup Yuen
We’re in the super-early stage of porting NuttX to the Pine64 Star64 64-bit RISC-V SBC. (Based on StarFive JH7110 SoC) In this article we’ll talk about the interesting things that we learnt about RISC-V and Star64 JH7110… (1) What are RISC-V Privilege Levels (And why they make NuttX a

Re: adding a new board - files?

2023-07-18 Thread Lee, Lup Yuen
Hi Krasimir: I wrote an article about submitting a NuttX Pull Request on GitHub, I hope this helps :-) https://lupyuen.codeberg.page/articles/pr.html Lup On Tue, Jul 18, 2023 at 6:44 PM Krasimir Cheshmedzhiev < cheshmedzh...@gmail.com> wrote: > Hi all, > > I added the support of

[Article] Boot NuttX from Network with U-Boot and TFTP

2023-07-12 Thread Lee, Lup Yuen
Testing NuttX can get painfully tedious on a Single-Board Computer... Swapping, reflashing and rebooting a MicroSD Card, again and again and again! (Like how we tested NuttX on PinePhone) Thankfully there’s a better way: Booting NuttX over the Local Network, with U-Boot Bootloader and TFTP! In

Re: [VOTE] Apache NuttX 12.2.1 RC0 release

2023-07-10 Thread Lee, Lup Yuen
+1 for PinePhone = Compiler + aarch64-none-elf-gcc -v Using built-in specs. COLLECT_GCC=aarch64-none-elf-gcc COLLECT_LTO_WRAPPER=/Applications/ArmGNUToolchain/11.3.rel1/aarch64-none-elf/bin/../libexec/gcc/aarch64-none-elf/11.3.1/lto-wrapper Target: aarch64-none-elf Configured with:

[Article] NuttX on RISC-V: Star64 JH7110 SBC

2023-07-08 Thread Lee, Lup Yuen
In this article we’ll boot a tiny bit of NuttX on the Pine64 Star64 64-bit RISC-V Single-Board Computer. (Based on StarFive JH7110 SoC) (1) Migrate NuttX from QEMU Emulator to Star64 (2) Print to the Serial Console in RISC-V Assembly (3) Trick U-Boot Bootloader into thinking we’re Linux (4)

[Article] Booting on RISC-V Star64 JH7110 SBC

2023-07-03 Thread Lee, Lup Yuen
We managed to boot a tiny bit of NuttX on the RISC-V Star64 JH7110 SBC! (Before crashing with a Privileged Instruction Exception) This article explains how we patched a Linux Image to boot NuttX on Star64: https://lupyuen.codeberg.page/articles/linux.html Lup

Re: [VOTE] Apache NuttX 12.2.0 RC0 release

2023-06-30 Thread Lee, Lup Yuen
+1 for PinePhone = Compiler + aarch64-none-elf-gcc -v Using built-in specs. COLLECT_GCC=aarch64-none-elf-gcc COLLECT_LTO_WRAPPER=/Applications/ArmGNUToolchain/11.3.rel1/aarch64-none-elf/bin/../libexec/gcc/aarch64-none-elf/11.3.1/lto-wrapper Target: aarch64-none-elf Configured with:

[Article] Inspecting the Star64 RISC-V SBC

2023-06-28 Thread Lee, Lup Yuen
Pine64 Star64 is a new 64-bit RISC-V Single-Board Computer, based on the StarFive JH7110 SoC. In this article we’ll… (1) Look inside the brand new Linux Images for Star64 (2) Decompile (with Ghidra) the RISC-V Linux Kernel (3) Figure out how NuttX might run on Star64 Check out the article here:

Re: Article: 64-bit RISC-V with NuttX

2023-06-23 Thread Lee, Lup Yuen
Thanks Tomek! Yep I'm starting to port NuttX to the StarFive JH7110 SoC (64-bit RISC-V) and Pine64 Star64 SBC. Should be really interesting :-) https://doc-en.rvspace.org/Doc_Center/jh7110.html https://wiki.pine64.org/wiki/STAR64 Lup On Sat, Jun 24, 2023 at 8:05 AM Tomek CEDRO wrote: > VERY

Article: 64-bit RISC-V with NuttX

2023-06-23 Thread Lee, Lup Yuen
In this article we explore NuttX on 64-bit RISC-V... (1) Boot NuttX on the QEMU Emulator for 64-bit RISC-V (2) Study the Boot Code that starts NuttX on RISC-V (3) And learn a little RISC-V Assembly! Check out the article here: https://lupyuen.codeberg.page/articles/riscv.html Lup

Re: Article: NuttX for PinePhone: The First Year

2023-06-20 Thread Lee, Lup Yuen
evolution of what people did with > OsmocomBB and Fernvale many year ago: > > https://osmocom.org/projects/baseband/wiki/Fernvale > > I think this time we are near to get a usable feature phone running NuttX. > > BR, > > Alan > > On 6/19/23, Lee, Lup Yuen wrote:

Article: NuttX for PinePhone: The First Year

2023-06-19 Thread Lee, Lup Yuen
One year ago we started porting NuttX to PinePhone. Let’s look back and talk about… 1. The Features that we’ve implemented 2. Our Plans for the future 3. Why we might move to a RISC-V Tablet! Check out the article here... https://lupyuen.codeberg.page/articles/pinephone2.html Lup

Article: NuttX for PinePhone: Feature Phone UI in LVGL, Zig and WebAssembly

2023-06-09 Thread Lee, Lup Yuen
We have created an LVGL App that runs in a Web Browser and on NuttX for PinePhone… - We compiled LVGL Library from C to WebAssembly with Zig Compiler - We wrote our LVGL App in the Zig Programming Language (instead of C) - Exact same code runs in a Web Browser and on NuttX for PinePhone Which

Article: LVGL in WebAssembly with Zig Compiler

2023-05-30 Thread Lee, Lup Yuen
Right now we’re creating a Feature Phone UI (in LVGL and Zig) for PinePhone on NuttX. Would be awesome if we could prototype the Feature Phone UI in our Web Browser… To make the UI Coding a little easier! In this article we’ll talk about porting LVGL from PinePhone to WebAssembly… (1) Run a Zig

Re: CI tests (was: Re: [OT] Learning Makefiles)

2023-05-23 Thread Lee, Lup Yuen
Maybe we can run the CI Tests once a day, so it's easier to backtrack? FYI I've run Automated Tests on BL602 NuttX over the past 365 days (except for the brief Makefile outage last week): https://github.com/lupyuen/nuttx/tags Here's how it works: https://lupyuen.github.io/articles/auto Lup On

Article: PinePhone Accelerometer with NuttX (InvenSense MPU-6050)

2023-05-17 Thread Lee, Lup Yuen
When we tilt our Smartphone from Portrait to Landscape... How does it know that we're tilting our phone? Watch what happens when we snoop the Accelerometer Data from PinePhone's MPU-6050 Accelerometer...

Re: Article: NuttX for PinePhone: Phone Calls and Text Messages

2023-05-03 Thread Lee, Lup Yuen
Alan C. Assis wrote: > Hi Lup, > > Very nice! > > Are you planing to create FeaturePhone interface for PinePhone? > > BR, > > Alan > > On 5/3/23, Lee, Lup Yuen wrote: > > What makes PinePhone a phone? Because it will make Phone Calls and send > > Te

Article: NuttX for PinePhone: Phone Calls and Text Messages

2023-05-02 Thread Lee, Lup Yuen
What makes PinePhone a phone? Because it will make Phone Calls and send Text Messages! Today we turn NuttX on PinePhone into a Feature Phone… 1. Outgoing and Incoming Phone Calls over 4G 2. Send and receive SMS Text Messages 3. Why we prefer Encoded PDU Messages for SMS 4. Programming the 4G

Re: How ro re-trigger CI workflow?

2023-04-22 Thread Lee, Lup Yuen
Hi Zou: Usually I rebase my branch with the Master Branch to re-trigger the CI Workflow... https://lupyuen.github.io/articles/pr#submit-the-pull-request Hope this helps :-) Lup On Sat, Apr 22, 2023 at 4:25 PM fft wrote: > Hello, > > > Two weeks ago, i created a PR #8999 to fix an issue of

Re: MCU/Board with WiFi, BT and USB Host

2023-04-20 Thread Lee, Lup Yuen
That's correct, NuttX on PinePhone doesn't support WiFi and BT yet. We're still working on USB Host for PinePhone: https://lupyuen.github.io/articles/usb3 Lup On Thu, Apr 20, 2023 at 11:07 PM Alan C. Assis wrote: > Hi Mr. Zou, > > PinePhone is a nice idea, but I'm afraid that WiFi is not

Re: [VOTE] Apache NuttX 12.1.0 RC0 release

2023-04-11 Thread Lee, Lup Yuen
+1 for PinePhone = Compiler + aarch64-none-elf-gcc -v Using built-in specs. COLLECT_GCC=aarch64-none-elf-gcc COLLECT_LTO_WRAPPER=/Applications/ArmGNUToolchain/11.3.rel1/aarch64-none-elf/bin/../libexec/gcc/aarch64-none-elf/11.3.1/lto-wrapper Target: aarch64-none-elf Configured with:

Article: NuttX for PinePhone: 4G LTE Modem

2023-04-10 Thread Lee, Lup Yuen
Right now we’re building a Feature Phone with NuttX on PinePhone. To make things simpler, we’re writing down everything we know about the 4G LTE Modem, and how it works inside PinePhone… 1. What’s the Quectel EG25-G LTE Modem 2. How it’s connected inside PinePhone 3. How we make Phone Calls and

Article: NuttX for PinePhone: Simpler USB with EHCI

2023-03-23 Thread Lee, Lup Yuen
Weeks ago we talked about porting NuttX to PinePhone, and how we might turn it into a Feature Phone. But to make phone calls and send text messages, we need to control the LTE Modem over USB. Thus today we’ll build a USB Driver for NuttX on PinePhone… 1. What’s USB Enhanced Host Controller

Article: (Clickable) Call Graph for NuttX on PinePhone

2023-03-04 Thread Lee, Lup Yuen
Last week we ran NuttX on Unicorn Emulator and we hit a baffling Arm64 Exception. In this article we’ll create some tools to troubleshoot the exception… 1. Render the Dynamic Call Graph for NuttX, to understand how it boots 2. Make it Clickable, so we can browse the NuttX Source Code as we

Article: Emulate NuttX on PinePhone with Unicorn Emulator

2023-02-23 Thread Lee, Lup Yuen
Unicorn is a lightweight CPU Emulator Framework based on QEMU. To make PinePhone testing easier, can we emulate NuttX on PinePhone with Unicorn Emulator? In this article we’ll call Unicorn Emulator to… 1. Emulate Arm64 Machine Code 2. Attach Hooks to intercept Memory Access and Code Execution

Article: NuttX for PinePhone: Exploring USB

2023-02-17 Thread Lee, Lup Yuen
We're about to turn PinePhone on NuttX into a Feature Phone... But to talk to PinePhone's LTE Modem, we need a NuttX Driver for Allwinner A64 USB Controller. In this article we’ll dive into PinePhone’s USB Controller… 1. Why PinePhone needs USB for Voice Calls and SMS 2. What’s inside

Re: Video: NuttX for PinePhone

2023-02-07 Thread Lee, Lup Yuen
n Wed, Feb 8, 2023 at 8:26 AM Tomek CEDRO wrote: > On Wed, Feb 8, 2023 at 1:10 AM Lee, Lup Yuen wrote: > > If we're curious how we download and boot NuttX on PinePhone, this video > > explains the steps... > > > > Watch on YouTube: https://youtu.be/kGI_0yK1vws >

Video: NuttX for PinePhone

2023-02-07 Thread Lee, Lup Yuen
If we're curious how we download and boot NuttX on PinePhone, this video explains the steps... Watch on YouTube: https://youtu.be/kGI_0yK1vws Download the video (1.4 GB): https://github.com/lupyuen2/wip-pinephone-nuttx/releases/tag/nuttx-12.0.3 (Sorry some bits look murky, this is my first time

Re: Article: NuttX for PinePhone: LVGL Terminal for NSH Shell

2023-02-02 Thread Lee, Lup Yuen
On Thu, Feb 2, 2023 at 8:28 PM Alan C. Assis wrote: > Hi Lup, > > Very nice article! Kudos!!! > > Is it possible to modify the demo to type direclty inside the "LVGL > terminal" screen? > > Did you test PinePhone nxterm too? > > BR, > > Alan > >

Article: NuttX for PinePhone: LVGL Terminal for NSH Shell

2023-02-01 Thread Lee, Lup Yuen
Now we can run NuttX Console Apps on PinePhone, without a Serial Cable! This article explains how we call the LVGL GUI Library to create a Touchscreen Terminal App that runs NSH Commands... https://lupyuen.github.io/articles/terminal Lup

Article: NuttX trips ChatGPT

2023-01-28 Thread Lee, Lup Yuen
ChatGPT (the AI chatbot) will gladly answer questions about NuttX! But the answers aren't always correct. Let's turn this into a learning opportunity, and understand why ChatGPT's answers are incorrect... https://lupyuen.github.io/articles/chatgpt Lup

Article: NuttX for PinePhone: Boot to LVGL

2023-01-21 Thread Lee, Lup Yuen
NuttX now boots with an LVGL Touchscreen App on PinePhone! (Without a Serial Cable) This article explains how we configured NuttX to boot LVGL, and how we tweaked LVGL to be more Touch-Friendly on PinePhone... https://lupyuen.github.io/articles/lvgl2 Lup

Re: Article: NuttX for PinePhone: Touch Panel

2023-01-12 Thread Lee, Lup Yuen
023 at 07:12:37AM +0800, Lee, Lup Yuen wrote: > > PinePhone on NuttX will soon support LVGL Touchscreen Apps! This article > > explains how we created the NuttX Driver for PinePhone's I2C Touch > Panel... > > > > https://lupyuen.github.io/articles/touch2 >

Article: NuttX for PinePhone: Touch Panel

2023-01-12 Thread Lee, Lup Yuen
PinePhone on NuttX will soon support LVGL Touchscreen Apps! This article explains how we created the NuttX Driver for PinePhone's I2C Touch Panel... https://lupyuen.github.io/articles/touch2 Lup

Article: NuttX for PinePhone: What is it?

2023-01-01 Thread Lee, Lup Yuen
People often ask why we're porting NuttX to Pine64 PinePhone (Arm64 / Allwinner A64 SoC). So I wrote an FAQ about NuttX for PinePhone. Have an Awesome 2023 everyone! :-) https://lupyuen.github.io/articles/what Lup

Article: NuttX for PinePhone: Framebuffer

2022-12-30 Thread Lee, Lup Yuen
LVGL now renders OK on Pine64 PinePhone with NuttX Mainline! (No Touch Input yet though) This article explains what's inside our new Framebuffer Driver for PinePhone, plus a mysterious problem of missing pixels... https://lupyuen.github.io/articles/fb The article was "leaked" earlier to Hacker

Re: Article: NuttX for PinePhone: LCD Panel

2022-12-27 Thread Lee, Lup Yuen
Yep we should show our own logo! Anyone got an SVG file? I'll turn it into the Startup Image for PinePhone :-) Lup On Wed, Dec 28, 2022 at 9:21 AM Nathan Hartman wrote: > On Tue, Dec 27, 2022 at 8:06 PM Alan C. Assis wrote: > > > Very nice Lup! Kudos!!! > > > > I think we need a

Article: NuttX for PinePhone: LCD Panel

2022-12-27 Thread Lee, Lup Yuen
NuttX Mainline now boots with a Test Pattern on Pine64 PinePhone! (Arm64 / Allwinner A64 SoC) This article explains what's inside our new NuttX Driver for PinePhone's LCD Panel... https://lupyuen.github.io/articles/lcd Lup

Re: Article: NuttX for PinePhone: Display Engine

2022-12-22 Thread Lee, Lup Yuen
mazing documentation! > > Thank you Lup! > > On 12/22/22, Lee, Lup Yuen wrote: > > NuttX Mainline now supports the Display Engine for Allwinner A64 SoC > > (Arm64). Many thanks to my patient reviewers for wading through a > thousand > > lines of code :-) > >

Article: NuttX for PinePhone: Display Engine

2022-12-22 Thread Lee, Lup Yuen
NuttX Mainline now supports the Display Engine for Allwinner A64 SoC (Arm64). Many thanks to my patient reviewers for wading through a thousand lines of code :-) This article explains how the A64 Display Engine will be called by the upcoming LCD Driver for Pine64 PinePhone...

Article: NuttX for PinePhone: MIPI Display Serial Interface

2022-12-14 Thread Lee, Lup Yuen
NuttX Mainline now supports MIPI DSI (Display Serial Interface) on Pine64 PinePhone! (Allwinner A64 SoC) This article explains how MIPI DSI will be called by the upcoming PinePhone Display Driver... https://lupyuen.github.io/articles/dsi3 Lup

  1   2   >