Close
0%
0%

FairCharm

The Open Source Charm Camera that anyone can make and repair/mod.

Public Chat
Similar projects worth following
A pocket camera that fits in your hand and can hang from your bag like a charm! lt's fair because it's open-source and free for everyone. Just an ESP32-CAM project that came to my mind when I saw a certain company make these poket cameras with a 1.6 megapixel camera that are kinda trash and way too stupidly expensive/overpriced. The people at PCBWay decided to help me out with the printed ciruitboard, shoutout to Aran and the fine people that work at PCBWay, they're providing me with a tight and clean PCB that will make this project free of any tangled and messed up wirenest.

I decided to give a shot to making a small camera after seeing a little tiny company, whose name starts with K and ends in odak, sell these sh*tty cameras for quite a lot of money and basically zero features, oh and if that isn't horrible enough already they sell them in this "WOOOOOOW YOU DON'T KNOW WHAT CAMERA YOU ARE GONNA GET!!! ALSO TRANSPARENT CASE SUPER DUPER RARE ONE!!!!!" way, peak consumerism...


So yeah, here I am, trying to make something that is actually cool. I want this camera to be able to send the pictures to Discord and Telegram, also I'll try to implement a static HTTP page when you connect to the ESP's WiFi with a carousel of the taken images. 

I'm gonna use a PCB but you can get away by using flying wires and whatnot. 

## What can it do?

- Takes photos with the OV2640 sensor of the ESP32-CAM (up to UXGA, 1600x1200, so roughly 2 megapixels) and saves them as JPG on a microSD card.
- Beeps to tell you what's going on (ready, photo taken, error, going to sleep...). No screen needed!
- Creates its own WiFi network. Connect your phone, open a web page and swipe through your photos in a little carousel. No app, no cloud, no account.
- Can optionally send every photo to a Telegram chat or a Discord channel as soon as you take it.
- Can be updated over WiFi (OTA), so you don't need to unscrew it and plug cables every time there's a new firmware.
- Goes to sleep by itself when you're not using it to save battery.

## Using it

1. Put the microSD card in the ESP32-CAM.
2. Press the power button (the one on the K pin of the charging module). The module has no on/off switch, that's the button that turns the 5V on.
3. Wait for 2 short beeps. That's the "I'm ready let's go" signal.
4. Press the big red button to take a photo. You'll hear 2 rising beeps when it's saved.
5. Done! The photos are on the SD card as 'photo_00001.jpg', 'photo_00002.jpg', and so on. The counter keeps going even after a reboot, so old photos never get overwritten.

The small flash LED on the ESP32-CAM stays dimly lit while the camera is on, it's on purpose: it's the "yes, I'm awake" light (it shares a pin with the shutter button).

### What do the beeps mean?

Sound Meaning 
2 short beeps Ready to shoot
1 short high beep (after a photo)Photo uploaded to Telegram / Discord
 2 rising beepsPhoto saved
1 long low beep (after a photo)Upload failed (the photo is still safe on the SD card)
2 low beepsError: the camera or the SD card didn't start, or the photo couldn't be saved
3 falling beepsGoing to sleep

### Sleeping and waking up

After 60 seconds without doing anything the camera goes into deep sleep. About 30 seconds later the charging module notices that almost no current is being used and cuts the 5V completely (that's its default behaviour, very nice for the battery life).

- Press the big red button to wake it up (works while it's still in deep sleep, so in the first ~30 seconds, or when it's plugged into USB-C).
- If the power was cut, press the power button on the charging module to turn it on again.

If your phone is connected to the camera's WiFi the sleep timer is 5 minutes instead of 1, so you have time to browse your photos or update the firmware.
(but you can totally change this and give yourself more time)

### Seeing your photos on your phone

1. Connect to the WiFi network called 'ESP32-CAM'. The default password is '12345678'. Please change it, it's in the firmware ('ap_ssid' and 'ap_password')!
2. Open http://192.168.4.1 in your browser.
3. You'll see the carousel: newest photo first, ◀ goes to the older one and ▶ to the newer one. You can also use the arrow keys on a computer or swipe on a phone. The Download button saves the current photo.

The ESP32 is a tiny chip, so photos take around 1 to 3 seconds to load. Be patient with it, it's doing its best!

FairCharm_PCB_R2.2.kicad_pcb

Revision 2.2 of the PCB (i might be blind and stupid)

kicad_pcb - 278.67 kB - 10/14/2026 at 21:27

Download

FairCharm_gerber_R2.2.rar

Revision 2.2 of the Gerber files (i might be blind and stupid)

x-compressed - 55.67 kB - 10/14/2026 at 21:27

Download

FairCharm_FIRMWARE.rar

The actual firmware for the camera. This is an Alpha version, I'm still working on it and I'm waiting on the PCB to arrive, try to tinker yourself with this. I'll obviosly update it in the nearest possible future.

x-compressed - 10.99 kB - 10/13/2026 at 06:38

Download

FairCharm.kicad_sch

The Schematics

kicad_sch - 932.67 kB - 10/12/2026 at 19:30

Download

faircharm backplate v1.0.stl

The basic backplate to close the camera. This might be changed very soon...

Standard Tesselated Geometry - 180.16 kB - 10/03/2026 at 16:05

Download

View all 6 files

  • 1 × ESP32-CAM Ai Thinker The main brain of this project.
  • 1 × CKCS PB0A To power on the board.
  • 1 × Lateral momentary push button This will be used with the CKCS module, on the K pin to power on /offf the circuit.
  • 1 × Li-Ion battery 500mAh 3.7V To connect to the CKCS module.
  • 1 × Momentary push button, the big 12x12 ones With a snap on red cap (or whatever color rocks your boat)

View all 10 components

  • PCB and Firmware are live now!

    Emanuele Carlino • 2 days ago • 0 comments

    I'm still testing everything and this is given as a prototype pre-Alpha. I'm waiting on the PCB and in the coming days I'll make some custom faceplate and backplate arts.
    But yes, you can download everything right now and try to build it yourself! I highly suggest you to go to my github and check that out, it goes more in depth on how this all works. 

  • The PCB and the actual firmware are coming VERY soon

    Emanuele Carlino • 3 days ago • 0 comments

    As the title says, I'm almost done. Sorry everyone, I just can't bring myself to publish something if it's not up to my standards. The PCB is only revision 1 because, as you might imagine, I have never done a PCB before (I'm a CS person, not a EE) but STILL I've tried to do this a one shot typa thing, like good and done the first try typa thing. Anyway sorry but I still have to test out a few things before releasing the files so be patient, I'm almost done. 

    Please, if you think I'm making a huge mistake in the Gerber file feel free to destroy me in one bilion atoms, I am still learning, just don't be too mean. 

    Today I will probably publish the INO but that also needs more testing. I'm warning you: it might not work and it might suck but I will work on it.

View all 2 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates