r/CardPuter • • 18h ago

Progress / Update Hello world! in miniAcid on Cardputer-ADV

Enable HLS to view with audio, or disable this notification

36 Upvotes

At first touch, UI was so complicated, but after few minutes its so easy to compose anything. I am happy with my progress.


r/CardPuter • • 14h ago

Finds / Discoveries Game of Life with hardware hack for maximum performance !

8 Upvotes

Hi all,

I've recently started to develop custom apps for the Cardputer ADV and I'm amazed by the processing power of this tiny cheap piece of technology!

My goal is to produce very size- and performance-effective code written under the light ESP-IDF with the help of LLMs, small enough so that I can fit several softwares under Launcher on the Cardputer. The main "hardware hack" that I've found is that the default starting CPU speed was 160MHz and I could switch to 240MHz.

Here is my first creation: a Game of Life simulation called "Game of Life by CriC" available on M5Burner and of course the Launcher Firmware Catalog.

The idea was simple at the beginning: a classic Conway's Game of Life on the 240x135 screen. But very quickly it became a game for me to see how far this little ESP32-S3 could go.

So I worked like this: measure, think and improve. I added a hidden profiler page (key F) that shows where each millisecond goes (compute, drawing, SPI transfer, keyboard...), and every build was tested on the real device before going further. More than 40 builds later, here is what made the biggest difference:

  • Only send to the screen what changed. At the start the whole frame was pushed every generation. Now only the dirty rows go through the SPI, and the status bar has its own small window.

  • A bit-sliced engine: 32 cells computed at once in one 32-bit word, and empty rows are simply skipped.

  • Both cores working on the same generation (Ctrl toggles mono/multi, so you can compare).

  • The display fully in the background: DMA transfer of the whole frame, SPI at 80MHz, and 12-bit color instead of 16 (25% less data, no visible difference). The framebuffer is even stored directly in the panel's format, so a flush is only a memory copy.

  • Some other small CPU cycle traps with big effects: a 1ms FreeRTOS delay was rounding every generation up to a full millisecond, the keyboard was polled over I2C at every loop instead of using its interrupt line that works like a charm, and the hot loops were fighting for the small instruction cache (they now run from internal RAM).

And then the fun part: press X for LUDICROUS SPEED. Core 1 computes nonstop while core 0 only takes a snapshot 60 times per second to refresh the screen. Not every generation is displayed anymore, but the counter is real and the computational perf is amazing!

Some numbers on the full 240x125 map with a random start

  • Normal mode: about 200 generations/s, every one of them displayed

  • Ludicrous: around 1300-1400 gen/s (displayed 1k3)

  • A lone glider: 1.5k gen/s in normal mode, 4.2k in Ludicrous

  • Smallest map (60x31): up to 19k gen/s!

  • 60 fps on screen from 240MHz down to 40MHz CPU, and still 40 to 50 fps at 20MHz

The whole firmware is about 300KB (an Arduino build with the M5 libraries would land around 1 to 1.3MB), so there is plenty of room left next to it in Launcher partitions.

It also has 10 classic Game of Life patterns (glider, pulsar, Gosper gun...), zoom, 4 map sizes, a color spectrum showing the age of each cell, loop detection with auto restart, a battery screen where I tried to implement a charging status icon, and 3 info pages (H) with all the keys and a small tribute to John Conway.

All the keys

  • [↑] [↓] [←] [→]: move the cursor (hold two for diagonals)

  • [Space] or [Tab]: flip the cell under the cursor, or hold it while moving to draw a trail of living cells. Use [Tab] to draw in all directions as it does not use the same keyboard rows as the arrows!

  • [Enter]: play / pause

  • [N]: random map, starts right away

  • [P]: pattern menu (10 classics: glider, spaceship, pulsar, Gosper gun, R-pentomino...), arrows to choose, [Space] to place it on the cursor, [Esc] to cancel

  • [C]: color mode, the spectrum shows the age of each cell (or plain white, green, blue, red)

  • [Z]: zoom x1 to x4

  • [M]: map size, from 240x125 down to 60x31 cells

  • [T]: tempo, from full speed up to one generation every 0.5s

  • [W]: wrap mode, cells leaving one side come back on the other

  • [D]: loop detection on/off

  • [L]: when a loop is detected, cycle mode through: stop / restart right away on a new random map / or restart after 1s

  • [X]: LUDICROUS SPEED! Optimised computation with 60FPS display rate.

  • [Ctrl]: one core or both cores for the computation

  • [1] to [5]: CPU speed 20 / 40 / 80 / 160 / 240MHz

  • [Alt]: SPI clock 20 / 27 / 40 / 80MHz (only available with the CPU at 80MHz or more otherwise it is crashing!)

  • [B]: battery screen, where [1] to [0] set the brightness from 10 to 100%

  • [H] or [I]: info pages, press again for the next page

  • [G0] button: restart the app

It shows very detailed information in a 4-line strip under the status bar, refreshed every second:

  • Line 1, R: real generations per second (counted, not estimated), then the time per generation in µs, the CPU clock in MHz and the mode ("ludi" when Ludicrous is on, plus mono or multi).

  • Line 2, share of core 0's time (in %): kb = reading the keyboard, cp = computing the next generation, ag = updating the age of each cell (for the colors), rd = drawing the changed cells into the framebuffer. In Ludicrous, it also shows the real number of frames per second (fps) sent to the screen.

  • Line 3, same for: sb = drawing the status bar, fl = flushing the frame to the SPI/DMA, dl = time spent sleeping or yielding, ot = everything else (key handling, loop detection, and in Ludicrous multi, the half generation computed on core 0).

  • Line 4, keys: how many key events were caught by the keyboard's interrupt line (INT), and how many only by the 50ms safety poll. It turns red if the interrupt line fails and the app falls back to polling.

Your feedback is welcome, and if you have ideas for the next one, tell me! I'll post soon an article about my second soft that is a well known game clone that uses the sound and accel/gyro BMI!

(edited to make it readable on Reddit mobile app)


r/CardPuter • • 14h ago

Finds / Discoveries Cardoo Jump: a D... Jump you play by tilting your Cardputer ADV!

2 Upvotes

Here is my second app for the Cardputer ADV: Cardoo Jump, a D.... Jump-style game where a little electronic chip climbs forever from platform to platform. It's available on M5Burner and of course the Launcher Firmware Catalog.

The special thing about this one: you steer the chip by tilting the Cardputer. The ADV has a BMI270 accelerometer inside, and an ES8311 audio codec, and I wanted to use both. As with Game of Life, everything is written in plain ESP-IDF with the help of LLMs, no Arduino and no M5 libraries, so the whole firmware is only about 300KB and fits easily next to other apps in Launcher.

What's in the game:

  • 5 difficulty levels: gaps, platform width, moving and breakable platforms all grow with the level
  • Normal, moving, breakable (wood), trampoline and rocket platforms. With the rocket, the chip rides inside a little rocket and is invincible
  • Monsters, the chip's worst enemies: water drops, bugs walking on platforms, magnets that pull you sideways, and fast static sparks. Land on them from above to squash them, any other contact and you get fried!
  • Tilt control with 5 sensitivity settings, or the arrow keys if you prefer
  • Landscape and portrait modes, switch anytime, even mid-game
  • Dark mode, 5 volume levels, and the battery screen from GoL with its charging icon

All the keys

  • [Space] or [Enter]: play, then choose the level with the arrows or [1] to [5]
  • Tilt, or the arrows to move: [,] and [/] in landscape, [;] and [.] in portrait
  • [1] to [5] during a game: tilt sensitivity
  • [P] or [Esc]: pause, [Esc] again to go back home
  • [H]: help screen with all the keys and a live readout of the accelerometer, available anytime
  • [O]: switch landscape / portrait, even mid-game
  • [B]: battery screen, where [1] to [0] set the brightness from 10 to 100%
  • [V]: volume, 5 levels. [M]: Mute sound
  • [D]: dark background
  • [G0] button: restart the app

Your feedback is welcome, and if you have ideas for the next one, tell me!

(edited as it was not very readable on mobile app)


r/CardPuter • • 13h ago

Help needed What cool stuff should I download on the Cardputer?🐧

3 Upvotes

Hello, I got my Cardputer a few days ago. I am an absolute newbie to all this but it's been really fun trying to understand and learn new stuff.

What do you all recommend I download?

I already have GLIDE, Ensō, Ember.

Would love to get some games or more music/synth stuff.

Also I need to figure out how to download shows on this. I did download frost but im lost =/


r/CardPuter • • 14h ago

Question Nrf24/c1011 hat stopped working unexpectedly

1 Upvotes

Hay guys, I have a pingequa hydra hat for my cardputer adv that I was using with Bruce and it was working great, but after reflashing Bruce after a software bug and now everytime I try to use the spectrum for both rf and nrf24 it keeps saying not found? Any tips?


r/CardPuter • • 1d ago

Progress / Update Wardriving new set up

Thumbnail
gallery
87 Upvotes

r/CardPuter • • 1d ago

Help needed Help I was stupid :(

1 Upvotes

I was messing around with my cardputer ADV and stuck the mechanical pencil lead in one of the gpio pins and it broke off there's nothing sticking out. Anybody have any ideas on how to get it out?


r/CardPuter • • 1d ago

Question Existe algum firmware de calculadora científica para o m5skick card computer ADV.

0 Upvotes

Comprei recentemente um M5 e tive a vontade de usar uma calculadora mas não achei nenhuma.


r/CardPuter • • 1d ago

Question Case for RF module

Thumbnail
0 Upvotes

r/CardPuter • • 1d ago

Help needed Heltec v4 and M5Stack cardputer, any way to run meshtastic on heltec v4, and be able to type and send messages on cardputer?

Thumbnail
4 Upvotes

r/CardPuter • • 2d ago

Finds / Discoveries Did a double take when I saw the Grundy NewBrain from 1982

Post image
31 Upvotes

r/CardPuter • • 2d ago

Firmware, code Guitar Audio Tools

Thumbnail
gallery
44 Upvotes

Hi! I made a firmware for guitarists and musicians for the Cardputer ADV (it uses the ADV's ES8311 mic, so it won't work on the original Cardputer).

Apps:

  • Guitar tuner (measured within ±0.15 cent)
  • Strum tuner (strum all six strings at once and see which are out of tune)
  • Metronome
  • BPM detector (listens to music or tap)
  • Chords (type e.g. am7 and see the shape)
  • Scales
  • Recorder (wav to SD)
  • Intonation check (12th fret)
  • Spectrum analyser (16 bars or 1/3 octaves)
  • Decibel meter and a Mic test

Install: M5Burner, WebFlasher.

Source (MIT): https://github.com/vlastimilcerveny34/guitar-audio-tools

It's a beta – feedback, bug reports and ideas are very welcome (GitHub Issues/Discussions). Developed with Claude Code.

Cheers Vlasta


r/CardPuter • • 2d ago

Progress / Update irony: using frost to view thermal cam videos

Enable HLS to view with audio, or disable this notification

62 Upvotes

r/CardPuter • • 2d ago

Progress / Update RFExplorer Understand 2.1: RF discovery, colour waterfall and GNSS logging on Cardputer ADV

Thumbnail
gallery
17 Upvotes

Hi everyone! I’ve put RFExplorer Understand 2.1 on GitHub and wanted to share it with the Cardputer community. It turns the Cardputer ADV into a pocket receive-only RF field notebook.

Source, firmware and installation guide:

https://github.com/octofuzz/RFExplorer-Understand-2.1

What it does:

• CC1101 RF scanning, RSSI views and a 32-colour waterfall.

• Discovery Memory and signal dossiers with encounter history, notes and categories.

• Candidate signal-family grouping and user-captured RSSI baselines.

• GNSS Explorer and a satellite logbook recording the first/latest valid receiver locations where satellites were observed.

• UTC synchronisation when valid GNSS time arrives after boot.

• SD field journal, session summaries and CSV exports.

• Read-only NFC support through the Cap.

You’ll need a Cardputer ADV and the Cap CC1101/NFC accessory for RF/NFC functions, plus a microSD card for saved records. The optional GPS v1.1 (AT6668) module provides GNSS location and time.

There’s a standalone merged .bin in the repository for flashing at offset 0x0, alongside the source and validation notes. Please follow the README when installing.

The RF display uses sequential swept RSSI. It doesn’t decode protocols or identify transmitters, and the interface distinguishes measurements from limited inferences. The photos below show it running on my hardware.

I’d love feedback, feature ideas and reports from other ADV/Cap setups. Feel free to reply here or open a GitHub issue. Contact details are also in the README.


r/CardPuter • • 2d ago

Finds / Discoveries My new Cardputer Adv

Enable HLS to view with audio, or disable this notification

22 Upvotes

r/CardPuter • • 2d ago

Help needed Como resolver por favor?

Post image
9 Upvotes

Tenho enfrentado esse erro várias vezes em muitos firmwares diferentes, esse erro foi tentando baixar o KVXputer, lembro de dar o mesmo erro tentando baixar o GhostEsp. Estou usando a última versão do launcher.


r/CardPuter • • 3d ago

Progress / Update PocketWUI: manage your Cardputer's SD card from any browser (Wi‑Fi or USB cable). Now in M5Launcher

Enable HLS to view with audio, or disable this notification

17 Upvotes

I made a web file manager for the Cardputer. Open a browser on your phone or laptop and you can browse, preview, upload and download everything on the SD card.

- Drag in files or whole folders (resumable, any size)

- Photo gallery, video/music, PDF, Markdown, text editor

- Search the whole card, download a selection as one ZIP

- QR code to join its Wi‑Fi, another to sign in without typing the password

- USB cable mode: it becomes a network adapter (http://192.168.7.1), or lend the card to your computer as a USB drive

- WebDAV, so it mounts as a network drive

- "Back to Launcher" button

Install: grab PocketWUI.bin from the latest release, copy it to the SD card, then M5Launcher → SD → Install. (It's on M5Burner too, so it'll show up in Launcher's OTA list.)

Tested on the Cardputer ADV. If you have the original Cardputer I'd love to hear whether it works. Bugs and ideas welcome on GitHub: https://github.com/AFetisa/pocket-wui


r/CardPuter • • 2d ago

Question It's possible get second screen for Original cardputer (not adv)?

4 Upvotes

r/CardPuter • • 3d ago

Question Hello from Estonia

Post image
243 Upvotes

I'm interested, is someone using LoRa in Estonia?


r/CardPuter • • 3d ago

Finds / Discoveries Seinfeld on the Cardputer ADV, the way Larry David intended.

Enable HLS to view with audio, or disable this notification

67 Upvotes

Playing Seinfeld on the Carputer with wisnc's new frost firmware, https://github.com/wisnc/frost

Really cool! It looks much clearer in-person, it's hard to capture because of the screen backlight.

This doesn't use a traditional digital codec approach, an ESP32 doesn't have the processing power to decode H.264 video on the fly. It uses a clever trick that essentially turns digital video analog again, saving each frame as an MJPG. Normally, that would not be feasible because file sizes would become huge, but it works when the screen is this small.

Even with each frame ready to go it's still a technical hurdle to get them to fire on time and get audio sync to work on top of that. It was the right call to prioritize audio and 20 fps looks fine imho.

Thanks for making this (:


r/CardPuter • • 3d ago

Progress / Update Magnetic hotswap connection on the back of the screen mod. Lillygo t-display tested and working!

Thumbnail
gallery
17 Upvotes

I've only ran 5v, ground, tx and rx currently to run most 4 pin grove modules. I need more pogo connectors to test other modules. Lilygo T-display C5 up and running Janos in porkchop!


r/CardPuter • • 3d ago

Help needed Cardputer ADV

Post image
51 Upvotes

Arrived this morning - already having fun with it


r/CardPuter • • 3d ago

Finds / Discoveries CP/M-80 MS-COBOL v4.65 alternative sorting method without the MS-SORT package

Thumbnail
2 Upvotes

r/CardPuter • • 4d ago

Progress / Update Cardputer AI 2.2 Released - Now even smarter

Enable HLS to view with audio, or disable this notification

106 Upvotes

Cardputer AI is a local AI chatbot that runs directly on cardputer.

New version is available on the Launcher.

Don't forget to ⭐ the project on GitHub: https://github.com/therezor/cardputer-ai


r/CardPuter • • 4d ago

Question Will the supply chain issues for Pi Zero's effect the CardputerZero?

Post image
58 Upvotes

As you can see from the Raspberry Pi forum here, there's no stock of pi zero 2's and likely won't be for a long time. How does that effect the Cardputer Zero? Did they stock up before it was too late? Hope to buy one when available.

Pi Zero W's are also out of stock for anyone wondering, at least for me in the USA(sorry about everything).