diff options
author | Frederick Yin <fkfd@fkfd.me> | 2023-07-05 15:12:21 +0800 |
---|---|---|
committer | Frederick Yin <fkfd@fkfd.me> | 2023-07-05 15:12:21 +0800 |
commit | bac7fb19816ac336b1af4b722e2d721fcd07252a (patch) | |
tree | fdce73cf666395ad2386d27c3f030c759602a860 | |
parent | 51c7dec1f2a68bb441d9bcd7001c89bb3d7c1993 (diff) |
New post: projects/blobcat-pcb
-rw-r--r-- | docs/projects/blobcat-pcb.md | 165 | ||||
-rw-r--r-- | docs/projects/img/blobcat-pcb/logic.png | bin | 0 -> 105635 bytes | |||
-rw-r--r-- | docs/projects/img/blobcat-pcb/marquee.gif | bin | 0 -> 721912 bytes | |||
-rw-r--r-- | docs/projects/img/blobcat-pcb/outline.png | bin | 0 -> 19546 bytes | |||
-rw-r--r-- | docs/projects/img/blobcat-pcb/v0.2-cu.png | bin | 0 -> 175618 bytes | |||
-rw-r--r-- | docs/projects/img/blobcat-pcb/v0.4-cu.png | bin | 0 -> 120132 bytes | |||
-rw-r--r-- | docs/projects/index.md | 7 |
7 files changed, 172 insertions, 0 deletions
diff --git a/docs/projects/blobcat-pcb.md b/docs/projects/blobcat-pcb.md new file mode 100644 index 0000000..1c326bc --- /dev/null +++ b/docs/projects/blobcat-pcb.md @@ -0,0 +1,165 @@ +# blobcat PCB + +![Yellow PCB standing, colorful LEDs in marquee mode. Printed on PCB: +"TechJI 2023" and "owo :blobcat:"](img/blobcat-pcb/marquee.gif) + +▲ There are ten more LEDs on the back. + +Fun? Yes. Stupid? 100%. This is my second attempt at purely artistic PCBs +(the first failed). + +TechJI is the organization I work in since 2021. I will retire from +director this month, so I'm designing this as a farewell gift. + +Repo: [blobcat-pcb on Codeberg](https://codeberg.org/fkfd/blobcat-pcb) + +## Artistic design + +![Board outline](img/blobcat-pcb/outline.png) + +Board outline is based on [this svg of +:blobcat_paw:](https://github.com/DuckOfDisorder/BlobCats/blob/main/SVGs/BlobCats/BlobCat_Paw.svg). + +I would have printed the pattern in black, if black silkscreen wasn't 10x +more expensive. + +## Structural design + +You can snap the board in two and solder them up. The solder joints +provide structural support and electrical conduction from batteries to +circuitry. I took the idea from a project I saw earlier, but forgot which. + +## Logic design + +I <s>referenced</s> copied [FrostAutumn's design on LCSC +OSHWHub](https://oshwhub.com/frostautumn/bie-zai-zhuo-li-fa-dian-v1-1). + +- NE555 in astable mode provides clock signal for CD4017 +- CD4017 outputs high level to exactly one LED +- Each rising edge, a different LED turns on +- Effect: marquee +- Speed adjustable with RV1 + +![Schematic for NE555 and CD4017](img/blobcat-pcb/logic.png) + +## Power design + +At first I wanted to use only one CR2032, just like FrostAutumn's design. +Datasheet says NE555 needs 4.5V, so I'll need a boost converter. With the +converter comes a lot of annoying stuff, like inductors, so I just said +"fuck it" and threw away the converter idea. + +Now the board is powered by two CR2032s. + +## DIY Manual + +<details markdown="1"> +<summary markdown="1">__If you want to build your own, expand this__</summary> + +### BOM + +All R, C, and D are 0603. + +- U1: [NE555 SOIC-8](https://item.szlcsc.com/729488.html) +- U2: [CD4017 SOP-16](https://item.szlcsc.com/331800.html) +- R1: 2.2k (anything between 1k to 5k should work) +- R2: 10k (or somewhere near that) +- RV1: [500k](https://item.szlcsc.com/139843.html) +- C1: 10nF +- C2: 1uF +- R10-19: 120 (120 to 180 is safe) +- D10-19: LEDs, arbitrary colors, note that each reference is two LEDs +- SW1: [SPDT, 6 pins](https://item.szlcsc.com/3178990.html) +- BT1,2: No idea what the package is, I just happen to have some + +### Fabrication + +The fab may charge extra because they might mistake the battery board for +a separate design. I negotiated out of paying for it. + +### Assembly + +When soldering, use flux generously. + +- Snap board into main board and battery board +- File down the four snapped bits +- Solder main board (the side with more parts first) +- Solder battery board (make sure BT1,2 don't jiggle) +- Rotate battery board by 90 degress +- Insert into main board +- solder 4 pairs of copper strips at crossing +- Insert CR2032 batteries +- Turn on SW1 + +#### Note on LEDs + +LEDs typically have a green marking on the front side. It is the cathode. +On the PCB, a U shape surrounds the LED. The valley is the cathode. It +appears more yellow because it is connected to the ground plane. + +You should use the same color for each pair, because they share the same +voltage. If you solder red and blue, only red will light up, because it +requires less voltage. + +### Troubleshooting + +- It doesn't work at all + +Probe voltage across VCC and GND. If too low, check soldering on BT1,2 and +SW1. Make sure BT1,2 lay completely flat and don't jiggle. + +If still no, check soldering on U1,2, C1,2, R1,2 and RV1. Gently nudge +pins with tweezers. Does it jiggle? If so, rework. + +- An LED doesn't work + +First, check polarity. + +If the LED on the other side works, check if they're the same color. If +you're not sure, replace. + +If neither LED works, check the resistor (R10-R19) and U2. + +### Bugs + +#### Battery + +CR2032 batteries exceed lowest board outline, assembly tips slightly. + +When using v0.4.2, solder BT1,2 (battery holders) a few millimeters above footprint. + +Fixed in v0.4.3. + +#### Filled zones + +Thermal reliefs work too well. When soldering BT1,2 and copper strips, you +need to be patient. Heat will dissipate into filled zones. __Do not touch +the board surface__; it will scald you. Use a clamp if possible. + +#### Important! + +Do not put blobcat v0.4.2 on a conductive surface. It will short BT1. + +</details> + +## Dangers of overcomplicating + +In earlier iterations, I massively overcomplicated the project by: + +- routing 20 pairs of LEDs instead of 10 +- driving LEDs with BJTs for fear of frying CD4017 + +I managed to route them, but it was a pain. What's worse, I discarded the +design, which technically marks my efforts moot. All this work for +nothing. + +I don't know what the complexity of routing N parts is, but it definitely +is higher than O(N). + +Don't overcomplicate your projects, kids! + +![Copper layers of overcomplicated design](img/blobcat-pcb/v0.2-cu.png) + +Copper layers in ▲ v0.2; ▼ v0.4 + +![Copper layers of current design](img/blobcat-pcb/v0.4-cu.png) diff --git a/docs/projects/img/blobcat-pcb/logic.png b/docs/projects/img/blobcat-pcb/logic.png Binary files differnew file mode 100644 index 0000000..3f0728a --- /dev/null +++ b/docs/projects/img/blobcat-pcb/logic.png diff --git a/docs/projects/img/blobcat-pcb/marquee.gif b/docs/projects/img/blobcat-pcb/marquee.gif Binary files differnew file mode 100644 index 0000000..008a1b0 --- /dev/null +++ b/docs/projects/img/blobcat-pcb/marquee.gif diff --git a/docs/projects/img/blobcat-pcb/outline.png b/docs/projects/img/blobcat-pcb/outline.png Binary files differnew file mode 100644 index 0000000..b2553f1 --- /dev/null +++ b/docs/projects/img/blobcat-pcb/outline.png diff --git a/docs/projects/img/blobcat-pcb/v0.2-cu.png b/docs/projects/img/blobcat-pcb/v0.2-cu.png Binary files differnew file mode 100644 index 0000000..5770872 --- /dev/null +++ b/docs/projects/img/blobcat-pcb/v0.2-cu.png diff --git a/docs/projects/img/blobcat-pcb/v0.4-cu.png b/docs/projects/img/blobcat-pcb/v0.4-cu.png Binary files differnew file mode 100644 index 0000000..fde782c --- /dev/null +++ b/docs/projects/img/blobcat-pcb/v0.4-cu.png diff --git a/docs/projects/index.md b/docs/projects/index.md index 1b34bda..40deb60 100644 --- a/docs/projects/index.md +++ b/docs/projects/index.md @@ -8,6 +8,13 @@ MkDocs). But the few that do, are here. Projects below are sorted reverse chronologically (most recent first). +## [blobcat PCB](blobcat-pcb) + +![Yellow PCB standing, colorful LEDs in marquee mode. Printed on PCB: +"TechJI 2023" and "owo :blobcat:"](img/blobcat-pcb/marquee.gif) + +Fun? Yes. Stupid? 100%. It has no value other than blinky blinky. + ## [Byseekel](byseekel) ![Both sides of a soldered PCB](img/byseekel/rev3.jpg) |