Bu teknik doküman B107AA R6 için hazırlanmış olup yeni yapılacak olan tasarımlara kaynak niteliğindedir.
FOTA Sistem Mimarisi
Bu sayfa, B107AA R6 üzerindeki FOTA (Firmware‑Over‑The‑Air) mimarisinin ana çatı dokümanıdır. Alt sayfalarda tek tek incelediğimiz blokları burada bir araya getirip;
- FOTA’nın cihaz içindeki rolünü,
- iki MCU’lu güncelleme yaklaşımının gerekçesini,
- paylaşımlı hatlar için güvenlik kurallarını,
- servis/üretim perspektifini,
- ve toplam FOTA katmanı maliyet özetini
tek bir yerde topluyoruz.
FOTA’nın hedefi ve neden ayrı bir MCU var?
B107AA’da güncelleme “tek MCU ile” de yapılabilirdi; ancak sahada güç kesilmesi, GSM resetleri, watchdog tetiklenmesi gibi senaryolarda programlama akışının deterministik kalması kritik.
Bu nedenle R6 mimarisinde FOTA fonksiyonu iki parçaya ayrılmıştır:
-
Ana MCU (ATmega2560 @ 3V3):
- GSM üzerinden firmware indirir
- SD karta yazar
- FOTA akışını başlatır/izler
-
FOTA MCU (ATmega328P @ VFOTA):
- SD karttan firmware imajını okur
- Ana MCU’yu ICSP üzerinden programlar
- İş bittiğinde VFOTA kapanışını tetikler
Bu ayrımın pratik getirisi şudur: “download” ile “programlama” tarafları birbirinden ayrıldığı için, güncelleme sırasında ana MCU tarafında oluşabilecek geçici sorunların programlama akışını bozma ihtimali düşer.
Blok diyagram (özet)
FOTA katmanı aşağıdaki alt bloklardan oluşur:
-
VFOTA güç domaini (power‑gating)
- FOTA katmanı yalnız güncelleme sırasında açılır.
- VFOTA anahtarlama topolojisi güç katmanı dokümantasyonunda analiz edilmiştir.
-
FOTA MCU
- SD’den okur → ICSP’ye yazar.
-
SD kart paylaşımı (SPI + MUX)
- SD kart iki master arasında analog switch/MUX ile seçilir.
- Varsayılan bank: FOTA MCU.
-
FOTA Burn Buffer (ICSP buffer / enable)
- Ana MCU ICSP hatları FOTA MCU’ya kontrollü şekilde bağlanır.
FOTA_BURN_ENile yalnız FOTA sırasında aktif edilir.
-
FOTA LED (RGB durum göstergesi)
- VFOTA açıkken çalışır.
- Sahada teşhis için pattern/renk kodlaması sağlar.
FOTA akış sırası
Aşağıdaki akış; sahada arıza teşhisinde “ne zaman hangi blok devrede?” sorusuna cevap vermesi için net tutulmuştur.
- Ana MCU firmware’i indirir (GSM) ve SD karta yazar.
- Ana MCU, SD bank’ini geçici olarak kendine aldıysa iş bitiminde default’a (FOTA MCU) geri döner.
- Ana MCU,
VFOTAdomainini açtırır ve FOTA MCU’yu hazırlar. - Ana MCU,
FOTA_BURN_ENile ICSP buffer’ı kontrollü şekilde aktif eder. - FOTA MCU SD’den okur → ICSP üzerinden programlar.
- Doğrulama/sonlandırma sonrası
FOTA_POWER_DONEile VFOTA kapanışını güç katmanı mantığına uygun şekilde tetikler.
Paylaşımlı hatlarda güvenlik kuralları
FOTA’da iki kritik paylaşım vardır; ikisi de “tek sürücü” kuralına göre işletilmelidir.
1. SD kart (SPI)
- Aynı anda iki MCU SD kartı sürmez.
- Ana MCU SD’ye eriştiyse, iş bitince seçim mutlaka default’a dönmelidir.
2. Ana MCU ICSP hattı
- ICSP hattı aynı anda iki kaynaktan sürülmemelidir (dış programlayıcı ↔ FOTA MCU).
FOTA_BURN_ENFOTA dışında kapalı kalır.
Saha kuralı: Dış ICSP programlama ile FOTA işlemi aynı anda yapılmaz.
ICSP soketi ↔ FOTA çakışması (servis riski): ICSP hatları aynı anda hem harici programlayıcı tarafından sürülürken hem de FOTA_BURN_EN=HIGH ile FOTA tarafına bağlanırsa hatlarda contention oluşabilir.
Bu risk pratikte şu şekilde yönetilmelidir:
- Üretim/servis prosedürü: FOTA aktifken harici ICSP kesinlikle takılmaz.
- Donanım opsiyonu (öneri): Harici ICSP konnektörü nadir kullanılıyorsa DNP bırakılıp sadece pogo/test pad ile üretimde programlama yapılması, riski ve BOM’u azaltır.
- Alternatif: Harici ICSP hattını 0Ω link/jumper üzerinden bağlayıp yalnız üretimde aktif etmek.
Bu sayfada mimari kuralı tanımlarız; detaylı üretim prosedürü ilgili üretim dokümanında ayrıca netleştirilecektir.
Servis / üretim perspektifi
- FOTA MCU için ayrı tuning/ICSP konnektörü sayesinde üretimde programlama kolaydır.
- Kutu açılmadan “LED pattern” ile sahada hızlı teşhis yapılabilir.
- VFOTA yalnız güncelleme sırasında açıldığı için normal kullanımda tüketim minimize edilir.
Alt sayfalar
- FOTA İşlemcisi (ATmega328P)
- FOTA LED’leri (RGB durum göstergesi)
- FOTA Burn Buffer (ICSP hat paylaşımı)
Not: VFOTA power‑gating ve SD MUX detayları, ilgili katman sayfalarında ayrı başlıklar olarak dokümante edilmiştir (güç katmanı referansı dahil).
FOTA Burn Buffer
Burn Buffer; FOTA mimarisinde ana işlemcinin (ATmega2560) ICSP/ISP hatlarının FOTA işlemcisine (ATmega328P) kontrollü şekilde bağlanmasını sağlar.
- Enable hattı:
FOTA_BURN_EN - Varsayılan güvenli durum:
FOTA_BURN_EN=LOW(buffer tri‑state) - Amaç: güncelleme sırasında ICSP hatlarını tek sürücü kuralıyla FOTA tarafına devretmek
Detaylı şematik analizi, hat eşlemesi, RC/EMI değerlendirmesi, TXS0104E uygunluğu ve test checklist’i için ayrı sayfaya bak:
Tahmini Maliyet Özeti (FOTA Katmanı)
Aşağıdaki tablo, FOTA katmanını oluşturan alt blokların sayfalarında hesaplanan maliyetlerin özetidir. Fiyatlar tahminidir; tedarikçi/adet/stok durumuna göre değişir.
| Alt blok | Prototip (1–10) | Pilot (100) | Seri (1k+) | Not |
|---|---|---|---|---|
| FOTA MCU alt bloğu | $2.27 | $1.84 | $1.58 | MCU + reset/bypass + J7 |
| FOTA LED alt bloğu | $0.18 | $0.12 | $0.09 | RGB LED + sürücüler + pasifler |
| FOTA Burn Buffer alt bloğu | $0.47 | $0.31 | $0.23 | U19 + R95/C128 + C126/C127 |
| TOPLAM (bu sayfada özetlenen) | $2.92 | $2.27 | $1.90 | VFOTA power‑gating ve SD MUX ayrı katmanlarda |
Bu toplam, FOTA katmanının “MCU + durum göstergesi + ICSP buffer” kısmının BOM maliyetini verir. VFOTA power‑gating ve SD kart MUX maliyetleri kendi katman tablolarında değerlendirilir.