Materi ATEROSTOP

Materi Software ATEROSTOP

Pegangan tim untuk presentasi PKM-KC 2026, Universitas Tanjungpura. Acuan utamanya Laporan Akhir dan Artikel Ilmiah, dengan rincian dari kode aplikasi versi 1.7.7.

  • 20 bagian
  • 10 penanda Belum ada data (rangkumannya di bagian 19)
  • Diperbarui 02-11-2026
Baru mulai?Baca bagian 1, 3, dan 4. Tiga bagian itu cukup untuk paham gambaran besarnya.
Persiapan PIMNAS?Buka daftar belajar A–I. Tiap poin menunjuk bagian materi yang menjawabnya.
Cari istilah tertentu?Ketik di kotak cari. Daftar isi akan menunjukkan bagian yang memuatnya.

Daftar belajar PIMNAS

Klik nomor bagian untuk membaca jawabannya. Centang poin yang sudah kamu pahami. Centang hanya tersimpan di browser kamu sendiri.

  • Lengkap di materi semua poin dijawab materi ini
  • Sebagian ada poin yang perlu bahan dari dokumen lain
  • Belum ada di materi ini pelajari dari Laporan Akhir atau tanyakan ke penanggung jawab
A

Alasan munculnya ide

Juan & Detti5 dari 6 poin ada di materi

  1. Angka WHO 2025 dan SKI 2023 ada di bagian 2.

  2. Materi hanya memuat kaitan medis per tahap. Telaah literaturnya ada di Laporan Akhir.

  3. Sebagian saja, lewat sumber dataset. Daftar jurnal lengkap ada di Laporan Akhir.

  4. Belum ada di materi ini
C

Administrasi

Dustin & Detti2 dari 4 poin ada di materi

  1. Hanya status paten dan draf artikel. Daftar luaran lengkap ada di Laporan Akhir.

  2. Materi hanya menyebut komponen dana Belmawa sekitar Rp4,4 juta. Rincian UNTAN belum ada.

  3. Belum ada di materi ini
  4. Belum ada di materi ini
D

Cara kerja sistem

AndrieLengkap di materi

F

Sensor, preprocessing, gate, filter, dan fitur

Dustin6 dari 10 poin ada di materi

  1. Belum ada di materi ini
  2. Materi hanya menyebut filter mengikuti cara tiap model dikembangkan (6.2).

    Belum ada di materi ini
  3. Angka ambang gate sengaja tidak dicantumkan (6.3).

    Belum ada di materi ini
  4. Hanya jumlah dan jenis umum fitur per model.

  5. Belum ada di materi ini
H

Pengujian

Dustin & YantoLengkap di materi

  1. Hanya alat pembanding dan alasan uji 30 detik.

+

Materi tambahan

Bagian ini tidak ada di daftar PIMNAS, tetapi tetap perlu dikuasai saat presentasi dan tanya-jawab.

  1. Pedoman klinis dan cara aplikasi memberi label
  2. Teknologi yang dipakai
  3. Semua angka waktu
  4. Keamanan data dan etik
  5. Batasan yang harus dijelaskan dengan jujur
  6. Latihan tanya-jawab juri
  7. Menyamakan penjelasan antaranggota
  8. Skenario demo dan cadangannya
  9. Bahan yang masih ditunggu dan sumbernya

1Inti dalam 1 menit

ATEROSTOP adalah sistem deteksi dini aterosklerosis pada arteri karotis yang noninvasif dan portabel. Alat merekam sinyal PPG dari ujung jari dan suara leher, lalu AI di dalam alat memperkirakan tekanan darah, glukosa, dan kolesterol, mendeteksi bruit, dan mengklasifikasikan aterosklerosis. Hasilnya tampil di layar alat dan dikirim lewat cloud Supabase ke aplikasi Flutter. Aplikasi menampilkan hasil, riwayat, dan rekomendasi.

Tiga kalimat yang wajib diingat:

  1. Alat yang mengukur dan menghitung. Aplikasi tidak pernah membuat angka klinis.
  2. Alat dan aplikasi tidak terhubung langsung. Semua data lewat Supabase.
  3. Hasilnya skrining awal, bukan diagnosis. Hasil positif tetap perlu dikonfirmasi ke dokter.

2Masalah yang dijawab

Masalah Jawaban ATEROSTOP
Aterosklerosis bisa berkembang tanpa gejala awal Skrining dini yang bisa dilakukan sebelum ada keluhan
DSA invasif; DSA dan USG Doppler relatif kompleks dan butuh tenaga kesehatan Noninvasif, portabel, dipandu layar alat
NIVA (ITB) belum memakai sinyal akustik bruit dan belum sepenuhnya portabel Menggabungkan PPG dan akustik karotis dalam satu alat
Tekanan darah, glukosa, kolesterol, dan bruit biasanya diperiksa terpisah Keempatnya jadi masukan satu model klasifikasi
Hasil pemeriksaan sering tidak terpantau Riwayat dan rekomendasi tersimpan per profil di aplikasi

Kenapa ada 4 parameter? Tekanan darah, glukosa, dan kolesterol adalah faktor yang berperan dalam terbentuknya plak. Saat plak menyempitkan arteri, aliran darah menjadi turbulen dan bisa menimbulkan suara bruit. Jadi tiga parameter pertama menggambarkan faktor pemicunya, sedangkan bruit berpotensi menjadi tanda dari penyempitannya.

Angka yang dipakai di latar belakang: penyakit kardiovaskular menyebabkan sekitar 17,9 juta kematian per tahun (WHO, 2025), dan prevalensi strok di Indonesia 8,3 per 1.000 penduduk (Survei Kesehatan Indonesia 2023).

Kenapa arteri karotis? Arteri ini pemasok utama darah ke otak, aterosklerosisnya berkaitan erat dengan strok, dan letaknya relatif mudah dijangkau untuk pemeriksaan noninvasif.

3Gambaran sistem: tiga lapis

Bayangkan Supabase seperti kantor pos dan arsip. Alat menitipkan hasil, aplikasi mengambilnya. Keduanya tidak perlu saling bertemu.

      ALAT (Raspberry Pi)            CLOUD (Supabase)          APLIKASI (Flutter)
    +---------------------+       +-------------------+       +---------------------+
    | Rekam sensor        |       | Akun & login      |       | Akun & profil       |
    | Olah sinyal         | ====> | Database          | <===> | Pairing alat        |
    | Jalankan model AI   | HTTPS | Sinkron real-time | HTTPS | Hasil & riwayat     |
    | Tampilkan hasil     | <==== | Keamanan data     |  +WS  | Rekomendasi         |
    | Simpan saat offline |       | File update APK   |       | Ekspor CSV          |
    +---------------------+       +-------------------+       +---------------------+
               ^                                                         |
               |                 kamera HP memindai QR                   |
               +---------------- (bukan koneksi jaringan) ---------------+
Lapis Tugas utama Yang tidak dilakukannya
Alat (edge computing) Memandu pemeriksaan, merekam sinyal, menjalankan AI, mengunggah hasil Tidak menyusun rekomendasi aplikasi
Cloud (Supabase) Menyimpan data, mengatur login dan hak akses, mengabarkan data baru Tidak menjalankan model AI
Aplikasi (Flutter) Mengelola akun dan profil, pairing, menampilkan hasil, menyusun rekomendasi Tidak merekam sensor dan tidak memulai pengukuran

Kenapa AI dijalankan di alat? Supaya pemeriksaan tetap berjalan tanpa internet. Internet baru dibutuhkan untuk mengirim hasil ke aplikasi.

3.1 Peran API

API adalah pintu resmi yang dipakai satu program untuk meminta layanan dari program lain. Aplikasi dan alat tidak membuka database secara langsung. Keduanya mengirim permintaan lewat API Supabase, lalu Supabase memeriksa siapa pengirimnya dan apakah permintaan itu boleh dijalankan.

Kebutuhan Layanan API Contoh di ATEROSTOP Jalur
Masuk dan pulihkan akun Auth API Login email, kirim OTP, verifikasi OTP HTTPS
Baca dan simpan data REST API Mengambil riwayat, menyimpan profil, menyimpan rekomendasi HTTPS
Proses yang harus diperiksa server RPC pair_device_verify dan pair_device_unpair dari aplikasi, pair_device_register dari alat HTTPS
Kabar data baru Realtime API Hasil baru di health_results, perubahan profil aktif di devices WebSocket
Ambil file Storage API version.json dan APK untuk update OTA HTTPS

Kenapa pairing memakai RPC? Pemeriksaan token, PIN, masa berlaku, dan kepemilikan harus terjadi di server. Kalau diperiksa di aplikasi, pemeriksaannya bisa dilewati.

Hak akses tiap pihak berbeda. Aplikasi berjalan sebagai pengguna yang login, sehingga dibatasi Row-Level Security. Menurut migrasi database, alat mendaftar lewat kunci sisi server service_role. Belum ada data Cara kunci alat disimpan perlu dipastikan dari kode Raspberry Pi.

4Alur besar dari awal sampai hasil

 PERSIAPAN (sekali di awal)
 Buat akun -> Buat profil keluarga -> Pairing alat (QR + PIN)
                                |
                                v
 PEMERIKSAAN (di layar alat)
 Pilih mode online/offline -> Pilih profil, atau isi umur & jenis kelamin
 -> Pilih kondisi glukosa -> Tekan Mulai
                                |
                                v
 PEREKAMAN BERURUTAN
 PPG di ujung jari 120 detik -> Suara leher 8 detik
                                |
                                v
 PEMROSESAN DI ALAT
 Olah dan cek sinyal -> Ekstraksi fitur -> Cek fitur -> Model AI -> Klasifikasi
                                |
                                v
 HASIL TAMPIL DI LAYAR ALAT
                |                                   |
          mode ONLINE                         mode OFFLINE
                |                                   |
  Terkirim ke Supabase dan              Tersimpan di alat, diunggah
  langsung ditautkan ke profil          saat ada internet, lalu pengguna
                |                       memilih profilnya di aplikasi
                |                                   |
                +-----------------+-----------------+
                                  v
 APLIKASI: Beranda -> Rekomendasi -> Riwayat -> Ekspor CSV

Diagram ini menunjukkan hubungan antartahap, bukan jadwal komputasi. Sebagian pengolahan bisa berjalan saat perekaman masih berlangsung.

5Alur tiap bagian

5.0 Jenis cara kerja sistem

Ada tiga pilihan yang menentukan jalannya pemeriksaan: mode koneksi, identitas pasien, dan kondisi glukosa.

Mode pemeriksaan

Hal Mode online Mode offline
Butuh internet saat periksa Ya Tidak
Identitas pasien Pilih profil pengguna Ketik umur dan jenis kelamin di alat
Perekaman dan AI Sama, berjalan di alat Sama, berjalan di alat
Hasil tampil di layar alat Ya Ya
Hasil di aplikasi Langsung, tertaut ke profil Setelah diunggah dan pengguna memilih profil

Kondisi glukosa yang dipilih di layar alat

Pilihan Arti di layar alat Dipakai untuk
Puasa Tidak makan atau minum berkalori minimal 8 jam Masukan XGBoost dan ambang glukosa di aplikasi
Sewaktu Tidak puasa, tanpa syarat waktu makan Masukan XGBoost dan ambang glukosa di aplikasi
2 jam setelah makan Diperiksa 2 jam setelah mulai makan Masukan XGBoost dan ambang glukosa di aplikasi

Kenapa kondisi glukosa harus dipilih? Kadar glukosa berubah setelah makan, jadi angka yang sama bisa berarti berbeda. Misalnya 130 mg/dL termasuk Diabetes pada kondisi puasa, tetapi Normal pada kondisi sewaktu.

Keadaan hasil yang mungkin muncul

Keadaan Artinya
Tidak valid Sinyal tidak layak dibaca, pemeriksaan perlu diulang
Terindikasi Model menyatakan ya, atau bruit terdeteksi
Tidak terindikasi, semua normal Tidak ada indikasi dan semua parameter dalam batas
Tidak terindikasi, waspada Tidak ada indikasi, tetapi ada parameter di luar batas

5.1 Akun dan masuk aplikasi

  1. Saat pertama dibuka, pengguna melihat layar pengenalan, lalu layar Masuk.
  2. Daftar: isi email dan kata sandi dua kali. Akun langsung aktif.
  3. Lupa kata sandi: kode OTP dikirim ke email, lalu pengguna membuat kata sandi baru.
  4. Setiap perpindahan halaman diperiksa aplikasi. Tanpa sesi login, pengguna diarahkan ke halaman Masuk.

5.2 Profil keluarga

Satu akun bisa memiliki banyak profil. Setiap hasil masuk ke profil yang dipilih, sehingga hasil anggota keluarga tidak tercampur. Umur dan jenis kelamin saat pemeriksaan ikut disimpan bersama hasil, jadi hasil lama tidak berubah konteks walau profil diedit nanti.

5.3 Pairing: menautkan alat ke akun

Tujuannya agar sistem tahu alat ini milik akun siapa.

 1. Alat meminta kode pairing ke Supabase
 2. Supabase membuat PIN 6 digit + token (berlaku 10 menit)
 3. Layar alat menampilkan QR + PIN
 4. HP memindai QR  -> mendapat ID alat dan token
 5. Pengguna mengetik PIN
 6. Aplikasi mengirim ID alat + token + PIN ke Supabase
 7. Supabase memeriksa:
      token cocok? belum kedaluwarsa? tidak terkunci? PIN benar? bukan milik orang lain?
 8. Lolos -> alat menjadi milik akun, dan alat langsung mendapat kabar

Kenapa perlu QR dan PIN? QR menunjukkan alat yang dituju, sedangkan PIN membuktikan pengguna melihat langsung layar alatnya. Foto QR saja tidak cukup untuk merebut alat. Alat yang sudah dimiliki orang lain juga ditolak, sampai pemiliknya menekan Putuskan di aplikasi.

5.4 Pemeriksaan online

 Aplikasi/layar alat            Supabase                  Alat
 ------------------            --------                  ----
 Pilih profil aktif  --->  simpan profil aktif  --->  menampilkan profil itu
                                                      Pilih kondisi glukosa
                                                      Tekan Mulai
                                                      Rekam dan proses
                           simpan hasil        <---   Kirim hasil
 Dapat kabar hasil baru <- kabar real-time
 Ambil data, tampilkan
  • Profil aktif bisa dipilih dari aplikasi atau layar alat, dan pilihan terakhir yang berlaku.
  • Tombol Mulai hanya ada di alat. Aplikasi tidak punya tombol ukur.
  • Kalau koneksi real-time putus, aplikasi tetap memuat ulang data saat tab dibuka atau aplikasi kembali dibuka.

5.5 Pemeriksaan offline

 1. Alat tanpa internet -> ketik umur & jenis kelamin di alat -> pilih kondisi glukosa
 2. Rekam dan proses seperti biasa, karena AI ada di dalam alat
 3. Hasil tampil di alat dan disimpan lokal
 4. Internet tersedia -> alat mengunggah data pemeriksaan
 5. Di aplikasi: Pengaturan -> Sinkronisasi Offline -> Pilih Profil
 6. Hasil masuk ke Beranda dan Riwayat profil tersebut
  • Kenapa profil dipilih manual? Alat tidak tahu siapa pemilik hasil offline, dan sistem tidak boleh menebak nama pasien.
  • Tanggal yang tampil adalah waktu periksa, bukan waktu unggah.
  • Data yang sudah terkirim bisa terlihat oleh pemilik baru. Saat alat dipasangkan ke akun lain, riwayat alat itu ikut terbaca. Hal ini perlu diperhatikan kalau alat dipakai bergantian.

5.6 Dari hasil menjadi rekomendasi

 Hasil dari alat
      |
      v
 Bandingkan angka dengan pedoman klinis
      |
      v
 Tentukan label tiap parameter (Normal, Meningkat, Darah Tinggi, ...)
      |
      v
 Tentukan status kartu (Normal, Waspada, Perlu Evaluasi)
      |
      v
 Pilih saran dari aturan yang sudah ditulis
      |
      v
 Tampilkan: saran prioritas tinggi lebih dulu

Rekomendasi tidak memakai AI generatif dan bukan resep obat. Isinya berasal dari aturan tetap: hasil yang sama selalu menghasilkan saran yang sama.

6Di dalam alat: cara AI bekerja

Bagian ini digarap tim alat dan model. Tim aplikasi tetap perlu paham garis besarnya.

 PPG ujung jari, 120 detik                  Suara leher, 8 detik
          |                                         |
 Cek kualitas, resampling,                  Cek kelayakan rekaman,
 filter Chebyshev II                        filter Butterworth 20-800 Hz
          |                                         |
 Ekstraksi dan cek fitur denyut             Pilih segmen, cari fase sistolik,
          |                                 ekstraksi dan cek fitur
    +-----+------+                                  |
    |            |                                  |
   GPR          MLP                         Regresi logistik
 Tekanan     Glukosa &                      Bruit ya/tidak
  darah      kolesterol                             |
    |            |                                  |
    +-----+------+----------------------------------+
          |
          +<--- mode pemeriksaan glukosa
          v
       XGBoost
 Aterosklerosis: ya/tidak
Istilah Penjelasan sederhana
PPG Cahaya inframerah masuk ke jari, sebagian diserap dan dihamburkan, lalu sebagian kembali ke sensor. Perubahannya berkaitan dengan perubahan volume darah tiap denyut
Bruit Suara tidak normal akibat aliran darah yang turbulen
Rekaman Seluruh data dalam satu sesi
Window Potongan rekaman dengan panjang tertentu
Filter Meredam frekuensi di luar rentang tertentu. Gangguan yang frekuensinya beririsan bisa tetap tersisa
Fitur Angka ringkasan dari sinyal yang menjadi masukan model
Quality gate Pemeriksaan yang menerima, menolak, atau menahan rekaman dan fitur. Gate tidak membersihkan sinyal dan tidak menghitung kadar
Inferensi Proses model yang sudah dilatih menghasilkan keluaran dari data baru

Regresi menghasilkan angka, misalnya tekanan darah 122 mmHg. Klasifikasi menghasilkan kategori, misalnya ya atau tidak. Inilah sebabnya ATEROSTOP memakai model yang berbeda untuk tiap keluaran. Regresi logistik termasuk klasifikasi meski namanya memuat kata regresi, karena dipakai untuk membedakan dua kelas.

6.1 Sensor tidak langsung membaca kadar

Sensor hanya merekam sinyal, lalu model memperkirakan nilainya:

 Cahaya masuk ke jari -> perubahan cahaya diterima sensor -> angka digital
 -> gelombang -> fitur -> pemeriksaan fitur -> model -> estimasi

Jadi MAX30105 tidak membaca molekul glukosa atau kolesterol. Model menerapkan hubungan yang dipelajari dari data latih, dan ketepatannya tetap harus diuji terhadap alat pembanding.

Pada jalur suara, chestpiece ditempelkan di area karotis. Suara lalu diteruskan lewat selang ke mikrofon di ujung selang. Adanya suara tidak otomatis berarti ada bruit, karena rekaman juga bisa memuat napas, gesekan, atau bicara.

6.2 Pengolahan tiap jalur

Jalur Frekuensi sampel pemrosesan Filter
Tekanan darah dan glukosa 125 Hz Chebyshev II, parameter orde desain 4, 0,5–8 Hz
Kolesterol 100 Hz Chebyshev II, 0,4–8 Hz, ditambah jalur 0,5–5 Hz untuk membantu deteksi puncak
Akustik 8 kHz menurut panduan deployment model, tidak dirinci di laporan dan artikel Butterworth 20–800 Hz
  • Sampling rate dan rentang filter adalah dua hal berbeda. 200 Hz berarti target 200 sampel per detik, sedangkan filter 0,5–8 Hz menentukan frekuensi sinyal yang dipertahankan.
  • Angka sampling PPG ada tiga jenis: 200 Hz adalah target akuisisi, 191,36 Hz hasil pengujian, sedangkan 125 Hz dan 100 Hz adalah frekuensi setelah resampling.
  • Filternya berbeda karena tiap model dikembangkan dengan pengolahan tertentu. Perubahan filter bisa mengubah bentuk sinyal dan nilai fitur.
  • Zero-phase berarti data disaring maju-mundur untuk menghindari pergeseran fase akibat filter. Letak puncak tetap bisa berubah karena bentuk sinyal ikut berubah.

6.3 Quality gate tiap model

Model Yang diperiksa
Tekanan darah Kanal, jumlah sampel, segmen, flatline, clipping, skewness, denyut yang bisa dipakai, kelengkapan fitur
Glukosa Segmen, flatline, clipping, jumlah puncak, skewness, CV IBI, template SQI, kelengkapan fitur
Kolesterol Durasi, perfusion index (PI), puncak, window, serta fitur ct_ratio, t_ba_rel, dan ipa
Bruit Ketersediaan rekaman, jumlah sampel, rekaman tidak kosong, flatline, clipping, bagian sinyal yang layak, keberhasilan perhitungan fitur
Aterosklerosis Hasil model sebelumnya dan informasi wajib tersedia, numerik, dan tersusun sesuai kontrak masukan

Lolos gate belum berarti hasilnya akurat. Gagal mendapatkan hasil juga bukan hasil normal: kolesterol yang gagal diestimasi tidak boleh dibaca sebagai kolesterol normal, dan rekaman bruit yang gagal dianalisis tidak otomatis berarti negatif.

Angka ambang gate sengaja tidak dicantumkan karena harus mengikuti versi program yang terpasang di alat.

6.4 Kaitan tiap tahap dengan aspek medis

Tahap Yang dilakukan sistem Kaitan medis
Rekam PPG di ujung jari Mengukur perubahan cahaya akibat perubahan volume darah PPG menggambarkan kondisi hemodinamik tiap denyut
Estimasi tekanan darah Fitur bentuk gelombang masuk ke GPR Tekanan tinggi memperbesar stres mekanis dan mempercepat kerusakan endotel
Estimasi glukosa Fitur PPG masuk ke MLP Hiperglikemia mengaktifkan sel endotel dan mempercepat pembentukan lesi
Estimasi kolesterol Fitur waktu antardenyut dan rasio luas masuk ke MLP LDL teroksidasi berperan dalam pembentukan sel busa dan plak
Rekam suara di karotis Chestpiece meneruskan suara ke mikrofon Penyempitan membuat aliran turbulen sehingga dapat menimbulkan bruit
Filter 20–800 Hz Mempertahankan rentang frekuensi bruit Menurut dokumentasi model, pita paling informatif berada di 100–500 Hz
Cari fase sistolik Menandai siklus jantung pada rekaman Bruit dinilai pada fase sistolik, yaitu saat jantung memompa darah
Klasifikasi XGBoost Menggabungkan semua parameter Aterosklerosis dipengaruhi banyak faktor yang saling berinteraksi
Status dan rekomendasi Membandingkan angka dengan pedoman Mengarahkan pengguna ke pola hidup sehat atau pemeriksaan lanjut

Asal durasi rekaman

  • Suara 8 detik dan 8 kHz: mengikuti rekaman data latih bruit.
  • PPG 120 detik: sama dengan durasi rekaman 2 menit pada dataset kolesterol, dan data primer tim merekam 12 segmen 10 detik. Belum ada data Alasan resminya perlu dikonfirmasi tim model.

6.5 Ambang keputusan model

Skor model diubah menjadi ya atau tidak memakai ambang. Pada pengujian, ambang bruit 0,35 dan ambang aterosklerosis 0,677. Ambang berbeda dari ambang klinis di bagian 7C, karena ambang ini berlaku pada skor model, bukan pada angka kesehatan.

7Sumber data dan pedoman, serta hubungannya

Ini bagian yang paling sering tertukar. Ada empat jenis sumber dengan peran berbeda:

 (A) DATASET LATIH ------> melatih model AI
                                |
 (B) SENSOR SAAT PERIKSA ------> model AI ------> angka & klasifikasi
                                                        |
 (C) PEDOMAN KLINIS -----------------------------> label, status, rekomendasi

 (D) ALAT PEMBANDING ----> menguji seberapa dekat hasil ATEROSTOP dengan acuan

Cara mudah mengingat: dataset membuat model pintar, sensor memberi data orang yang diperiksa, pedoman membantu menafsirkan angka, dan alat pembanding menguji hasilnya.

A. Dataset untuk melatih model

Keluaran Model Sumber data Data latih Masukan Evaluasi
Tekanan darah GPR PulseDB (dari MIMIC-III dan VitalDB) 2.000 subjek, 2.020.050 window 47 fitur PPG + 2 demografi Data terpisah: 500 subjek, 481.970 window
Glukosa MLP VitalDB 2.046 subjek, 30.617 window 33 fitur PPG + 2 demografi Data terpisah: 362 subjek, 5.418 window
Kolesterol MLP Dataset Figshare 43 subjek, 775 window 2 fitur waktu antardenyut + 1 rasio luas sistolik-diastolik Nested cross-validation
Bruit Regresi logistik biner Rekaman stetoskop elektronik (Rekavandi dkk., 2025) 98 subjek, 390 rekaman 6 fitur spektral + 2 fitur keterdengaran Nested cross-validation
Aterosklerosis XGBoost Rekam medis dan USG Doppler pasien RSUD dr. Soedarso 34 subjek, 127 baris Tekanan darah, glukosa, kolesterol, bruit, mode glukosa Nested cross-validation

Window adalah potongan sinyal. Satu subjek bisa menghasilkan banyak window.

Slide presentasi juga mencantumkan Glukosa Rasio sebagai masukan XGBoost, sedangkan Laporan dan Artikel tidak menyebutnya. Belum ada data Arti fitur ini perlu dijelaskan tim model.

7A.1 Karakteristik dataset dan alasan pemakaiannya

Keluaran Karakteristik data Kenapa cocok Keterbatasan yang perlu diakui
Tekanan darah PulseDB, kumpulan sinyal yang sudah dibersihkan dari MIMIC-III dan VitalDB untuk menguji estimasi tekanan darah tanpa manset Subjek sangat banyak dan memang dibuat untuk tujuan yang sama Sumbernya pasien rumah sakit, bukan orang yang periksa mandiri
Glukosa VitalDB, data pasien bedah; PPG dipasangkan dengan hasil lab glukosa dalam jendela ±8 menit Ada sinyal PPG dan nilai lab pada waktu berdekatan, dalam jumlah besar Diukur di sekitar operasi. Dari 27.829 baris label, 7.417 lolos penyaringan
Kolesterol Dataset Figshare: 46 subjek (43 dipakai), usia 32–80 tahun, kolesterol 135–333 mg/dL, puasa 8–10 jam, istirahat 5 menit, rekam 2 menit Memasangkan PPG dengan kolesterol total, dan datanya terbuka Subjek sedikit. Sensornya LED 1.200 nm dan sekitar 50 Hz, berbeda dari MAX30105
Bruit Rekaman Rekavandi dkk.: 98 pasien DM tipe 2 (50 bruit, 48 tanpa bruit), 4 titik karotis, 8 kHz, 8 detik, pasien menahan napas Memiliki label bruit dan seimbang antarkelas Direkam dengan Littmann 3000. Labelnya pendengaran dokter, bukan USG
Aterosklerosis Rekam medis dan USG Doppler pasien RSUD dr. Soedarso: 34 subjek, 127 baris Data lokal dengan rujukan USG Doppler Jumlah kecil. Belum ada data Definisi label dan jumlah positif-negatif

Dua cara evaluasi yang dipakai

  • Subject-wise holdout: subjek uji dipisah penuh dari subjek latih. Tujuannya agar model tidak dinilai pada orang yang sudah pernah dilihatnya. Cara ini dipakai saat data banyak.
  • Nested cross-validation: data dibagi bergantian untuk latih dan uji, dengan pemilihan pengaturan di putaran dalam. Cara ini dipakai saat data sedikit agar semua data ikut terpakai tanpa menilai model dengan data latihnya sendiri.

Kenapa dataset berbeda dari Proposal? Proposal merencanakan dataset lain untuk tekanan darah dan glukosa. Dataset tekanan darah lama hanya punya 127 subjek dengan satu pengukuran per orang, dan hasil modelnya sangat lemah (R² sekitar 0,05), sehingga tim beralih ke PulseDB yang jauh lebih besar. Dataset glukosa lama hanya 23 subjek. Belum ada data Alasan resmi penggantian dataset glukosa dan bruit belum tertulis.

Kenapa data dari sensor lain tetap dipakai? Bentuk gelombang PPG sama-sama mencerminkan denyut, sehingga sinyal alat diolah mengikuti cara data latih. Namun sensor berbeda tetap bisa menurunkan ketepatan, dan inilah alasan Laporan menyarankan pengumpulan data primer.

B. Data saat pemeriksaan

Data Asalnya Dipakai untuk
Sinyal PPG Sensor MAX30105 Estimasi tekanan darah, glukosa, kolesterol
Suara karotis Chestpiece stetoskop, diteruskan lewat selang ke mikrofon SPH0645LM4HB Deteksi bruit
Umur dan jenis kelamin Profil, atau input di alat saat offline Disimpan bersama hasil; data demografi juga menjadi masukan model tekanan darah dan glukosa
Kondisi glukosa Dipilih di alat Masukan XGBoost dan penentu ambang glukosa di aplikasi

C. Pedoman klinis di aplikasi

Aplikasi membandingkan angka dari alat dengan ambang berikut. Angka yang bukan berasal dari pedoman ditandai sebagai ketentuan tim atau aplikasi.

Tekanan darah (mmHg)

Sumber: KMK No. HK.01.07/MENKES/303/2026, Tata Laksana Hipertensi Dewasa, Tabel 2 kolom Office BP (hlm. 9), yang mengutip ESC 2024. Aplikasi memeriksa dari atas ke bawah, dan kondisi pertama yang cocok yang dipakai.

Urutan Label Syarat Dasar
1 Darah Tinggi Berat Sistolik ≥180 atau diastolik ≥110 Kategori tambahan aplikasi, memakai batas yang juga disebut KMK
2 Darah Tinggi Sistolik ≥140 atau diastolik ≥90 Tabel 2: Hypertension
3 Rendah Sistolik <90 Catatan keamanan tim, bukan dari KMK
4 Meningkat Sistolik 120–139 atau diastolik 70–89 Tabel 2: Elevated BP
5 Normal Sistolik <120 dan diastolik <70 Tabel 2: Non-elevated BP

Tabel 2 hanya punya tiga kategori. Batas 180/110 di KMK muncul di hlm. 38–39 dalam konteks tindakan operasi, sehingga Darah Tinggi Berat jangan disebut sebagai kategori Tabel 2.

Glukosa darah (mg/dL)

Sumber: Pedoman Pengelolaan dan Pencegahan DM Tipe 2 Dewasa di Indonesia, PERKENI 2024, Tabel 3 (hlm. 7). Ambangnya mengikuti kondisi saat diperiksa. Di semua kondisi, hasil di bawah 70 berlabel Rendah. Ini ketentuan aplikasi, karena rentang normal PERKENI dimulai dari 70.

Kondisi Normal Label tengah Label tinggi Dasar
Puasa 70–99 Pre-Diabetes (GDPT): 100–125 Diabetes: ≥126 PERKENI
2 jam setelah makan 70–139 Pre-Diabetes (TGT): 140–199 Diabetes: ≥200 Angka TTGO PERKENI, dipakai sebagai pendekatan
Sewaktu 70–139 Waspada: 140–199 Perlu Konfirmasi: ≥200 ≥200 dari PERKENI; rentang di bawahnya batas skrining tim

Label Sewaktu sengaja tidak memakai kata Diabetes karena satu angka gula sewaktu belum cukup untuk menegakkan diagnosis. PERKENI mensyaratkan ≥200 disertai keluhan klasik, sedangkan alat tidak menanyakan keluhan itu. Ambang gula sewaktu masih menunggu konfirmasi dokter.

Kolesterol total (mg/dL)

Sumber: Panduan Pengelolaan Dislipidemia di Indonesia, PERKENI 2021, Tabel 3 (hlm. 6).

Hasil Label aplikasi Istilah PERKENI
<200 Normal Diinginkan
200–239 Borderline Sedikit tinggi (borderline)
≥240 Tinggi Tinggi

ATEROSTOP hanya memperkirakan kolesterol total. LDL, HDL, dan trigliserida ada di tabel yang sama, tetapi tidak diukur alat ini.

Bruit dan aterosklerosis tidak memakai ambang pedoman, karena hasilnya berasal dari model AI.

D. Alat pembanding saat pengujian

Parameter Pembanding
Tekanan darah Tensimeter ALAM SO4
Glukosa dan kolesterol Autocheck BE05014315
Bruit dan aterosklerosis USG Doppler GE HealthCare LOGIQ Totus

8Cara aplikasi membaca hasil

8.1 Dua keputusan yang berbeda

Keputusan Yang memutuskan Dasarnya
Ada indikasi aterosklerosis atau tidak Model AI di alat XGBoost, ditambah aturan tim: bruit terdeteksi selalu dianggap terindikasi
Angka parameter normal atau tidak Aplikasi Ambang pedoman klinis (bagian 7C)

Akibatnya seseorang bisa mendapat hasil Tidak Terindikasi tetapi tetap Waspada, misalnya model menyatakan tidak ada indikasi aterosklerosis sementara kolesterolnya 240 mg/dL.

8.2 Status di kartu Beranda

Aplikasi memeriksa kondisi berikut secara berurutan, dan kondisi pertama yang cocok yang dipakai:

Urutan Kondisi Judul kartu Badge Tindakan
1 Sinyal tidak layak baca (invalid) Hasil Belum Bisa Dibaca ULANGI PENGUKURAN Ulangi pemeriksaan
2 Model menyatakan ya (high) atau bruit terdeteksi Terindikasi Aterosklerosis PERLU EVALUASI Periksa ke dokter atau fasilitas kesehatan
3 Semua parameter normal Tidak Terindikasi Aterosklerosis NORMAL Pertahankan pola hidup sehat
4 Ada parameter di luar batas Tidak Terindikasi Aterosklerosis WASPADA Ikuti saran dan pantau lebih sering

Laporan menyebut tiga tingkat status tindak lanjut: normal, waspada, dan perlu evaluasi. Ulangi pengukuran adalah keadaan khusus ketika hasil belum bisa dinilai.

8.3 Contoh saran

Temuan Saran Prioritas
Hasil tidak valid Ulangi Pengukuran Tinggi
Terindikasi tanpa bruit Konfirmasi Indikasi Aterosklerosis Tinggi
Bruit terdeteksi Periksakan Pembuluh Darah Leher Tinggi
Tekanan darah sangat tinggi Segera Temui Dokter Tinggi
Tekanan darah meningkat Batasi Asupan Garam Harian Normal
Gula sewaktu ≥200 Konfirmasi dengan Pemeriksaan Gula Darah Puasa Normal
Kolesterol ≥240 Turunkan Lemak Jenuh dan Periksa Profil Lipid Tinggi
Semua normal Pertahankan Pola Hidup Sehat; Jaga Aktivitas Fisik 150 Menit per Minggu Rendah

8.4 Dasar penetapan jenis klasifikasi

Klasifikasi Dasarnya
Aterosklerosis ya/tidak Keluaran model XGBoost, dibandingkan dengan acuan USG Doppler saat pengujian
Bruit ya/tidak Keluaran regresi logistik biner, dengan data latih berlabel bruit
Label tekanan darah KMK 303/2026, Tabel 2 kolom Office BP
Label glukosa PERKENI 2024, Tabel 3, sesuai kondisi glukosa
Label kolesterol total PERKENI 2021 tentang dislipidemia, Tabel 3
Status Normal, Waspada, Perlu Evaluasi Status tindak lanjut di Laporan 4.1.2, disusun dari klasifikasi dan ambang klinis
Ulangi Pengukuran Keadaan khusus saat hasil belum bisa dinilai

Kenapa bruit otomatis dianggap terindikasi? Tinjauan pustaka Laporan menyebut bruit karotis dapat menjadi indikator awal aterosklerosis, sehingga aplikasi memilih sisi yang aman dan mengarahkan pengguna untuk konfirmasi. Belum ada data Pendapat dokter pendamping tentang aturan ini belum tercatat.

9Fitur aplikasi

Tempat Fitur Fungsi
Beranda Kartu hasil terakhir Klasifikasi aterosklerosis, status, tekanan darah, glukosa, kolesterol, bruit
Daftar langkah awal Memandu pembuatan profil dan pairing
Rekomendasi Analisis dan saran Ringkasan hasil, disclaimer skrining, dan saran tindak lanjut
Riwayat Daftar dan grafik Tren parameter per hari, minggu, atau bulan, serta detail tiap pemeriksaan
Pengaturan Kelola Profil Membuat, mengubah, dan memilih profil
Perangkat Terhubung Pairing, melihat status alat, memutuskan tautan
Export Data Mengekspor riwayat ke CSV lalu membagikannya
Sinkronisasi Offline Menautkan hasil offline ke profil
Bantuan, Tentang, Privasi Informasi penggunaan dan aplikasi
Otomatis Hasil real-time Hasil baru tampil tanpa perlu menarik data manual
Update OTA Memeriksa, mengunduh, memverifikasi, dan memasang APK baru

10Teknologi yang dipakai

Bagian Teknologi Kegunaan
Aplikasi Flutter dan Dart Membangun aplikasi Android
Riverpod Mengelola data dan keadaan layar
go_router Navigasi dan pembatasan halaman
supabase_flutter Login, baca/tulis data, dan langganan real-time
mobile_scanner Memindai QR
fl_chart Grafik riwayat
ota_update, package_info_plus Update aplikasi tanpa Play Store
path_provider, share_plus Menyimpan dan membagikan CSV
Cloud Supabase Auth Email, kata sandi, sesi login, dan OTP reset
PostgreSQL Database utama
Row-Level Security Membatasi data sesuai pemiliknya
Supabase Realtime (WebSocket) Mengabarkan perubahan data
Fungsi RPC di database Menjalankan pemeriksaan pairing di server
Supabase Storage Menyimpan APK dan version.json
Alat Raspberry Pi 4 Model B, Linux, Python Akuisisi, pemrosesan, inferensi, dan antarmuka alat
Scikit-learn, XGBoost Pengembangan model AI
MAX30105, SPH0645LM4HB, TFT LCD 3,5 inci Sensor dan layar sentuh

Dua jalur komunikasi yang perlu dibedakan:

  • HTTPS: untuk permintaan biasa, misalnya login, mengambil data, atau menyimpan data.
  • WebSocket: koneksi yang tetap terbuka agar server bisa langsung mengabarkan perubahan. Inilah yang membuat hasil terasa real-time.

11Semua angka waktu

Hal Waktu Sumber
Masa berlaku QR dan PIN 10 menit Laporan Akhir, migrasi database
Kunci setelah 5 kali PIN salah 60 detik Migrasi database
Rekam PPG 120 detik Laporan Akhir, Artikel
Rekam suara karotis 8 detik Laporan Akhir, Artikel
Rata-rata proses PPG 47,22 detik Laporan Akhir, Artikel
Rata-rata proses bruit dan aterosklerosis 26,22 detik Laporan Akhir, Artikel
Rekam + proses bila dijumlahkan Paling lama ±3 menit 21 detik Hitungan: 120 + 8 + 47,22 + 26,22 = 201,44 detik. Waktu nyatanya bisa lebih singkat karena sebagian proses dapat berjalan saat perekaman
Durasi pemeriksaan menurut laporan Kurang dari 5 menit Laporan Akhir
Uji simultan kedua sensor 30 detik Prosedur pengujian, bukan pemeriksaan normal
Alat dianggap online Sinyal terakhir maksimal 2 menit lalu Kode aplikasi
Cek ulang profil aktif sebagai cadangan real-time Setiap 30 detik Kode aplikasi

12Data dan keamanan

12.1 Tujuh tabel database

Tabel Isi Yang menulis
profiles Data profil pasien Aplikasi
devices Alat, pemilik, profil aktif Alat, aplikasi, dan fungsi pairing
device_pairings Riwayat proses pairing Fungsi pairing
measurements Sesi pemeriksaan dan statusnya Alat; aplikasi hanya menautkan hasil offline ke profil
health_results Nilai klinis dan hasil AI Alat; aplikasi hanya boleh mengubah profile_id
recommendations Saran Aplikasi; hanya boleh menambah
measurement_consents Catatan persetujuan pemeriksaan Bukan dari aplikasi; kode aplikasi tidak memakai tabel ini
 akun --< profil --< pemeriksaan --- hasil --< rekomendasi
 akun --< alat   --< pemeriksaan

Tanda --< berarti satu ke banyak. Satu pemeriksaan hanya boleh memiliki satu hasil, sehingga unggah ulang tidak menggandakan data.

12.2 Lapisan keamanan

Mekanisme Fungsinya
Login dan sesi JWT Memastikan siapa pengguna yang mengakses
Row-Level Security Pengguna hanya bisa mengakses data miliknya
PIN dan token disimpan dalam bentuk hash Nilai aslinya tidak tersimpan di database
Batas percobaan PIN dan masa berlaku Mempersulit tebak-tebakan dan pemakaian kode lama
Tolak pengambilalihan alat Alat milik akun lain tidak bisa diambil lewat pairing
Aplikasi tidak bisa menulis nilai klinis Angka klinis hanya datang dari alat
SHA-256 pada file update Memastikan APK yang diunduh utuh

12.3 Etik dan data pribadi

  • Etik: penelitian memperoleh persetujuan KEPK RSUD dr. Soedarso, No. 056/RSUD/KEPK/VI/2026.
  • Data kesehatan sensitif: data tersimpan dengan pembatasan akses per pemilik, tetapi aplikasi ini masih prototipe.
  • Yang belum dibangun di aplikasi: alur persetujuan pemeriksaan, karena aplikasi tidak memakai tabel measurement_consents, serta pemisahan riwayat saat alat berpindah pemilik.
  • Uji keamanan: logbook mencatat pengujian keamanan sistem pada 16 Agustus 2026. Belum ada data Hasilnya tidak tertulis di Laporan.

13Hasil pengujian

Sensor

Pengujian Hasil
MAX30105 (50 rekaman) Sampling 191,36 Hz (95,68% dari target 200 Hz), tanpa flatline/clipping, SQI 0,967, CV IBI 0,082
SPH0645LM4HB Durasi 7,997 detik, tanpa flatline, clipping 0,000125%, RMS 0,0151
Akuisisi simultan (30 detik) Kesesuaian interval puncak 96,70%, selisih interval 0,011 detik, variasi jeda 0,093 detik

Semua angka ini menilai kualitas perekaman, bukan akurasi klinis:

Angka Artinya Bukan berarti
95,68% Pencapaian sampling terhadap target Akurasi tekanan darah atau deteksi penyakit
SQI 0,967 Bentuk antardenyut sangat mirip menurut metode penilaian Akurasi klinis 96,7%
CV IBI 0,082 Variasi jarak antardenyut relatif terhadap rata-ratanya Jarak antardenyut 0,082 detik
Clipping 0,000125% Sangat sedikit sampel mencapai batas amplitudo digital Akurasi 99,999875%
RMS 0,0151 Rekaman memiliki amplitudo dan tidak kosong Bukti mutu klinis suara
96,70% Kecocokan interval puncak kedua sensor Akurasi diagnosis

Estimasi (35 subjek, 149 pasang pengukuran per parameter)

Parameter MAE RMSE Bias
Sistolik (mmHg) 9,83 11,79 +4,52
Diastolik (mmHg) 14,11 17,82 -11,20
Glukosa (mg/dL) 18,52 24,63 -5,67
Kolesterol (mg/dL) 23,98 30,42 -9,21

MAE adalah rata-rata besar selisih. Sistolik MAE 9,83 berarti rata-rata hasilnya meleset sekitar 10 mmHg dari tensimeter. Bias menunjukkan kecenderungan: positif berarti cenderung lebih tinggi, negatif berarti cenderung lebih rendah.

Klasifikasi (5 subjek, 25 pemeriksaan per model)

Model Recall Specificity Precision Accuracy F1 AUC
Bruit 0,8 0,8 0,5 0,8 0,615 0,85
Aterosklerosis 0,8 0,8 0,5 0,8 0,615 0,825

Confusion matrix aterosklerosis: TP = 4, FN = 1, FP = 4, TN = 16.

  • Recall 0,8: dari 5 pemeriksaan positif, 4 tertangkap.
  • Specificity 0,8: dari 20 pemeriksaan negatif, 16 benar.
  • Precision 0,5: dari 8 hasil positif, 4 benar. Inilah alasan hasil positif harus dikonfirmasi.

Penerimaan masyarakat

Survei 175 responden menghasilkan indeks penerimaan 89,72%, kategori sangat tinggi. Skor tertinggi ada pada kepuasan dan penerimaan (91,50%), dan terendah pada kenyamanan dan kesesuaian (88,29%). Indeks ini dihitung dari skor: 12.561 ÷ (175 × 20 × 4 = 14.000) × 100%. Jadi artinya bukan 89,72% orang setuju. Survei menunjukkan penerimaan pengguna, bukan akurasi model atau keselamatan klinis. Instrumennya valid dan reliabel: korelasi item 0,354–0,570 (di atas r kritis 0,148) dan Cronbach's alpha 0,876.

Yang bisa dihitung juri dari lampiran

Angka di bawah adalah hitungan tim dari Lampiran 3.4 dan dokumentasi model, tidak tertulis di Laporan. Tujuannya agar tim tidak kaget kalau ditanya.

Dibandingkan menebak rata-rata referensi (pembanding ini sedikit menguntungkan tebakan, karena rata-ratanya baru diketahui setelah uji)

Parameter MAE alat MAE menebak rata-rata Korelasi r R²
Sistolik 9,83 8,97 0,14 -0,30
Diastolik 14,11 9,19 0,08 -1,49
Glukosa 18,52 19,08 0,29 -0,01
Kolesterol 23,98 21,69 0,11 -0,38

Pola lain yang terlihat

  • Prediksi mengumpul: 90 dari 149 prediksi sistolik berada di 117–121, dan 77 dari 149 prediksi diastolik berada di 54–57.
  • Nilai tinggi belum tertangkap: ada 23 referensi diastolik ≥90 (prediksi tertinggi 84), 21 referensi glukosa ≥126 (prediksi tertinggi 123,4), dan 20 referensi kolesterol ≥200 (prediksi tertinggi 187). Tidak ada referensi sistolik ≥140.
  • Standar AAMI (rata-rata selisih ≤5, SD ≤8): sistolik lolos rata-rata selisih (4,52) tetapi SD-nya 10,92. Diastolik belum lolos keduanya.
  • Klasifikasi: kelima hasil positif berasal dari satu subjek, dan empat positif palsu berasal dari dua subjek. Prediksi bruit dan aterosklerosis sama pada 25 dari 25 pemeriksaan, sehingga metriknya identik.
  • Laporan Kemajuan ke Akhir: data 46 pasang Kemajuan adalah 46 pasang pertama Laporan Akhir, dengan inisial yang berbeda. MAE sistolik membaik dari 12,91 ke 9,83, sedangkan diastolik, glukosa, dan kolesterol memburuk dari 11,57, 15,22, dan 19,17 menjadi 14,11, 18,52, dan 23,98.
  • Saat pengembangan: model bruit memiliki AUC 0,70–0,715, recall 0,74, dan specificity 0,50. Dokumentasi kolesterol mencatat MAE 38,87 berbanding 42,00 kalau menebak konstan. Versi model kolesterol final perlu dikonfirmasi.

Cara menjawab yang disarankan

"Prototipe ini sudah membuktikan bahwa seluruh alur berjalan terpadu, dari perekaman sampai aplikasi. Ketepatan individualnya memang belum memadai, terutama karena model dilatih dari sensor dan populasi yang berbeda. Karena itu hasilnya kami sebut estimasi skrining yang perlu dikonfirmasi, dan langkah berikutnya adalah melatih ulang dengan data dari sensor alat ini serta menguji pada subjek yang lebih banyak."

14Batasan yang harus dijelaskan dengan jujur

  1. Skrining, bukan diagnosis. Hasil positif perlu konfirmasi klinis.
  2. Subjek uji klasifikasi masih sedikit. Hanya 5 subjek, jadi generalisasinya belum bisa disimpulkan.
  3. Rentang kesesuaian masih lebar. Contohnya kolesterol memiliki LoA -66,23 sampai +47,82 mg/dL. Satu hasil individual belum bisa menggantikan alat ukur klinis.
  4. Diastolik cenderung lebih rendah dari alat pembanding, dengan bias -11,2 mmHg.
  5. Data latih bukan berasal dari sensor alat ini. Karena itu laporan menyarankan pengumpulan data primer.
  6. Belum tersertifikasi sebagai alat kesehatan. Pengujian klinis yang lebih luas masih perlu dilakukan.
  7. Berhasil memproses data tidak sama dengan terbukti akurat. Sinyal yang bagus dan model yang berjalan belum membuktikan ketepatan klinis.
  8. Estimasi belum menangkap nilai tinggi dengan baik. Prediksi cenderung mengumpul di sekitar nilai tertentu (lihat bagian 13).
  9. Kasus positif pada uji klasifikasi sangat sedikit. Lima pemeriksaan positif berasal dari satu subjek.
  10. Label bruit data latih berbeda dari acuan uji. Data latih memakai pendengaran dokter, sedangkan uji memakai USG Doppler.

15Pertanyaan yang mungkin muncul

Kenapa memakai cloud, bukan Bluetooth?

Alat dan HP tidak perlu berdekatan atau berada di jaringan yang sama. Data juga tersimpan terpusat, dan riwayat tetap ada walau HP diganti.

Kalau internet mati, apakah alat tetap bisa dipakai?

Bisa. AI berjalan di alat, dan hasilnya disimpan lokal untuk diunggah saat internet tersedia.

Kenapa AI tidak dijalankan di HP atau cloud?

Agar pemeriksaan bisa berjalan tanpa internet dan tidak bergantung pada spesifikasi HP.

Apakah rekomendasi dibuat AI?

Tidak. AI menghasilkan estimasi dan klasifikasi di alat. Rekomendasi berasal dari aturan tetap berbasis pedoman klinis.

Kenapa hasil bisa Tidak Terindikasi tetapi Waspada?

Karena dua penilaiannya berbeda. Model menilai indikasi aterosklerosis, sedangkan status Waspada muncul saat ada angka di luar ambang pedoman.

Bagaimana kalau bruit terdeteksi tetapi model menyatakan tidak?

Aplikasi tetap menampilkan Terindikasi. Sesuai aturan tim, bruit selalu dianggap terindikasi dan aplikasi memilih sisi yang lebih aman.

Bagaimana kalau sinyal jelek?

Quality gate memeriksa kelayakan data, dan kegagalan tidak boleh dianggap hasil normal. Bila hasil ditandai tidak valid, aplikasi hanya menyarankan pengulangan dan tidak menilai angkanya.

Apakah sensor langsung membaca glukosa dan kolesterol?

Tidak. Sensor merekam sinyal PPG, program menghitung fiturnya, lalu model memperkirakan nilainya. Karena itu hasilnya disebut estimasi.

Kenapa kolesterol bisa gagal padahal gelombangnya terlihat bagus?

Program harus menemukan titik acuan secara konsisten untuk menghitung fitur. Titik itu bisa gagal ditemukan, atau nilai fiturnya berada di luar persyaratan model. Hal ini tidak otomatis berarti pasien sakit atau sensor rusak. Penyebab pastinya perlu dilihat dari log program.

Kenapa uji sensornya 30 detik, sedangkan pemeriksaan 120 detik dan 8 detik?

Uji 30 detik merekam kedua sensor bersamaan untuk menilai konsistensi waktunya. Pemeriksaan normal tetap berurutan: PPG 120 detik, lalu suara 8 detik.

Kenapa tidak ada di Play Store?

ATEROSTOP masih prototipe. Distribusinya memakai APK dan update OTA dari Supabase Storage, dengan verifikasi SHA-256.

Apakah data pasien aman?

Data dibatasi dengan login dan Row-Level Security. Satu hal yang perlu diperhatikan: saat alat dipakai bergantian dan berpindah pemilik, riwayat alat ikut terbaca oleh pemilik baru.

Ambang 2 jam setelah makan berasal dari mana?

Angka 140–199 dan ≥200 di PERKENI adalah kriteria TTGO, yaitu gula darah 2 jam setelah minum larutan glukosa 75 gram di laboratorium. Aplikasi memakai angka yang sama untuk 2 jam setelah makan biasa karena belum ada ambang khusus untuk kondisi itu di tabel yang diacu. Jadi ini pendekatan, dan hasilnya tetap skrining yang perlu dikonfirmasi.

Ambang gula sewaktu berasal dari mana?

PERKENI hanya menetapkan gula sewaktu ≥200 disertai keluhan klasik sebagai kriteria diabetes. Rentang di bawahnya tidak diatur, jadi tim memakai batas skrining sendiri, yaitu 70–139 Normal dan 140–199 Waspada. Angka 139 dan 140 mengikuti batas TTGO sebagai pendekatan, bukan kategori PERKENI untuk gula sewaktu. Karena alat tidak menanyakan keluhan klasik, hasil ≥200 hanya diberi label Perlu Konfirmasi.

Apa itu API di sistem ini?

Pintu resmi untuk meminta layanan Supabase, seperti login, baca dan tulis data, pemeriksaan pairing, kabar real-time, dan unduh file update. Rinciannya ada di bagian 3.1.

Kenapa tidak membuat server sendiri?

Supabase sudah menyediakan login, database, hak akses, real-time, dan penyimpanan file. Untuk prototipe, tim bisa fokus ke alat dan aplikasi tanpa merawat server sendiri.

Apakah alat bisa dipakai tanpa aplikasi?

Bisa. Mode offline berjalan di alat dan hasilnya tampil di layar. Aplikasi dibutuhkan untuk riwayat, rekomendasi, dan pengelolaan profil.

Berapa harga alatnya?

Harga jual belum ditetapkan. Komponen prototipe dari dana Belmawa kira-kira Rp4,4 juta menurut Lampiran 1, belum termasuk biaya yang didanai kampus dan biaya produksi. Belum ada data Angka resmi perlu disepakati tim.

Katanya tidak perlu tenaga ahli, apakah orang awam bisa menempatkan chestpiece dengan benar?

Layar alat dan Buku Panduan memandu pengguna, dan quality gate menolak rekaman yang tidak layak. Namun ketepatan penempatan oleh orang awam belum diuji secara khusus. Maksud "tidak perlu tenaga ahli" adalah alatnya bisa dioperasikan sendiri, sedangkan penilaian hasilnya tetap perlu konfirmasi ke tenaga kesehatan.

Precision 0,5 berarti separuh hasil positif salah. Apakah bisa diterima?

Pada skrining, positif palsu masih bisa dikonfirmasi lewat pemeriksaan lanjutan, sedangkan kasus yang terlewat lebih berisiko. Karena itu hasil positif selalu diarahkan ke dokter. Angka ini juga berasal dari sampel yang sangat kecil, jadi belum bisa digeneralisasi.

Kenapa hasil orang yang sama bisa berubah antarpemeriksaan?

Rekaman dipengaruhi posisi sensor, gerakan, dan suara sekitar. Pada uji klasifikasi, hasil subjek yang sama memang bisa berbeda. Karena itu penempatan sensor dan filter untuk gangguan gerak masih perlu disempurnakan.

Kenapa model AI dilatih dengan data yang bukan dari alat ini?

Pada tahap prototipe, tim belum memiliki data sensor sendiri dalam jumlah cukup, sehingga memakai data terbuka yang tervalidasi. Uji lapangan menunjukkan ketepatannya masih perlu ditingkatkan, dan Laporan menyarankan pengumpulan data primer.

Bagaimana perlindungan data pasien menurut aturan?

Data dibatasi login dan Row-Level Security, dan penelitian sudah lolos etik. Untuk penggunaan luas, alur persetujuan dan pemisahan riwayat saat alat berpindah pemilik masih perlu dibangun agar sesuai UU Perlindungan Data Pribadi (UU 27/2022).

Hasil di layar aplikasi pada slide itu hasil siapa?

Itu hasil demo untuk memperlihatkan tampilan aplikasi saat hasil terindikasi. Hasil pengujian ada di Laporan Akhir.

16Menyamakan penjelasan saat presentasi

Laporan Akhir dan Artikel Ilmiah sudah dikumpulkan dan tidak berubah lagi, jadi yang kita pertahankan adalah isi dokumen itu. Bagian ini hanya menyamakan cara menjelaskan beberapa hal, agar jawaban tim seragam. Saat menjelaskan, gunakan kolom Jelaskan seperti ini.

Sumber Tertulis Jelaskan seperti ini
Laporan Kemajuan 4.1.2 Status risiko kardiovaskular tiga tingkat Istilah versi lama. Sekarang klasifikasi aterosklerosis + 3 status tindak lanjut
Laporan 4.3.1, slide 9 Tanpa bergantung tenaga kesehatan, tidak memerlukan tenaga ahli Bisa dioperasikan sendiri, tetapi hasilnya tetap perlu konfirmasi
Slide 34, Laporan Lampiran 2.9 Telah didaftarkan paten sederhana Status di portal "Terdaftar", diajukan 1 September 2026. Jangan disebut sudah terbit
Slide 16 LOQIQ Totus Yang benar LOGIQ Totus
Laporan 4.2 "menentukan tingkat risiko kesehatan" Sebut "klasifikasi aterosklerosis" agar sama dengan aplikasi
Artikel, Desain Hardware Pi "mengatur komunikasi data dengan aplikasi" Komunikasi berjalan melalui Supabase, bukan langsung

Kalau ditanya sumber ambang klinis: Laporan Akhir menyebut pedoman Kemenkes dan PERKENI tanpa tahun, sedangkan Artikel hanya menyebut "ambang klinis". Jawab dengan nama pedoman, tabel, dan halaman di bagian 7C. Kalau juri menanyakan kenapa pedoman itu tidak ada di Daftar Pustaka, akui saja bahwa memang belum tercantum, lalu tunjukkan sumber lengkapnya.

17Potensi sistem

17.1 Manfaat

Untuk Manfaat
Masyarakat Skrining awal yang noninvasif dan cepat sebelum ada keluhan, dengan riwayat per anggota keluarga
Layanan primer dan kader Satu alat portabel untuk memeriksa beberapa parameter dan menyaring siapa yang perlu dirujuk
Tenaga kesehatan Riwayat dan ekspor CSV sebagai informasi tambahan saat konsultasi
Penelitian Dasar pengembangan dan pengumpulan data dari sensor sendiri

17.2 Potensi penerapan

  • Fasilitas kesehatan tingkat pertama, seperti puskesmas (Artikel).
  • Pemantauan mandiri sehari-hari (Artikel). Buku Panduan juga menyasar pengguna umum, petugas puskesmas, kader kesehatan, dan keluarga di rumah.
  • Daerah dengan internet terbatas, karena pemeriksaan tetap berjalan offline dan hasil diunggah belakangan.
  • Komersialisasi melalui kerja sama dengan IBT UNTAN (slide 31). Belum ada data Bentuk dan tahap kerja samanya belum tertulis.

17.3 Perbandingan dengan alat yang ada

Sumber: slide 8.

Aspek DSA NIVA USG Doppler ATEROSTOP
Sifat Invasif Noninvasif Noninvasif Noninvasif
Fungsi Gold standard Early screening Gold standard Early screening
Portabilitas Rendah Sedang Sedang Tinggi
Penggunaan Butuh tenaga kesehatan Butuh tenaga kesehatan Butuh tenaga kesehatan Mudah dan praktis
Biaya Sangat tinggi Tinggi Tinggi Ekonomis
Prinsip kerja Fluoroskopi sinar X PPG dan cuff sensor Gelombang ultrasonik PPG dan akustik bruit
Durasi 1–3 jam 5–10 menit 15–30 menit Kurang dari 5 menit

Belum ada data Harga DSA, NIVA, dan USG Doppler, serta sumber angka durasinya, belum tersedia.

17.4 Keunggulan dan kekurangan

Keunggulan Kekurangan saat ini
Noninvasif dan portabel Belum bisa menggantikan USG Doppler atau alat ukur klinis
Menggabungkan PPG dan akustik dalam satu alat Ketepatan estimasi individual belum memadai
AI berjalan di alat, tetap bisa dipakai offline Waktu proses puluhan detik di Raspberry Pi
Riwayat dan rekomendasi per profil Uji klasifikasi baru 5 subjek
Bisa dioperasikan sendiri dengan panduan layar Ketepatan penempatan sensor oleh orang awam belum diuji
Biaya komponen relatif rendah Belum tersertifikasi; baterai 2.000 mAh belum diuji daya tahannya

17.5 Tahapan setelah PKM

Isi tahap 1–4 berasal dari Laporan 5.2, sedangkan urutannya adalah saran penyusun materi.

Tahap Kegiatan Tujuan
1 Pengumpulan data primer dari sensor alat Data latih mewakili kondisi pemakaian nyata
2 Filter adaptif untuk gangguan gerak, lalu latih ulang model Meningkatkan ketepatan
3 Custom PCB dan casing lebih kecil Lebih tahan dan lebih ringkas
4 Uji klinis dengan lebih banyak subjek dan kasus patologi vaskular Menilai generalisasi
5 Standarisasi, sertifikasi, dan izin edar alat kesehatan Syarat dipakai luas. Persyaratan rincinya perlu dicek ke regulator
6 Hilirisasi dan produksi bersama IBT UNTAN Komersialisasi

Yang sudah berjalan: uji awal pada 13 rekaman data primer tim, pengajuan paten sederhana, dan draf artikel ilmiah.

17.6 Ide pengembangan software

Bagian ini ide, belum ada di aplikasi. Jangan disampaikan sebagai fitur yang sudah jadi.

  • Dasbor untuk puskesmas atau kader, agar banyak pasien bisa dipantau.
  • Alur persetujuan pemeriksaan di aplikasi dan pemisahan riwayat saat alat berpindah pemilik.
  • Menampilkan rentang perkiraan, bukan hanya satu angka.
  • Pengiriman model AI baru ke alat lewat internet.
  • Rilis ke Play Store dan integrasi dengan rekam medis elektronik setelah alat tersertifikasi.

18Skenario demo

Langkah Yang ditunjukkan Yang dijelaskan
1 Login dan pilih profil di aplikasi Multiprofil, hasil tidak tercampur
2 Pairing QR dan PIN Kenapa perlu dua-duanya
3 Pilih mode dan kondisi glukosa di alat Tiga kondisi glukosa dan ambangnya
4 Rekam PPG dan suara Sinyal apa yang diambil dan kaitan medisnya
5 Hasil di layar alat dan aplikasi Sinkron lewat Supabase, bukan koneksi langsung
6 Rekomendasi dan riwayat Berasal dari aturan pedoman, bukan AI generatif

Cadangan

  • Internet di lokasi mati: jalankan mode offline, lalu jelaskan alur sinkronisasinya.
  • Waktu terbatas: pemeriksaan penuh butuh sekitar 3 menit 21 detik, jadi siapkan hasil demo yang sudah tersimpan.
  • Alat bermasalah: siapkan video demo.
  • Sinyal gagal: jelaskan bahwa quality gate memang bertugas menolak rekaman yang tidak layak.

19Bagian yang masih butuh bahan

Kebutuhan Bagian Tanya ke
Arti Glukosa Rasio 7A Yanto
Definisi label aterosklerosis dan jumlah positif-negatif pada 127 baris 7A.1 Yanto, Detti
Fitur dan metrik pengembangan model kolesterol versi final 13 Yanto
Metrik data uji terpisah tekanan darah dan glukosa, serta jumlah sampel GPR final 7A, 13 Yanto
Alasan resmi penggantian dataset glukosa dan bruit dari Proposal 7A.1 Yanto
Alasan resmi durasi PPG 120 detik 6.4 Yanto
Jumlah titik rekam suara di alat dan instruksi menahan napas (model dirancang untuk 4 titik) 6.4, 7A.1 Dustin
Cara kunci alat disimpan di Raspberry Pi 3.1 Dustin atau pemegang kode Pi
Perfusion index alat setelah perbaikan 13 Dustin
Daya tahan baterai 17.4 Dustin
Hasil pengujian keamanan sistem 16 Agustus 2026 12.3 Dustin, Yanto
Angka resmi biaya alat dan harga jual 15, 17.3 Dustin, Indra Juan
Harga DSA, NIVA, USG Doppler dan sumber durasinya 17.3 Juan, Detti
Bentuk kerja sama dengan IBT UNTAN 17.2 Yanto, Indra Juan
Pendapat dokter tentang aturan bruit otomatis terindikasi 8.4 Detti
Apakah seluruh 175 responden survei mencoba alat 13 Detti, Indra Juan

20Daftar sumber

Topik Sumber
Rencana awal, anggaran awal, dan pembagian tugas Proposal ATEROSTOP
Perbandingan alat, alur penggunaan, dan keberlanjutan Slide presentasi ATEROSTOP
Karakteristik dataset dan hasil pengembangan model Dokumentasi dataset dan model tim
Angka tambahan di bagian 13 Hitungan tim dari Lampiran 3.4 Laporan Akhir
Hasil, model, dataset, pengujian Laporan Akhir dan Artikel Ilmiah ATEROSTOP
Prinsip sensor, sampling, filter, quality gate Panduan Memahami dan Menjelaskan ATEROSTOP dari tim alat. Panduan ini berasal dari dokumentasi dan salinan kode lokal, bukan pemeriksaan langsung Raspberry Pi yang menyala
Pedoman klinis KMK No. HK.01.07/MENKES/303/2026; PERKENI 2024 (DM Tipe 2); PERKENI 2021 (Dislipidemia). Rinciannya di bagian 7C
Label parameter, status, rekomendasi, real-time, sinkronisasi offline, update OTA Kode aplikasi ATEROSTOP versi 1.7.7
Pairing dan keamanan Migrasi database Supabase ATEROSTOP