1 poin oleh GN⁺ 2025-10-16 | 1 komentar | Bagikan ke WhatsApp
  • Modul ADS1115 ADC murah memberikan fungsi yang hampir sama dengan spesifikasi resmi
  • Fitur programmable gain amplifier memungkinkan presisi pengukuran tinggi bahkan pada rentang tegangan yang sangat kecil
  • Pada beberapa board murah ditemukan kasus galat pada kecepatan pengukuran dan akurasi
  • Dengan menerapkan algoritme kalibrasi sederhana, hasil yang cukup presisi bisa diperoleh
  • Ada kemungkinan part murah tersebut merupakan cacat produksi atau produk tiruan, tetapi untuk penggunaan dasar tidak menimbulkan masalah besar

Eksperimen performa nyata ADS1115 ADC murah

Gambaran umum

  • Dalam pekerjaan embedded, biasanya digunakan ADC (analog-to-digital converter) yang tertanam di mikrokontroler
  • ADC bawaan murah dan cepat, tetapi jumlah bit pengukuran efektifnya (ENOB) biasanya hanya di kisaran 8~9 bit
  • Baru-baru ini dilakukan pengujian modul ADS1115 dari Texas Instruments(TI)
  • ADS1115 adalah ADC eksternal yang menyediakan akurasi hingga 16 bit

Fitur utama ADS1115

  • Dengan fitur perluasan dynamic range, pengukuran tegangan kecil bisa dilakukan hingga 20 kali lebih rinci
  • Melalui programmable gain amplifier (PGA), seluruh rentang pengukuran dapat diatur dari ±6.144 V hingga ±0.256 V
    • LSB minimum sekitar 7.8 μV (0.256 V ÷ 32768), sehingga perubahan yang sangat kecil pun dapat dideteksi
    • Dibandingkan ADC bawaan mikrokontroler konvensional (basis 3.3V, 9 ENOB) yang satu langkahnya sekitar 6mV, resolusinya jauh lebih tinggi
  • Penggunaan internal voltage reference menjadi keunggulan dibanding MCU seperti RP2040 yang memerlukan referensi analog eksternal

Isu harga dan lingkungan pengujian

  • ADS1115 memiliki selisih harga besar: sekitar $4 di Digikey dan $0.60 di LCSC untuk kuantitas 1.000 unit
  • Dibeli breakout board ADS1115 seharga $2.97 per unit dari Amazon (kemungkinan menggunakan komponen seharga $0.60)
  • Board mahal (asli) dari Adafruit juga dibeli untuk pengujian perbandingan tambahan

Proses pengujian nyata

  • Board murah diuji menggunakan I²CMini dan sumber tegangan DC presisi

  • Poin pemeriksaan utama:

    • Apakah beroperasi sesuai spesifikasi
    • Atau apakah komponen lain yang lebih murah dijual seolah-olah sebagai ADS1115
  • Hasil pengujian

    • Operasi dasar, output 16 bit, programmable gain amplifier, dan berbagai kecepatan sampling secara umum sesuai dengan datasheet TI
    • Saat input dihubungkan dalam differential mode, pengukuran selalu 0; saat diberi input 2.5V terukur dengan tepat; saat polaritas dibalik, nilai keluaran juga terbalik, sehingga tidak ada masalah pada operasi dasarnya

Akurasi pengukuran dan galat

  • Data Rate (kecepatan sampling): menurut spesifikasi TI, deviasi hingga ±10% diperbolehkan
    • Dalam mode 8 SPS, tiga board berjalan sedikit lebih lambat di kisaran 6.5~7 SPS
    • Satu board bekerja dengan timing yang sepenuhnya salah pada 300 SPS, sehingga dikeluarkan dari pengujian selanjutnya
  • Saat mengukur tegangan presisi (2.50067V), keluarannya 2.4883V, muncul galat sekitar 12mV/0.5% (lebih besar daripada spesifikasi resmi TI)
  • Setelah menerapkan algoritme kalibrasi linear sederhana pada mikrokontroler, galat membaik hingga di bawah 10 μV

Kesimpulan

  • Diduga komponen cacat atau komponen dengan spesifikasi di bawah produk asli telah masuk ke jalur distribusi murah untuk hobi
  • Pada dasarnya pengukuran yang cukup presisi tetap dimungkinkan, dan jika diberi kalibrasi perangkat lunak, tidak ada masalah besar untuk penggunaan nyata
  • Board asli dengan harga lebih tinggi akan diperoleh tambahan lalu diuji ulang dalam kondisi yang sama

Penutup

  • ADS1115 murah menawarkan efisiensi harga-performa yang cukup menonjol
  • Jika hanya menambahkan kalibrasi sederhana pada level hardware/firmware, akurasi praktis dapat diamankan
  • Perlu berhati-hati terhadap tempat pembelian dan kontrol kualitas untuk memeriksa isu seperti barang cacat

1 komentar

 
GN⁺ 2025-10-16
Opini Hacker News
  • Jika komponen murah dan komponen asli sama-sama diamplas halus lalu dibersihkan dengan isopropil dan dilihat di bawah mikroskop optik, perbandingannya jadi mudah; tanpa harus sampai ke marking yang bisa diidentifikasi atau lapisan logam pun, kemiripan dan perbedaan struktural pada die chip bisa langsung terlihat. Komponen klon biasanya menunjukkan perbedaan besar pada node proses, arsitektur, ukuran chip, dan sebagainya, karena umumnya hanya meniru fungsinya saja. Saya merekomendasikan metode pembongkaran low-tech dengan amplas, dan juga membagikan gambar terkait (gambar 1 / gambar 2)

    • Saya sudah beberapa kali melakukan pekerjaan seperti ini, terutama untuk menyelesaikan sengketa asal komponen. Sebagian besar paket epoksi cepat terlepas jika dilarutkan dalam asam sulfat/asam nitrat mendidih. Menurut pengalaman saya, kebanyakan kasus adalah relabeling sederhana, perubahan bin, atau penyamaran barang yang jelas gagal QC, dan itu sering dijadikan sampel. Ada juga video contoh dari beberapa tahun lalu (tautan video)

    • Belum tentu itu klon; seperti kata penulis asli, ada juga banyak kasus produk yang dinyatakan di bawah standar dalam proses manufaktur dikemas ulang lalu dilepas ke jalur distribusi umum.

    • Kalau di sini ada fitur tag, ini topik yang akan sangat disukai Ken Shirriff. Saya juga merekomendasikan blognya (righto.com).

  • Saya tidak setuju dengan klaim bahwa "murah dan relatif cepat, tetapi kualitasnya tidak terlalu bagus, dan meski spesifikasinya output 12/16-bit, effective number of bits (ENOB) hanya sekitar 8~9". Pada MCU modern, jika hal-hal seperti penyediaan tegangan referensi eksternal yang stabil dan mematikan subsistem chip yang tidak perlu diperhatikan, mendapatkan ENOB di atas 10-bit itu sangat mungkin. Tentu ADC tunggal tidak akan sebaik ADC standalone, tetapi untuk 90% kebutuhan ADC, performanya benar-benar cukup. Jika butuh bit yang lebih tinggi, desainnya memang memerlukan usaha lebih besar, tetapi penulis artikel tidak menyebut apa pun soal catu daya yang dipakai, noise MCU, atau pengelolaan RFI. Jadi sulit menilai apakah ini benar IC palsu dengan spesifikasi buruk, atau sekadar lingkungan eksperimennya penuh noise.

    • Jika dua GPIO disusun dalam topologi sigma-delta orde pertama dengan dua resistor eksternal, satu kapasitor, dan hysteresis dimatikan, hasilnya bisa menarik. Dengan RP2040 dan catu daya LDO, saya memakainya untuk pengukuran diferensial (satu kanal hanya melacak noise ambang), dan mendapatkan 16 ENOB pada 1kHz, bahkan ENOB lebih tinggi pada DC. Sangat penting memastikan tidak ada aktivitas periodik pada chip; misalnya, sleep dengan interval acak perlu dipakai untuk menyebarkan spektrum. USB pun bisa dipakai dengan noise di bawah -100dB. Akurasi DC belum saya uji, tetapi untuk penggunaan nonkritis dan presisi rendah seperti sensing jalur CC atau joystick analog dengan kanal GPIO serupa, ini cukup berguna.

    • Kedua pendapat itu bisa sama-sama benar. Penulis asli mungkin menulis dengan MCU murah sebagai wakil, sedangkan komentator ini tampaknya membayangkan MCU kelas lebih tinggi. ADC 12-bit pada RP2350 menurut spesifikasi memiliki 9.2 ENOB. Dengan melakukan decimate pada banyak sampel mungkin bisa lebih tinggi, tetapi lembar spesifikasinya memang mendukung klaim penulis (tautan dokumen resmi Raspberry Pi). MCU yang lebih murah seperti CH32V003 bahkan punya performa ADC yang lebih buruk. Sebaliknya, ada MCU seperti seri STM32H7 yang mencatat 13+ ENOB pada ADC 16-bit. Namun H7 harganya lebih dari 10 kali RP2350, jadi tidak sering disentuh para eksperimenis (catatan aplikasi ADC STM32H7).

    • Saya menguji beberapa board pengembangan STM32F103 dengan multimeter Siglent SDM3055 dan power supply Siglent SPD330X. ADC SAR 12-bit pada chip itu sangat dipengaruhi layout dan desain board. Sampel terburuk tetap memberi 10-bit, dan yang terbaik hampir menunjukkan efektivitas 12-bit. Ini tercapai tanpa penyesuaian perangkat lunak khusus. Saat komunikasi aktif, performanya memang kadang turun, tetapi selain itu tidak ada pengaruh noise yang berarti.

    • Saya sempat berencana memakai ADS1115 (asli) di proyek, tetapi akhirnya memilih STM32g071. Harganya lebih murah, saat itu lebih mudah didapat, dan lebih fleksibel. ADC pada seri STM32g/h belakangan ini jelas punya lebih sedikit faktor risiko di sisi hardware/software dibanding keluarga f103 lama.

    • Saya juga ingin menyoroti bagian yang mengatakan, "ADC pada mikrokontroler punya rentang tetap 3.3V sehingga 9 ENOB berarti sekitar selisih 6mV". Ini terdengar seolah semua MCU tidak punya tegangan referensi independen, padahal ada banyak MCU, termasuk dari NXP, yang mendukung tegangan referensi internal yang dapat diprogram.

  • Menanggapi pendapat bahwa "komponen murah kebanyakan adalah tiruan yang sangat bagus, atau barang gagal QC yang bocor ke jalur distribusi", sebagian besar chip palsu yang pernah saya lihat justru berasal dari ghost shift, yaitu produksi rahasia di luar jam kerja resmi. Namun saya menilai kemungkinan ghost shift atau barang gagal QC lebih kecil untuk TI, karena TI memproduksi semua produk analognya secara internal. Secara pribadi saya menganggap kemungkinan terbesarnya adalah ADS1015 yang diberi label ulang sebagai ADS1115.

    • Barang palsu yang pernah merugikan saya (FDTI, klon STM32, dan lain-lain) kebanyakan adalah tiruan langsung. Dibanding kelebihan stok, ghost shift, atau pengemasan ulang barang cacat, saya lebih sering menemui ini di ranah digital dan mixed-signal. Sebagai catatan, chip klon STM32 memiliki stack-die flash; karena proses flash tidak bisa dibuat sendiri, mereka menumpuknya secara terpisah, sehingga saat paket diamplas ada satu set bonding wire tambahan. Melalui bus ini, proteksi baca juga bisa dilewati.

    • Saya penulis postingannya, dan saya juga tahu bahwa kasus ADS1015 yang diberi label ADS1115 memang pernah dilaporkan. Jika ini ADS1015, output-nya akan terpotong di 12-bit, tetapi komponen yang saya uji jelas menghasilkan readout 16-bit.

  • Saya tertarik pada cerita dan latar belakang dunia ADC. Selama ini saya hanya pernah memakainya pada kecepatan lambat. Saya mulai dari MCP3208 (SPI), memakainya dengan 8 kanal dan 100K sampel/detik, tetapi karena terasa lambat saya beralih ke ADS7953. Chip itu punya 16 kanal dan 10 kali lebih cepat, jadi performanya jelas lebih baik. Namun pemrogramannya lebih sulit, dan kecepatan puncaknya hanya bisa dicapai jika input dipindai dalam urutan tetap. Bagi saya chip-chip ini terasa seperti mobil: ADS7953 seperti supercar, sedangkan MCP3208 seperti Toyota sederhana. Saya juga penasaran bagaimana masing-masing chip ADC mendapat tempat di pasar, seberapa luas dipakai, dan sejarah industrinya.

    • Saya pernah melihat proyek di CERN dengan ADC 12-bit yang mencapai kecepatan sampling puluhan GHz. Rahasianya adalah pemrosesan paralel. Beberapa unit SAR 12-bit yang berjalan di kelas MHz diduplikasi, lalu sinyal didistribusikan secara round-robin melalui multiplexer analog besar. Ini membutuhkan area chip yang sangat besar, tetapi memungkinkan kecepatan tinggi. Selain metode ekstrem seperti ini, ada juga flash ADC (wiki flash ADC) atau multislope ADC untuk presisi (tutorial multislope ADC). Saya juga penasaran pada sejarah dan cerita di baliknya.

    • Saya juga ingin menyebut AD9226. Memang hanya satu kanal, tetapi 12-bit dan bisa sampai 65MSa/s. Saya membelinya sekitar $12 di AliExpress dan memakainya untuk eksperimen decoding software video analog. Saat saya menggunakannya di sekitar 8-bit, 20MSa/s dengan Raspberry Pi Zero dan periferal SMI, bottleneck yang mengejutkan justru transfer data. Sebagai referensi, ini cara memanfaatkan SMI tersebut (tautan iosoft.blog).

    • Kecepatan 100K sampel/detik di dunia saya sudah termasuk sangat cepat. Di program PLC, menaikkan standar 2K sampel/detik menjadi 10K saja sudah dianggap performa yang sangat tinggi secara praktis.

    • ADC supercepat terlalu sulit ditangani langsung dengan mikrokontroler, jadi biasanya masuk wilayah FPGA. Data ADC harus diterima langsung oleh FPGA lalu diubah menjadi bus paralel agar MCU bisa menanganinya dengan lebih mudah, dan karena transfer sangat cepat menuntut banyak pin, pemrosesan mentah, dan DMA, ini terasa sulit secara praktis.

  • Berlawanan dengan klaim bahwa "ADC 12~16-bit hanya punya ENOB sekitar 8~9", metode konversi 1-bit yang dipakai pada SACD (ratusan ribu hingga jutaan sampel per detik) dapat mencapai dynamic range 120dB dan bandwidth sekitar ~100kHz. CD (PCM 16-bit) ada di 96dB dan 20kHz. Dari sudut kompleksitas hardware analog, konverter 1-bit/bitstream jauh lebih sederhana. ADC 16-bit bisa murah juga karena diproduksi massal. Dalam praktiknya, pendekatan menukar bit depth dengan laju sampling ini cukup menarik, mirip SSAA pada grafis 3D yang mengambil lebih banyak sampel piksel untuk menangkap informasi frekuensi tinggi (wiki 1-bit DAC, wiki Direct Stream Digital).

  • ADC seharga $3 itu tidak murah. ADC yang benar-benar murah adalah yang tertanam di MCU murah. TI juga sengaja menjual AES/ADC murah yang dibatasi pada 10/12-bit, tetapi linearitas nyatanya bisa lebih dari 16-bit. Biaya produksi barang cacat dan barang bagus hampir sama. Jika proses semikonduktornya sama dan desainnya kokoh, ADC murah pun tidak otomatis punya performa yang secara khusus lebih buruk.

  • LCSC bisa murah karena membeli dalam jumlah besar langsung dari TI dan pihak lain lalu menjual dengan margin rendah. Saya pernah melihat chip klon di LCSC, tetapi kebanyakan dijual dengan nama merek berbeda.

    • Saya sudah sering memesan banyak komponen dari LCSC, dan belum pernah mengalami masalah besar sekalipun.
  • Harga rendah tidak selalu berarti kualitas rendah. ADC presisi tinggi cukup mudah diwujudkan berkat teknik pemrosesan sinyal jika laju sampel tinggi tidak diperlukan, dan metode delta-sigma atau ramp ADC memungkinkan pengukuran presisi tinggi hanya dengan rangkaian pattern hold dan satu bit, meskipun butuh waktu. Tetapi jika Anda menginginkan flash ADC 16-bit 100MHz, harganya bisa sampai seperti harus menggadaikan rumah.

  • Sebagian besar perusahaan memiliki kebijakan harga per wilayah. Misalnya, langganan Spotify saya hanya sekitar 60% dari harga di AS. Industri elektronik juga punya daftar harga khusus untuk Tiongkok. Perlu diingat, harga listing resmi di Barat hanyalah batas atas maksimum; pada praktiknya, bahkan untuk proyek kecil pun Anda bisa mendapatkan diskon jika menghubungi sales secara langsung.

  • Pada kenyataannya, ADC seharga $3 bukanlah komponen yang sangat murah, dan di negara dengan biaya manufaktur lebih rendah harganya bisa jauh lebih murah lagi. Pada akhirnya yang penting adalah produk berfungsi benar saat diuji di pabrik, dan jika lolos syarat yang ditetapkan jig pengujian per produk, dalam praktik itu sudah cukup.

    • Pada board yang berisi puluhan atau ratusan komponen, komponen seharga $3 justru sering menjadi salah satu item termahal. Jika Anda ingin menjual produk jadi seharga $20, selisih ini sangat besar. Selain itu, jika data pabrikan bisa dipercaya, peralatan pengujian juga bisa dirancang jauh lebih sederhana dan murah. Misalnya, hanya sebagian sampel yang diuji ketahanan jangka panjangnya (kamera termal, environmental chamber, input berulang), dan jika TI menjamin -40~+125 derajat, maka sebagian besar kondisi batas bisa langsung dipercaya. Kita memang tidak bisa menguji 100% semua board dalam lingkungan nyata secara real-time, tetapi setidaknya penting untuk menyalakan dan memeriksa semua fungsi utama satu kali dalam pengujian di dalam board. Meski begitu, itu pun bukan berarti semua spesifikasi aktual telah diverifikasi sendiri.