🌗 在 8 位元微控制器上架設網站
➤ 當 8 位元晶片遇上網路:一場關於極簡嵌入式系統的技術實驗
https://maurycyz.com/projects/mcusite/
這篇文章記錄了作者如何在極限硬體條件下,將一顆僅有 8 KB RAM 的 AVR64DD32 微控制器改造成一臺微型網路伺服器。作者巧妙地避開了硬體負擔過重的乙太網路方案,轉而採用古老的序列線路網際網路協定(SLIP),透過 USB 轉序列介面將微控制器連接至 Linux 主機。為了克服缺乏公開 IP 位址與網路路由的困難,作者利用 WireGuard 建立虛擬私人網路,並透過反向代理將外部流量導向該微控制器,最終成功在資源極其受限的 8 位元架構上實現了網站託管。
+ 這種將 SLIP 協議重新應用在現代微控制器上的思路非常有啟發性,這纔是真正的「硬核」工程!
+ 雖然這只是一個展示性質的專案,但作者利用代理轉發繞過 IPv4 限制的架構設計相當靈活,值得參考。
#嵌入式系統 #網路通訊 #AVR 微控制器 #硬體工程
Hosting a website on an 8-bit microcontroller. (Maurycy's blog)

Salvaged VFDs In Nixie-Like Clock

In between the Nixie tube era of the 50s and 60s and the advent of multi-digit vacuum fluorescent displays (VFDs) common in 80s and 90s consumer technology, there was a brief time in the early 70s …

Hackaday
Salvaged VFDs In Nixie-Like Clock

In between the Nixie tube era of the 50s and 60s and the advent of multi-digit vacuum fluorescent displays (VFDs) common in 80s and 90s consumer technology, there was a brief time in the early 70s …

Hackaday

Servidor web en un chip de USD 2: cómo funciona

¿Se puede hostear un sitio web en un chip de USD 2? El servidor web en microcontrolador 8 bits con AVR64DD32 y SLIP lo hace realidad. Así funciona en 2026.

https://donweb.news/servidor-web-microcontrolador-8-bits-avr-slip/

#avr #microcontrolador #slip #servidorweb #iot

Been fighting an apparent HDMI HDCP issue for awhile.

Roku Ultra (current version) --> Marantz Cinema 50 --> Epson 5040UB Projector [Monitor 2] and TCL QM8k [Monitor 1]

No issues with E-ARC.

Isolated the issue to the Receiver when both video outputs are enabled, even if they aren't both in-use. Manually setting the output works.

If you search the interwebs, all they ever say is power cycling, cable replacement, and other standard layer 1 things. Receiver-specific guidance talks about upscaling, eliminating video processing, and manually setting HDCP version to 2.3.

Just throwing this out to the void in case others have similar #hometheater #hdcp #avr issues. Will see what Marantz says.

A new #OS shell for #Arduino #8bit #AVR microcontrollers? I had to investigate! https://youtu.be/MjmE-PmOxZk
KernelUNO An Operating System for #arduino ? Tested & A New Build ;-)

YouTube

I'm using an #oberon to C transpiler to develop firmware for #avr MCUs.

Unfortunately, my only practical choice of C compiler is #gcc (which is a beast of complex-hard-to-port c++14 code). That said, I'm disabling optimization in my #avr gcc compilations. I'm not using any dynamic memory allocations nor any pre-existing "libraries".

I'm also sticking strictly to Oberon-7 (except I do use underscores in my variable and procedure names -- I hate camel case).

Since Oberon-7 doesn't do variable initializers there should be very little hidden "start up" code (just my low level register access runtime C code). This is about as close as I can get to pure #oberon on an AVR processor without writing an AVR code generating backend for the compiler.

This is one way to reduce complexity and obfuscation.

I've spent over 40 years chasing programming elegance and beauty. I realized around 20 years ago that the "industry" (and most tech people) don't care. LLM (and coding agents) have put the nail in that coffin.
I wonder, as I stumble into my 60s, if I can just start over. Go super simple. Work with my hands and head. Maybe a little #forth here and there on an #8051 or #AVR with no toolset dependencies, no networking dependencies, no graphics dependencies...

I'm having lots of fun learning and now writing #oberon programs. I'm pretty much sticking to Oberon-7 specification and am using https://github.com/ericscharff/oberon-compiler as my compiler/transpiler.

So far I've written a runtime for #avr MCUs (specifically the AVR128Dx series of new generation 8 bits) and have written some hacks to improver performance.

It's very minimalist (as a 40+ year user of #forth Oberon has that same feel of 'do the simplest thing possible') and I do have some things I want to fix in the compiler (e..g missing bit shifting operators as defined in the spec), but generally... this is a breath of fresh air.

GitHub - ericscharff/oberon-compiler: An Oberon-07 compiler written in Oberon, with a bootstrap Oberon to C transpiler

An Oberon-07 compiler written in Oberon, with a bootstrap Oberon to C transpiler - ericscharff/oberon-compiler

GitHub

#6502 asm:
- CLI : Clear Interrupt Disable (enables interrupts)
- SEI : Set Interrupt Disable (disables interrupts)

#AVR asm:
- CLI : Global Interrupt Disable
- SEI : Global Interrupt Enable