u/krauseler

Image 1 — I built a fully self-powered computer in actual credit-card size (~1mm thick)
Image 2 — I built a fully self-powered computer in actual credit-card size (~1mm thick)
Image 3 — I built a fully self-powered computer in actual credit-card size (~1mm thick)

I built a fully self-powered computer in actual credit-card size (~1mm thick)

For years, devices like the RbPi have been described as “credit-card sized”.

And of course the message is rather the footprint, but at some point I became obsessed with taking that idea one step further:

What would it take to build something that is literally sized like a credit card?

I've got a slight feeling that you really don't seem to like questions here, but I hope this rhetorical one is okay :P

That question slowly escalated into months of experiments to find solutions for things where default methods won't work. I can't use large, rigid components, connectors, and find a way to make my own custom flexPCB.

And after months of tinkering, I made the first prototype. Fragile, but it works within the goal of not exceeding 1 millimeter. Somehow, news pages have picked this up and described it as "revolutionary" which is a bit far fetched, but I feel flattered 🤭

To be fair, 'computer' might be a little overstatement, but it's technically perfectly within the definition of one. If you should have suitable words for it that sounds cool, feel free to suggest ^^

The prototype includes:

  • ESP32-C3FH4 w/ WiFi & BLE
  • NFC read/write
  • 1.54" 200*200 E-Paper display
  • ultra-thin LiPo battery including charging circuit and power path management
  • accelerometer

Finding small/thin enough components wasn't really the main challenge, mechanical stability was. Solder and general material fatigue, pressure distribution (particularly focused pressure) and other strain related issues were the real problem.

This doesn't even include battery protection and some other things to solve.

At this scale, the project turned into a weird mix of electrical, mechanical and chemical engineering.

A few things that became clear over time:

  • preventing strain is much easier than surviving strain
  • tiny real-world tolerances start dominating the entire design near the physical limit
  • many “thin enough” components stop being thin enough once assembly is considered
  • FPC connectors are basically obsolete, forcing me to get creative and solder each single wire for each 0.5mm pitch pad one by one.

The prototype is fully self-powered and running from its internal battery.

I documented a large part of the engineering process, including the process of etching my own flexPCB, on my GitHub repo.

And yes, it's not like this thickness is a necessity, going just 0.5mm thicker would probably have saved me months of engineering. This entire project was probably motivated way too much by the 'disbelief' factor 😄

I am curious on your thoughts on this! :)

u/krauseler — 8 days ago
▲ 132 r/arduino+1 crossposts

The literal credit-card-sized computer went viral! (Muxcard update)

Last week I finally revealed the project I was working on in this subreddit, and it got overwhelming feedback, topping the subreddit ranking for a while - so thank you for all your positive feedback and suggestions!

Maybe viral is a bit far fetched, but there are more than 10 news sites that somehow picked this up and wrote articles about it. Although I am flattered about all these opinions describing this as a breakthrough, I should focus on the real challenge, which is not the form factor, but making this form factor actually usable in daily life, which is currently what I'm working on.

The new prototype is done I am holding up showing it yet as there are still some things to work on before doing an update, but I made a small video with visual demos on how this device could be practical in daily life. Mind that these are pure visual demos, not finished firmware. I will add the code to the Git repo once polished.

If you are interested in this, you can sign up to get notified when this eventually launches via muxcard.com or my Github Repo. I created social media accounts but it will take time to fill them with content, I am a bit overwhelmed :')

I want to address a few points that were mentioned often in the original post and other discussions:

- I realised I left out some parts that are obvious to me that weren't stated in the post or repo: The interface will be touch. Mechanical buttons are possible and also feel nice, but if this should really survive daily use, any type of moving part or cutout needs to be avoided unless absolutely necessary. Touch buttons are embedded in the literal skin of the card and adds basically no instability at all.

- Wireless charging is a good idea. I considered it but after thinking about it again, I think it can help avoid any mechanical cutouts to increase stability and durability. Charging is done with pogo pins via flush pads on the back, but you can see the magnets on the bottom left of the prototype. Looks ugly because I didn't work with a CNC yet, but the advantage over wireless charging would be direct interfacing to the MCU - but that can be done via OTA updates I guess.

- Yes, the nRF is the better choice when it comes to power consumption, but I have worked with the ESP32 for so long and like it. The power budget isn't terrible, but I guess many people would prefer months of runtime instead of the likely 2-3 weeks what I expect. I might switch or do at least a variant, but for the prototype, the ESP32 was just the most practical choice especially because I had to etch my own flexPCB.

- Payments are basically not possible. Yes, this is the most obvious use of such a concept, and in theory, it is technically more than feasible. The problem lies in actually getting certified for this. Even if I had the millions of budget/investment and resources to go through the process, this is one of the big reasons other cards like this never made it to peoples hands. Not because of technical challenges (which is a major pain in itself) but also because of the reason certification processes of Banks don't really have the system in place to support this type of dynamic protocol, otherwise cards would have long had it, they already contain an NFC chip inside.

As far as I can judge, it's the fact that the data would move, which makes it very vulnerable. With static tags, the secure code never leaves the chip. With dynamic chips, the tech opens a huge set of possibilities for malicious intents, which is multiple times harder to protect against than burying the secure key inside forever.

It isn't impossible, after all - Google Pay and Apple Pay work this way. But only those companies would have resources to pull it off, which was likely not trivial for them either.

___

I am thankful for all the people appreciating the effort I poured into this project, and it's still a 'disbelief'-moment when I turn it and see it disappear. It feels like a 2 Dimensional thing that should not be able to *do* things.

And just like last time, if you have any thoughts, questions or comments on this project, feel free to let me know and I'll try my best to answer them!

u/krauseler — 10 days ago
▲ 4 r/esp32

The literal credit-card-sized computer went viral! (Muxcard update)

u/krauseler — 10 days ago
▲ 3.3k r/esp32+2 crossposts

An actually credit-card sized smartcard with ESP32-C3 + NFC + E-Paper display (~1mm thick)

I'm into challenging projects, but this one was next level.

The goal was to build a smartcard with a display that is not only credit-card sized in width and height, but also in thickness.

This first prototype is ugly and fragile, but after months of dealing with issues mostly on mechanical stress, I am coming closer to making it suitable for real life use.

ESP32-C3 + NFC + E-Paper display, all within roughly ~1mm total thickness. WiFi and Bluetooth are power hungry, but it may still be good for datalogging pings.

I had a couple of ideas what could be done:

- Minimalist wallet for tickets, membership QR codes, etc.
- NFC card cloning
- Smarthome control dashboard
- A business card with a 100% guarantee to get remembered

I also started documenting the development process on GitHub.

Curious what features or use cases people would want in something like this. So feel free to suggest!

u/krauseler — 10 days ago