Derya Selin ÇakırDerya Selin Çakır
Projeye dön
IoT / Donanım2020 – 2024

Case Study

Spero 3D

Spero 3D'nin uzun hikâyesi — neyi inşa ettik, ürün iki TÜBİTAK ARGE programı boyunca nasıl olgunlaştı, CES 2023 fuar zemininden nasıl göründü ve projeyi neden bilinçli olarak durdurduk.

Bağlam ve sorun

2021 yılında 3D yazıcılık, sabır gerektiren bir maker rüyasıydı. Tek bir parçanın baskısı saatleri buluyordu, anlamlı bir üretim serisi ise günlere yayılıyordu. Ve her baskının sonunda birinin orada olması gerekiyordu — parçayı sökmek, yüzeyi temizlemek, gerekirse tablayı kalibre etmek ve bir sonraki işi elle kuyruğa eklemek için.

Hobi kullanıcısı için bu küçük bir rahatsızlıktan ibaretti. Ama yazıcılarını üretken bir altyapı gibi çalıştırmaya çalışan küçük işletmeler, makerspace'ler ve eğitimciler için ciddi bir kapasite tavanıydı. Pazardaki mevcut otomasyon çözümleri ise ya pahalı endüstriyel sistemlerdi ya da DIY hack'ler; ikisinin arasında, bir desktop yazıcının fiyat ve karmaşıklık seviyesine oturan bir ürün yoktu.

  • Tek-iş zihniyeti

    Desktop yazıcıların çoğu, baskı kuyruğu veya uzaktan kontrol gibi kavramları taşımadan satılıyordu. Pazarda "uzaktan kontrol" demek, genellikle yerel ağda Octoprint çalıştıran bir Raspberry Pi'a sahip olmak demekti.

  • Operatöre bağlı kapasite

    Yazıcı, her baskının ardından insan müdahalesine ihtiyaç duyuyordu — makinenin kendisi gece boyu çalışabilecek olsa bile.

  • Açık ekosistem dağınıklığı

    Desktop 3D yazıcı pazarına açık firmware'li yazıcılar hâkimdi (büyük çoğunluğu Marlin tabanlıydı). Ancak çevrelerinde kurulu araç ekosistemi dağınıktı, çoğunluğu hobi seviyesinde kalıyordu, bulut tabanlı olanı da nadirdi.

Vizyon

Spero 3D'yi basit bir tezle kurduk: insan eli gerektirmeyen 3D yazıcılık bir lüks değil, standart bir özellik olmalıydı. Ürünün aynı anda iki şey yapması gerekiyordu — baskılar arasında yatağı fiziksel olarak temizlemek ve operatöre kuyruğu uzaktan, bulut tabanlı olarak besleme ve izleme imkânı vermek.

Bu da donanım ile yazılımın sıkı sıkıya kenetlendiği bir ürün demekti. Tek başına her parça yalnızca artımsal bir iyileştirme olurdu; ama ikisi bir arada, bir desktop yazıcının insansız neler yapabileceğinin sınırlarını yeniden çiziyordu.

  • Donanım

    Mevcut Marlin tabanlı yazıcılara, baskı kalitesinden ödün vermeden monte edilebilen otomatik bir yatak temizleme mekanizması.

  • Yazılım

    Kullanıcıların baskı kuyrukları oluşturabildiği, işleri her yerden takip edebildiği, canlı kameradan izleyebildiği ve ekipler arası ortak çalışabildiği bir bulut platformu.

  • Dağıtım

    Aynı anda iki kitleyi hedefliyorduk: maker topluluğu (açık donanım, kolay kurulum) ve küçük ticari baskı çiftlikleri (kuyruk yönetimi, çoklu yazıcı kontrolü).

Faz 1 — TÜBİTAK 1512 MVP

TÜBİTAK 1512 programı kapsamında geliştirdiğimiz ilk nesil, konsepti uçtan uca doğruladı. Donanım, yazıcının baskı yatağının altına monte edilen çok parçalı bir şaseydi ve kendi DC motoru ile dişli sistemi üzerinden çalışıyordu. Yazılım tarafında ise Octoprint için Python tabanlı bir plugin yazdık; bu plugin hem kuyruk yönetimini ve uzaktan izlemeyi sağlıyor, hem de her başarılı baskının ardından temizleme mekanizmasını tetikleyen sıralama mantığını yürütüyordu.

  • Octoprint eklentisi

    Python, Jinja şablonları ve JavaScript ile geliştirildi. Sunduğu özellikler arasında baskı kuyrukları, uzaktan izleme, baskı sırasında bozulan bölgenin izolasyonu, nozzle ve yatak sıcaklık kontrolü, canlı kamera, timelapse ve terminal erişimi vardı.

  • Birinci nesil Reloader

    Yatağın altında çok parçalı bir şase, kendine ait bir DC motor ve dişli sistemi, baskılar arasında çıkarılıp tekrar yerine yerleştirilen manyetik baskı yüzeyi.

  • Sonuç

    Uçtan uca otomasyonu kanıtlayan, çalışır halde bir MVP. Bir sonraki neslin tasarım problemlerini su yüzüne çıkaracak kadar canlı kullanım saati de bu süreçte birikti.

Faz 2 — 1507 yeniden kurgulaması

1512 MVP'si, sistemin nerede tıkandığını da net biçimde gösterdi. Çok parçalı mekanizmada kullandığımız GT2 kapalı kayışların tedariği sürekli bir baş ağrısıydı. Baskı yatağının altındaki çalışılabilir alan, kayış tahrikli herhangi bir tasarım için fazlasıyla zorlayıcıydı. Üstüne Octoprint'in donanım gereksinimi (her yazıcı için bir Raspberry Pi 3B/4) global çip krizinden sonra orantısız biçimde pahalılaşmıştı. TÜBİTAK 1507 programı kapsamında ürünün her iki yarısını da yeniden kurduk.

  • Donanımın yeniden tasarımı

    Kendi tahrik sistemi olan bir mekanizma yerine, ikinci nesil Reloader yazıcının mevcut motorlarından ve özel olarak yazdığımız bir end-of-print G-code script'inden besleniyor. Yatağın önüne tek parçalı bir uzantıyla sabitlenmiş yay çeliği baskı yüzeyi, baskı bittiğinde Y profili yukarı hareket ettiğinde yukarı doğru bükülüyor; parçayı tek bir hareketle atıyor ve aynı hareketle kendini sıfırlıyor. Çok daha az hareketli parça, çok daha yüksek dayanıklılık.

  • Yazılımın yeniden kurulumu

    Raspberry Pi + Octoprint kombinasyonunu, doğrudan ESP32-S3 mikrokontrolcüsü üzerinde çalışan kendi native print server'ımızla değiştirdik. ESP32-S3'ün USB OTG özelliği sayesinde yazıcının FTDI kontrolcüsüyle USB Virtual COM Port üzerinden konuşan bir altyapı kurduk — o dönemde stack'in bu katmanında benzeri uygulanmamış bir donanım çözümüydü.

  • Plug-and-play Cloud Box

    Kalın bir kibrit kutusu boyutunda; üzerinde kamera, microSD depolama ve buluta WebSocket bağlantısı bulunan bir cihaz. Aynı işi yapan Raspberry Pi tabanlı bir kuruluma kıyasla 5-10 kat daha düşük maliyetli.

Bulut platformu

Cloud Box köprüydü, bulut platformu ise kullanıcının asıl yaşadığı yerdi. Backend'i Go ile yazdık — WebSocket desteği ve eşzamanlılık modeli nedeniyle bu seçimi yaptık. Frontend tarafında Vue.js ve Quasar kullandık, böylece mobil ile masaüstünde tek bir tutarlı deneyim çıkarabildik. WebSocket'i HTTP polling, MQTT ve RPC ile karşılaştırdıktan sonra tercih ettik — düşük gecikmeli ve sürekli açık bağlantı modeli, canlı baskı izleme ile kamera akışları için en uygun yapıydı.

  • Çoklu yazıcı paneli

    Tek bir hesap üzerinden birden fazla yazıcıyı kuyruğa alma, izleme ve kontrol etme.

  • Baskı kuyrukları ve kütüphaneler

    G-code'u bir kez yükleyip yeniden kullanılabilir listeler hâlinde düzenleme, ardından bağlı herhangi bir yazıcıya gönderme.

  • Canlı kamera ve timelapse

    WebSocket üzerinden anlık görüntü akışı; istenirse her baskı için ayrı timelapse video kaydı.

  • Plug-and-play kurulum

    Cloud Box mobil uygulamadan eşleştiriliyor, kullanıcının ağ bilgisi olmasına gerek kalmıyor.

  • Ortaklaşa kullanım

    Paylaşımlı baskı çiftliklerinin altyapısı — birden fazla kullanıcı, ekipler arasında dolaşabilen kuyruklar ve kaynak paylaşımı.

CES 2023 ve açık kaynak tercihi

Spero 3D olarak CES 2023'e Las Vegas'ta katılımcı olarak gittik. Beklediğimizden çok daha sıcak bir karşılama gördük: uluslararası beta kayıtları, perakende görüşmeleri ve bir donanım girişiminin değerini dashboard'larla değil, el sıkışmalarla ölçtüğü o doğrulama hissi. Aynı dönemde stratejik bir karar aldık: donanımı (artık Autoflex markası altında) açık kaynak olarak yayımlayalım, bulut platformunu ise kapalı tutalım. Mantığımız basitti — donanımın etrafında tabandan büyüyen bir maker topluluğu oluşsun, biz de bu donanımın doğal olarak yönlendirdiği bulut platformu üzerinden gelir elde edelim.

  • CES 2023 katılımcısı

    Las Vegas fuar zemininde Reloader → Cloud Box → mobil uygulama döngüsünün canlı demosunu yaptık; uluslararası beta topluluğunun ilk üyelerini yüz yüze topladık.

  • Açık kaynak donanım (Autoflex)

    Mekanik CAD dosyaları, elektronik ve firmware; topluluğun katkı verebilmesi ve farklı yazıcı modellerine adapte edebilmesi için açık kaynak olarak yayımlandı.

  • Kapalı bulut platformu (Spero Cloud)

    Kuyruk yönetiminin, çoklu yazıcı kontrolünün, canlı izlemenin ve ekip işbirliğinin yaşadığı SaaS katmanı.

Pazar değişimi ve sonlanma kararı

Biz açık platform oyununu kurmaya çalışırken, pazar sessiz sedasız başka bir yöne kaymıştı. Bambu Lab ve onun temsil ettiği kapalı ekosistemli desktop yazıcı dalgası; otomasyonu doğrudan yazıcının kendisine dikey entegre edilmiş halde getirdi — ne eklenti donanım gerektiriyordu, ne üçüncü parti bulut, ne de topluluk eklentisi. Donanım ile yazılımı entegre etme hızında onlara yetişmemiz mümkün değildi: onların stack'i baştan sona kendi kontrolündeydi, bizim ise dağınık bir Marlin evrenine sonradan eklemlenmek dışında bir seçeneğimiz yoktu.

Kararı bilinçli olarak verdik. ARGE bütçesi daralıyor, pazarın momentumu da değişmişti; şirketi ayakta tutmak ya başkasının kapalı platformuna pivot etmek (yani tezi terk etmek), ya da artık bizim olmayan bir ön açıyı kovalamak için daha fazla sermaye harcamak anlamına geliyordu. Projeyi kapatmak zor bir karardı, ama doğru olanıydı.

  • Pazar sinyali

    Bambu Lab ve kapalı ekosistem oyuncuları; herhangi bir açık platform eklentisinin yetişemeyeceği entegre otomasyonu, daha hızlı iterasyon döngülerini ve kutudan çıkar çıkmaz çalışan bir deneyimi birlikte sundu.

  • Sermaye gerçekliği

    ARGE'yi sürdürmek, donanım girişimleri için zorlaşan bir ortamda yeni yatırım turları gerektirecekti.

  • Verilen karar

    Aynı koşullarda kazanamayacağımız bir mücadelede kaynaklarımızı tüketmek yerine ürün yatırımını durdurduk. Açık kaynak çıktılar ve bulut platformu hâlâ topluluk için çevrimiçi.

Product management açısı

Geriye dönüp baktığımda Spero 3D, üst üste binmiş üç ürün yönetimi pratiğinin toplamıydı.

  • Donanım ve yazılımda 0-to-1 inşa

    Sıkı sıkıya kenetli bir mekatronik + bulut + mobil ürünün keşif, kapsam, yol haritası ve teslimat liderliğini üstlenmek; üstelik sistemin bir yarısı sürekli olarak diğerinin gereksinimlerini yeniden şekillendirirken.

  • Finansmanla stratejinin örtüşmesi

    İşi TÜBİTAK 1512 (kanıt) ve 1507 (ürünleştirme) programlarının ritmine göre yapılandırmak ve raporlama ile denetimi ürün geliştirmeyle paralel yönetmek.

  • Ne zaman duracağını bilmek

    Ürün yöneticiliğinin en zor, hakkında en az konuşulan becerisi: pazar sinyalini dürüstçe okumak, batık maliyet duygusunu ileriye dönük kararlardan ayırmak ve dünyanın geride bıraktığı bir tezi finanse etmeye devam etmemeyi seçmek.