🇹🇷 Türkçe · 🇬🇧 English · 🇨🇳 中文
Cihaz, çocukların ve öğrenmek isteyen herkesin yaparak öğrendiği açık kaynak bir öğrenme platformudur. Bu depo, platformun 3D tasarım ve montaj dersidir: cihazın fiziksel kasası — 3D baskı parçaları, kaynak (parametrik) CAD ve montaj bilgisi.
- Case — bu depo 👉 3D baskı kasa (ön kapak + arka kabuk) + montaj
- Console — kasanın içine giren donanım + firmware (ESP32-S3) (ayrı depo)
- Studio / Chat — fikir geliştirme ve kodlama araçları (ayrı depolar)
🚧 Not: Resimli birleştirme kılavuzu (adım adım, oklu sahneler) ve interaktif 3D görüntüleyici sonra eklenecek. Bu sürüm baskı parçalarını, ayarları ve montaj künyesini içerir.
📸 Ekranda hâlâ "GunBoy" yazıyor — geliştirme sürecindeki eski isim, firmware henüz güncellenmedi. Gerçek, çalışan bir cihazın fotoğrafı bu, kusura bakma. 😃
Cihaz-Case/
├── print/ ← 3D BASILACAK parçalar (bunları yazdır)
│ ├── faceplate.stl (ön kapak)
│ └── backshell.stl (arka kabuk)
├── modules/ ← elektronik modüllerin STL'i (referans/fit — BASILMAZ)
│ └── esp32-s3, tft-2.8-inch, max98357a, joystick, button-ts6, microsd, speaker
└── cad/ ← kaynak (parametrik) — kasayı değiştirmek istersen
├── case_param.py + params.json (build123d ile yeniden üretilir)
└── faceplate.step + backshell.step
Kasa ölçüsü: 112 × 160 × 38 mm. modules/ içindekiler gerçek modüllerin 3D modelidir —
basılmaz, sadece "neyin nereye oturduğunu" görmek/ölçmek içindir.
Bu depo basılı kasayı anlatır; ama başlamak için 3D printer gerekmez. Cihaz üç seviyede de çalışır — hangisi elindeyse oradan başla:
- Seviye 0 — Breadboard (hiç alet yok): Modülleri bir breadboard'a takıp jumper kablolarla bağla. Ne printer, ne lehim — ve oyunlar bu haliyle oynanır. (Çalışan bir fotoğrafı Cihaz-Console deposunda var.)
- Seviye 1 — Elindeki bir kutu: Karton, ahşap ya da eski bir kutu + biraz bant/sıcak silikon. Hâlâ printer yok, ama artık elde tutulan bir şey.
- Seviye 2 — Basılı kasa (bu depo): En derli toplu hâli. Opsiyonel bir üst seviye — varış noktası değil, sadece bir seçenek.
Sadece 2 parça basılır: print/faceplate.stl ve print/backshell.stl.
Baskı ayarları (denenmiş, işe yarayan klasik ayarlar — dilediğin gibi değiştir):
| Ayar | Değer |
|---|---|
| Malzeme | PLA (daha dayanıklı istersen PETG) |
| Katman yüksekliği | 0.2 mm |
| Dolgu (infill) | %15–20 |
| Duvar / perimeter | 3 |
| Destek | Ön kapakta çentik/çıkıntılar için gerekebilir; arka kabuk açık taraf yukarı, genelde desteksiz |
| Tabla yapışması | Brim (özellikle ince kenarlar için) önerilir |
İpucu: Ön kapağı ön yüzü tablaya bakacak şekilde bas (ekran penceresi düzgün çıksın), arka kabuğu açık tarafı yukarı bas.
| Modül | Vida | Adet | Not |
|---|---|---|---|
| Ekran (TFT) | M3 | 4 | 2 üst boss + 2 alt kanca |
| Joystick | M3 | 4 | arkadan M3×8 |
| Köşe (kapak birleşimi) | M3 | 4 | iki kabuğu birleştirir |
| SD modülü | M2 | 4 | standoff kaideler |
| MAX98357A | M2.5 | 2 | standoff, ~13 mm ara |
Toplam: M3 × 12 · M2 × 4 · M2.5 × 2
Kasanın içi, tüm modüller yerine oturmuş hâlde böyle görünür:
5 tuş (A, B, START, SELECT, HOME) küçük bir perfboard/protoboard üzerine yerleştirilip ön kapağın iç yüzüne sabitlenir (tuşlar pencerelerden dışarı bakar).
Kullanılan 6mm TS6 tactile buton — tek başına bu kadar küçük ve ucuz.
Tuş bağlantısı — her tuş 6mm TS6 tactile buton. Her buton bir bacağıyla kendi GPIO pinine, diğer bacağıyla ortak GND hattına gider. (Dahili pull-up açık → basılınca pin GND'ye çekilir, yazılım "basıldı" görür.)
| Tuş | ESP32-S3 pini |
|---|---|
| A (onay/aksiyon) | GPIO 7 |
| B (geri/iptal) | GPIO 14 |
| START (duraklat) | GPIO 8 |
| SELECT | GPIO 9 |
| HOME (ana menü) | GPIO 6 |
Yöntem 1 — Lehimsiz (en kolay): Tuşları perfboard'daki deliklere, pimleri alttan görünecek şekilde yerleştirip kabloları sağlam bağlamayı deneyebilirsiniz. Tuşlar bu şekilde yerleştirilmiş perfboard'u ön kapağa yapıştırırsanız, kablo bağlantınız tam sağlam olmasa bile tuşlar her zaman yerinde oturmuş olur.
Tuşun perfboard deliğine oturmuş hâli — pimler alttan böyle görünür.
Yöntem 2 — Lehimli (en güvenli ve öğretici):
- Ben 4 pinli tuş kullandım — 2 pinli tuş kullanacaklar için işlem daha kolay olacaktır. 4 pinli tuşlarda çapraz veya yan yana duran pin çiftlerini birbirine lehimleyip tuşu efektif 2 bacaklı hâle getirmeniz gerekir.
- En kolay yol: ESP32-S3 tarafı erkek pin olduğu, ben de GND kanalı olarak yarım breadboard kullandığım için, orta uzunlukta bir erkek-dişi jumper kabloyu tam ortasından kestim, kesilen ucu hafifçe soyup her tuş için bir kablo kullandım.
- Dişi uç → S3 tarafı (ilgili GPIO)
- Erkek uç → GND kanalı
- Ben lehimi yapıştırmadan önce yaptım; ama tuşları önce pimleri açıkta kalacak şekilde yapıştırırsanız, lehimi sonradan arkadan yapmak da mümkündür.
Bu, projedeki tek lehim gerektiren nokta (hazır lehimli buton modülü bulabilirseniz o bile gerekmeyebilir).
⚠️ config.h(Console deposu) pin numaralarıyla buradaki tablo aynı olmalı — biri değişirse tuşlar susar.
Basit yol: print/*.stl dosyalarını doğrudan indirip herhangi bir slicer'da (Bambu Studio, PrusaSlicer...) ya da mesh düzenleyicide (Meshmixer, Blender) açıp basit değişiklikler yapabilirsiniz — build123d bilmenize gerek yok. cad/*.step dosyaları da FreeCAD, Fusion 360 gibi herhangi bir CAD programında açılıp düzenlenebilir; mevcut dosyalarla bu zaten mümkün.
İleri yol (parametrik): Kasa parametrik: cad/case_param.py + cad/params.json (build123d).
Ölçüleri params.json'dan değiştir, case_param.py'yi çalıştır → yeni .step/.stl üretilir.
- 🔧 Console — içine giren donanım + firmware (ayrı depo)
- 🎮 Studio — fikirlerini tarayıcıda dene (ayrı depo)
- 💬 Chat — fikirlerini birlikte kodla (ayrı depo)
Yazılım/kaynak: MIT. Donanım tasarımı (STL/STEP) da aynı ruhla serbesttir — dilediğin gibi bas, değiştir, dağıt, sat. İstersen bambaşka bir şeye dönüştür. 🌱




