Dave describes the design of his open source hardware µCalc credit card sized calculator / computer.
(NOTE: Not to be confused with the uCalc program www.ucalc.com)
Specifications:
PIC 24F 16 bit Processor, 256KB Flash, 16KB SRAM, 64KB serial flash user memory, 3-Axis tilt sensor, Micro SD card, capacitive touch sensing keypad, 128x64 dot matrix display.

Hi Welcome to the Eev Blog an Electronics Engineering Video blog of interest to anyone involved in electronics design. I'm your host Dave Jones Hi This one comes from somebody in the Forum who asked about my micro Cal project and I've touched on this before in one of the live shows I think I Explained a little bit about it but I thought it probably deserves its own little short blog describing the what the micro Cal is the project and uh, some of the design aspects that went into it because it's rather interesting. So let's go and here's the Micro Cal project. This is what it looks like It: Well, it's not finished, but we'll go into that.

What it is is, it's basically the world's first and only credit card size programmable scientific calculator. It's got a dot matrix uh display on it at 128 by uh 32 display. It's got touch sensitive uh keypad as you can see with all the um scientific Legends directly on them but it is fully programmable. it's got function keys up the top and I called it the micro Cal because um I've already done the micro watch which you've seen in another blog.

so it's basically a credit card thin uh, scientific programmable scientific calculator. Why? Well, why not? I I always wanted uh I I Used to use one of those credit card scientific calculators you can just whack in your pocket. really small and uh, but you couldn't really get. um, they came in solar power a lot of the time, but you couldn't really get a scientific version of them.

there was one Casio did make one back in the very early 80s, but it was pretty thick I think it was about 5 6 mm or something like that. So I figured that I could design my own using off-the-shelf parts and this is the result. The Micro Account spec-wise it's based on a microchip uh 24f series 16-bit microcontroller. It's got 256k of flash uh, 16k of SRAM uh and you know it's quite a powerful little uh, 16bit uh micro.

It's the same one as used in my um. Microw watch project, but it's just got basically increased SRAM and increased flash memory as well. Now a lot of thought went into what microcontroller to use for this should I use atmail? Should I use microchip and or something else a TI MSP cuz it's got to be low how everyone thinks. Oh, use the Tisp well no these.

uh, microchip nanowatt um Xlp micros are pretty darn low power so this was one of the most low power micros I can get. um I considered the microchip 32bit Um series as well I considered arm all sorts of things, but lots of reasoning went back into uh choosing the microchip 16bit part. again. The other big decision which went into the microcontroller was pretty critical because I I couldn't put buttons on this thing.

They're actually touch sensitive capacitive sense buttons which I'll also go into. um now this microchip uh P chip actually had enough. Um, it's got the building capacitive uh sense in technology so I could I didn't need an external chip I was going to use one of the atmail uh, touch sensitive chips to actually do that. Um, but they were actually quite expensive.
increases your parts count yada, yada, yada. So to get it built into my micro controller, that was awesome. So the number of keys on here were limited by size, finger size, and stuff like that. but also by the number of channels capacitive sense channels available on the microchip part.

Uh, but it had more than enough power to run say uh, chess on here which is a big thing for the uh microw watch. uh, some some some of the guys out there the users actually wrote a chess program. it's the world's only chess playing Watch So I thought okay, you can play chess on this one too. So that was the microcontroller Choice It's a little bit arbitrary, little bit of thought went into it, but plenty of power once again to take into account not only the dot matrix LCD display on it, but the Uh Micro SD card as well.

One of the other major design aspects of this product was how do you power it now I Originally wanted to solar power it, but I've already done a Blog on that on this particular design and why that's not actually possible. So I won't go into it again. So I decided to use the standard lithium coin cell batteries cuz I wanted them to be replaceable I didn't want rechargeable I hate rechargeable. they're H they're a pain in the Arh.

You can get some really thin lithium ion uh batteries these days. some you under 1 mm. um thick. Absolutely incredible.

Um, but yeah. I just I Just like the thought of using these disposable batteries and I went through the battery life calculations and these seem quite reasonable. Now the good thing about button cells? Okay, if you haven't actually seen them before, I'll go through it. Okay, this is a CR 2032 is a standard battery and you've probably seen them before.

Okay, you've heard about them before. Like a CR 2032 is probably the world's most popular Uh battery. But in case you didn't know, there's actually a reasoning. Behind These Numbers What the first two? So you can get all these different types.

There's oh, there's about 20 of them or something. I think there's heaps. Um, so they come in all these different sizes and styles. And what the numbers mean are the F The CR is just, um, basically coin cell.

that's just I. Don't know where that comes from actually, but the first two numbers mean something and the last two numbers mean something. In this case, the first two numbers are the diameter of the battery in millimet. so 16 is 16 mm diameter so a 20 a a 232 is 20 mm in diameter easy and the second number is actually actually the thickness of the coin cell like that in uh in.

Well, you got to put a decimal point in there directly in millimet. So a Cr1 1616 battery is 16 mm in diameter and 1.6 mm in thickness. It's great and it's a standard and you can choose all these different types of batteries. Now if you give this a moment's thought, you'll notice aha.
1.6 mm is the thickness of a standard F Fr4 PCB That's important. You can also get 2 mm Pcbs. Uh, you can get 3.2 mm uh, Pcbs as well and you can probably get 2.5 I've never had to get one, but uh, you can get those as well. different thicknesses of actual Fr4 material.

Now, the reason that is important is because when you're designing something really thin, ultra thin like this, you want to make it as thin as possible. Obviously, now as it turns out, the maximum thickness component on my entire design after a lot of uh searching and stuff like that is the LCD. Now the LCD I'll go into this a bit. uh, more detail later.

but the LCD is basically uh, 2 mm thick. So what I can do? So that okay, my entire design can't be less than 2 mm. It's got to be more cuz it needs a a top front panel and a back panel as well. But if you use a CR Um 1620 battery I.E it's 2 mm thick.

It can slide on there like that and be wedged sandwiched between the top layer and the bottom layer like that. I don't actually have the top board cuz the Project's not actually finished. But as you can see, wh now it's gone there. we go.

All right here it is. Here's the battery. The ultimate goal is you glue you sandwich the two together and you can slide in your coin cell. Like that, the coin cell will just slide in there and be held in place by the Um by the thickness of the board and just friction.

And because the contact is you can see I've actually got a large size contact like that? I'd have a matching one on the base board as well. but uh, that means it can just slide in there and make good contact. and I've got two batteries just wired in parallel so that you can actually replace one and not lose your contents. Or if there's any flexing of the thing or something like that, you put it in your shirt, pocket, your back pocket and it flexes.

Then you've got two battery contacts to Um to make so that one just won't accidentally disconnect. So there you go. You can actually sandwich things you don't need. to buy a coin sell holder.

You can just slide it right in. It's brilliant. Now here's the actual front panel. Uh, PCB it's got integrated into it.

the Uh touch switch which is I'll show that later on a 3D uh thing on the PC and it's got the cutout for the LCD like that and the LCD just solders directly into the back and all the parts mount on there. No problems at all. Now this board is actually uh 0.8 mm thick now I could have made it um I could have made it 0.5 mm which is probably about as small as you can get boards made without going Ultra Ultra exotic I.E from you know you can get 5 mm um boards cheap from PCB cart in um in China and that's what I use for my uh the front panel on my microw watch Project I use a 0.5 mm front panel PCB Now I'm a big fan of using mentioned this before Pcbs for front panels because not only are they you can get them machined easily cuz they're are just a PCB you can get them from the manufacturer but you can get them silk screened. You can get nice different colors, all sorts of things.
so I integrated these really nice um touch switches into my PCB. So the front panel is not only the front panel with the buttons etched into it and the nice silk screen on top. and you can put a logo there and you can cut out windows and do all sorts of things, but it's the actual PCB on the bottom as well. Now this entire design will need three pcbs.

this one which basically is the entire calculator which mounts everything thing like that, everything's mounted on there and there will also be another back panel of the same thickness or I could go for5 mm if I wanted to really get the thickness down. So we're talking uh, basically a maximum thickness of um, uh, 3.6 mm for the entire design cuz I said the LCD in, there's 2 mm I'd use a Cr620 battery to slide in so it's 2 mm Plus 8 on the bottom Plus 8 uh on the top and that's 3.6 mm. In theory, I could probably get it down to 3 mm. Unbelievable, right? But um, and if I found that all the solder joints might be a bit variable on the LCD, then choose a thicker, slightly thicker battery, the CR 1625 or something like that, you got 2.5 mm.

Anyway, you need three boards. you need the base one, you need the back plate, which will just be a flat back plate. It'll also have the contact on it for the back uh battery, and the final board will be an inner board which sits in the middle. Basically, you just route everything out and that acts as sort of like the central core and you route out around all the components.

As you can see, there's probably not going to be much room, but there'll be a big section here, just little bit so it'll be like completely routed out around all my components. So you do that last after you've perfected your design and um, and you know it's it's ready to go. Then you would design your inner PCB core and then you just glue them all together. You use super glue, you use whatever, stick them all together, sandwich them and you leave a couple of little slots on the outside to slide your batteries in, a slot on the side for your Micro SD card to come in and out and Bingo! You've got a beautiful product without using a case at all.

It just uses the Fr4 Pcbs as the case. I Love it! Here's a really good closeup of the of the main Uh PCB and as you can see, it's got the Uh LCD mounting points here and here these are actually mechanical ones. These are all the electrical mounting points. The Micro SD card this down here in this actual connector interface.

down here is the ICP the in circuit serial programming uh system and it's got It's got a reset button up there, but as you can see, these are the two uh contacts for the two batteries which wedge between it. Now as you can see, the LCD is mounted basically um, sort of. you know on the back the the pins are bent back. I'll actually show you this LCD when you get it, this is how you buy it, It's a standard dip uh version LCD So it's designed to just plug directly into a PCB but there's nothing stopping you from bending those pins back on themselves and cutting them flush so that it you utilize the full uh 2 mm.
you utilize the 2 mm thickness of that LCD So you might be able to get away with 2 mm if you trim each pin individually. Um, or you might have to go to 2.5 as I mentioned. but you just bend the pins back and use the display uh, inverse like that. Pretty much so instead of just um, sticking it in dip wise because then it's all exposed and it's just it's awful.

You stick it in and you just bend the pins back like that real easy. this. um LCD 128x 32 It's actually a get this, it's a dog M uh. Graphic series from Electronic Assembly.

There you go. That's the Uh model number. If you want to look it up and have a play with it, it's not a bad LCD at all. It's reasonably priced.

Um, and it's only 2 mm thick I Love it. And in case you're wondering, what are these wires here? uh I've mentioned this before, it was actually a silicon bug inside the Pi uh processor for the CSP Port didn't work the bastards. Unbelievable. Um, but yeah, it's got a nice little uh reset switch.

and if you're wondering what the hole up here is, uh, when I when I was uh, designing this, somebody said oh, it'd be nice if it had like a hole to stick it onto a key ring or something like that. So yep, not a problem. just stick the hole in for the key ring and you can actually see the tracks in here under the black solder mask. See, you can.

Actually, you can actually see the patent under there. and I think that really looks quite funky. You have to sort of get it in a certain light if you get it in a different light. it just looks all black and everything.

but I think it's it's a really neat sort of high-tech look for that and this is just a Um. this connector here is just temporary for um, in circuit uh, testing, and in circuit prototyping and and debugging as well. But there you go. that's the micro cal.

It's not finished yet because um I never got around to actually doing the uh, back plate and the inner core board as well. Um, but it's a really neat little project and it just goes to demonstrate how you can, uh, using a few novel techniques and a bit of thought actually design something this small. Um, a lot of the major manufacturers would be struggling to actually like a Cassie or someone would struggle to get something this thin in a uh, credit card style thing. I can do it using off-the-shelf Parts Easy.

All it needs is a bit of thought. and if you adapt an LCD like that, bend its pins back or you could even use zebra connectors. you can get ones without the connector those zebra strips to join boards top and bottom. Um.
and in case you're wondering how you get the power off the top board onto the bottom board because you've only got the negative down here, the positive would be on the top board for example. it would sort of. you know it would sit like that. So you've got to get power from this board down to this board.

There's two ways to do that. I Chose The Simple Solution Which is just to put a pad there which wires up to the top board. so you just have a loose wire and you wire it on and then when you squeeze it together, the wire gets squeezed and not a problem. But if you really wanted to be uh, smart about it, but it's a bit risky, you could actually put uh vas all the way along the say, the edge of the board or somewhere in the board top and bottom and then um, actually join them together.

but then you've got to rely on the just the physical pressed contact between the different boards. So that's not really a good approach. So the best approach I Think the most reliable is just a wire top to bottom and sandwich it like that. And here we are inside the PCB editor for the actual board which I've just shown you and it's actually a two- layer board.

That's all I needed. Uh two layers top bottom and as I said, it's either 0.8 or 0.5 mm uh thick depending on uh, the ultimate thickness and the rigidity and the strength I need in the final design. And let's take a look at the individual layers. This is the Uh silk screen and as you can see see, this just has the logo and all the buttons.

All the buttons you want. the Uh silk screen overlay uh goes as you can see, it actually overlays the buttons on the red layer there. um and the red layer actually shows Here it is here. the red layer is the individual buttons.

Now these are capacitive uh touch buttons. they rely on the capacitor or the they rely on the finger. Um, when you overlay the button, the finger will actually change the capacitance between the pads and that can be detected by the microcontroller. Now there's a whole art in designing these buttons and there's uh, a whole bunch of app Notes on how to get it right.

As you can see, there's ground in in between the individual buttons and there's a bit of um, uh, bit of trial and error involved in actually determining what size pads to use for different finger widths and button uh, spacings and things like that so you often won't get these capacitive buttons right the first time. So one of the Uh rules is the Uh signal tracers. uh, need to avoid Uh grounds and other Uh objects which is why you wouldn't flood fill these boards with the ground on the bottom. Here's the bottom layer here and as you can see, I didn't uh flood fill anything and you try to um, keep the the signal tracers away from other Digital Signal tracers because that will detract from the Uh sensitivity of the button and uh, and the microcontroller.
Also, you need Al algorithms to detect Um to actually discriminate between individual buttons as well. So that uh, you know, if you put your finger halfway between a button for example, then well, which button does it choose? So there's a bit of um trial and error involved in that. let's take a look at the 3D thing. as you can see, there's the cutout uh in here as well and I've got the nice rounded edges and the logo up there, but this is what it looks like in the final design and as you can see it looks exactly what we got manufactured.

Go figure and this is the B This is the base of it here as you can see and it all looks quite well. It shows the cutout I Love these 3D uh view modes cuz it can actually show you exactly what you're going to get and you can actually see the um, the traces under there as well. You can change the transparency and all sorts of stuff in 3D mode. It's got the hole up there, but it really looks exactly like the finished product.

So that's the micro. Cal the world's first and only credit card-sized scientific programmable calculator. SL computer with dot matrix LCD It's straights ahead that's of anything that's ever been developed or put on the market before and it was real simple. It just had to be to put uh, just uses a few novel Concepts capacity touch sensors.

um, touch sense switching. uh, novel construction with the sandwich using the front panels as the Pcbs and the back panels and the inner core. just doing a few things like that Uh, you can come up with a you know, a pretty good looking, awesome looking product like this incredibly simply and I'm a big fan of using Pcbs for front panels like this. A lot of my projects do it and I highly recommend you give it some thought next time.

See you.

Avatar photo

By YTB

21 thoughts on “Eevblog #130 – the calc credit card scientific calculator / computer”
  1. Avataaar/Circle Created with python_avatars SwordQuake says:

    So did this actually come to fruition?

  2. Avataaar/Circle Created with python_avatars Mitch McCann says:

    Was there ever a video on the finished project?

  3. Avataaar/Circle Created with python_avatars Don't Care Didn't Ask Plus Youre Vaxxed says:

    You still selling these?

  4. Avataaar/Circle Created with python_avatars Mike Adler says:

    👍👍

  5. Avataaar/Circle Created with python_avatars l g says:

    Spoiler alert – he will never turn it on during the course of the video.

  6. Avataaar/Circle Created with python_avatars Aissa Azzaz says:

    Even after 9 years this video is just awesome

  7. Avataaar/Circle Created with python_avatars Bernd Eckenfels says:

    I wish that form factor and cpu for a multi account programmable TOTP token

  8. Avataaar/Circle Created with python_avatars KidCe says:

    Imagine a e-paper display embedded into a pcb cutout which would make it even thinner

  9. Avataaar/Circle Created with python_avatars Johnny's Desk says:

    I like your innovative Ideas on frontpanel designs!
    Would you like to make a video on capacitive touch sensing including sliders and a bit of code?

  10. Avataaar/Circle Created with python_avatars Mark says:

    where can i find files to get my pcb made and program pic microcontroler i didnt find them

  11. Avataaar/Circle Created with python_avatars groove jet says:

    black solder mask you Dick 🙂

  12. Avataaar/Circle Created with python_avatars Roy Scott says:

    Wondering how accurate it is…What is the answer for exactly the SIN of 3.141592654 Radians?…And what is the result of 3^201????

  13. Avataaar/Circle Created with python_avatars Arsen says:

    now I want one..

  14. Avataaar/Circle Created with python_avatars Leon Blankenhorn says:

    Are there any recent updates on this project, or maybe a part list or instructions of something similar?

  15. Avataaar/Circle Created with python_avatars Michael Hawthorne says:

    What about the algorythems for the Scientific stuff, where did you get that from… example, I know the re-iteritiv formula for Square roots and have found one for Cube roots but that is scratching the surface. Is there a downloadable program for this stuff?

  16. Avataaar/Circle Created with python_avatars Rob Krimm says:

    i want one

  17. Avataaar/Circle Created with python_avatars Daniel Choutka says:

    Can you please revive the project? I like it…

  18. Avataaar/Circle Created with python_avatars Sock50 says:

    Dave, did you program the logic and the operations for this or use something pre-made?

  19. Avataaar/Circle Created with python_avatars Darius Roberts says:

    Is this opensource? It seems that Dave is no longer selling these. Does anyone know of a similar slim-format project? Googling to no avail.

  20. Avataaar/Circle Created with python_avatars hansonsux says:

    Let me guess, he made a battery eater calculator.

  21. Avataaar/Circle Created with python_avatars Tartrazine says:

    Nice Super-Oooper-Duper hobbyist case design, I love it.

    Have youwritten the Scientific Calculator functionality for it, mate? :o)

Leave a Reply

Your email address will not be published. Required fields are marked *