AI Comparison

ModelRole/NicknameStrengthsBest Use Cases
GPT‑4oThe GeneralistFast, multimodal (text, image, audio)Brainstorming, casual chats, mixed-media inputs
GPT‑03The ProfessorIn-depth analysis, well-sourced responsesAcademic/legal research, complex scenarios
GPT‑4.5The WordsmithCreative writing, vivid languageStorytelling, marketing copy, polished prose
GPT‑4.1The CoderCoding assistance, handles long transcriptsDev workflows, code reviews, technical documentation
o4‑mini / o4‑mini‑highBudget/Task‑SpecificFast, cost-efficient, accurate for specific tasksBulk classification, light logic puzzles, targeted querying
GPT‑03 ProThe OracleDeep reasoning, highly analyticalCritical decision‑making, detailed research tasks

Layout PCB dengan Laser Engraving EasyEda K40 Whisperer

Siapkan PCB

  1. Potong PCB sesuai ukuran yang dibutuhkan.
  2. Gosok PCB dengan stainless pencuci piring atau schottbrite hingga mengkilap.
  3. Bersihkan dengan IPA atau alkohol dan usap dengan tisue untuk menghilangkan serpihan dan minyak.
  4. Semprot dengan pilox warna hitam 1 atau 2 usap
  5. Biarkan mengering atau dijemur atau dioven jika punya

Siapkan Layout PCB

  1. Buka EasyEda dan pilih File, export, SVG. Sesuaikan layer mana yang akan dibuat. Misalkan untuk layer atas.
  2. Buka file SVG dengan inkscape, dan hapus bagian yang tidak diperlukan. Semisal background putih.
  3. Tekan Ctrl + Shift + R untuk memotong dan menampilkan bagian yang ada gambarnya saja.
  4. PENTING: Perbaiki ukuran, tambahkan offset 0.2mm. ALASAN: sinar laser memiliki diameter 0.2mm, sehingga setiap pinggir bagian akan terpotong 0.1mm. Misalnya lebar jalur 0.4mm jika tidak diperbaiki ukuran maka akan terpotong kanan 0.1mm dan kiri 0.1mm, sehingga ukuran setelah dipotong laser menjadi 0.2mm saja.
  5. Tambahkan 0.2mm untuk setiap jalur.
  6. Simpan sebagai SVG

Buka K40 Whisperrer

  1. Buka file SVG
  2. Pastikan invert raster, karena yang akan ‘dibakar yang hitam’, padahal yang hitam yang akan digunakan. Oleh karena itu pastikan invert raster sudah dipilih
  3. Matikan Mirror Design
  4. Atur kecepatan Raster engrave 250 mm/s dan power 25% untuk laser 40Watt.
  5. Taruh PCB sesuai dengan point laser di pojok kanan atas, beri perekat bila perlu.
  6. Klik Raster Engrave

Cetak PCD dengan SLA Printer 3D

Siapkan layout dan buat menjadi STL (Cek pos sebelumnya)

Buka Chitubox dan buka file STL. Pastikan ukuran sudah tepat, biasakan buat batas PCB, agar mudah untuk scaling. Jika sudah pas ukurannya, lanjutkan buka halaman machine setting.

Saat di halama machine setting, ubah Bottom exposure time menjadi 30. Jika kurang maka bisa jadi pothoresist tidak mengeras. Jika berlebihan, bisa jadi ukuran jalur jadi melebar. Silahkan coba-coba, karena tiap printer bisa jadi beda.

Slice dan save untuk menyimpan file

Selanjutnya copy ke Flash untuk dicetak di Printer 3D. Sebelum mencetak, ambil semua base / bantalan dan tempat resin. setelah itu pilih file dan cetak.

Pastikan PCB Sudah dipasangi photoresist dan taruh PCB di printer. Tambahkan pemberat semisal buku untuk menempelkan photoresist ke layar.

PCB layout ke model 3D (.stl)

Buka EsayEDA dan pilih menu File -> Export -> SVG Source

Klik tombol Download dan simpan file SVGnya

Buka file SVG di inkscape atau coreldraw atau vector editing software yang lainnya. Pilih gambar dengan Select, klik kanan dan pilih Ungroup, agar dapat menghapus yang tidak diperlukan. (Ctrl+Shif+G)

Hapus gambar yang tidak diperlukan dengan tombol Delete, hingga tersisa gambar layoutnya saja. Jika masih ada yang menyatu, lakukan Ungroup Lagi sampai dapt dipilih 1 per-satu.

Ubah stroke menjadi path dengan memilih semua stroke, lalu tekan Ctrl + Alt + C atau lewat menu Path -> Stroke to Path.

Tekan Ctrl + Shift + R untuk menjadikan frame gambar tepat yang dibutuhkan saja. Kemudian simpan.

Buka blender atau 3D editor lain, pilih impor -> Scalable Vector Graphics -> Lalu pilih file SVGnya

Klik salah sati Line di bagian file SVG, misalkan line 16 lalu klik menu View -> Frame selected

Ketik A (Edit -> Select ALL), lalu Ctrl + J (Object -> Join) untuk menjadikan 1 semua yang tadi sudah di-Ungroup di inkscape.

Piilih gambar hijau, pilih bagian geometri dan isikan nilai Extrude, misalnya 0.0001m

Export ke .stl

Create Graph from Text 2

C++ code

#include <iostream>
using namespace std;

int main() {
    int number;

    // Input from user
    cout << "Masukkan sebuah bilangan: ";
    cin >> number;

    // Check positive, negative, or zero
    if (number > 0) {
        cout << number << " adalah bilangan positif." << endl;
    } else if (number < 0) {
        cout << number << " adalah bilangan negatif." << endl;
    } else {
        cout << number << " adalah nol." << endl;
    }

    // Check odd or even
    if (number % 2 == 0) {
        cout << number << " adalah bilangan genap." << endl;
    } else {
        cout << number << " adalah bilangan ganjil." << endl;
    }

    return 0;
}

eraser.io syntax

KlasifikasiBilangan {
  mulai[shape:oval]
  masukkan bilangan[shape:parallelogram]
  cek apakah bilangan GE 0 [shape:diamond]
  cek apakah bilangan EQ 0 [shape:diamond]
  cetak nol [shape:parallelogram]
  cetak positif [shape:parallelogram]
  cetak negatif [shape:parallelogram]
  cek apakah bilangan mod 2 EQ 0 [shape:diamond]
  cetak genap [shape:parallelogram]
  cetak ganjil [shape:parallelogram]
  selesai[shape:oval]
}

mulai>masukkan bilangan>cek apakah bilangan GE 0
cek apakah bilangan GE 0>cek apakah bilangan EQ 0:ya
cek apakah bilangan EQ 0>cetak nol:ya
cek apakah bilangan EQ 0>cetak positif:tidak
cek apakah bilangan GE 0>cetak negatif:tidak
cetak nol>cek apakah bilangan mod 2 EQ 0
cetak positif>cek apakah bilangan mod 2 EQ 0
cetak negatif>cek apakah bilangan mod 2 EQ 0
cek apakah bilangan mod 2 EQ 0>cetak genap:ya
cek apakah bilangan mod 2 EQ 0>cetak ganjil:tidak
cetak genap>selesai
cetak ganjil>selesai

Kata ganti benda atau “dhamir” (ضمير).

EnglishBahasaArabic (Masculine)Arabic (Feminine)
Itini (sesuatu yang sudah disebutkan)هو (huwa)هي (hiya)
Thisini (sesuatu yang dekat, baru disebutkan)هذا (hādhā)هذه (hādhihi)
Thatitu (sesuatu yang jauh, baru disebutkan)ذلك (dhālika)تلك (tilka)
Thoseitu jamakأولئك (ulā’ika)أولئك (ulā’ika)
Theseini jamakهؤلاء (hā’ulā’)هؤلاء (hā’ulā’)
Itu matahari(M): ذلك الشمس (dhālika ash-shams)
Itu bulan(M): ذلك القمر (dhālika al-qamar)
Itu langit(F): تلك السماء (tilka as-samā’)
Itu bumi(F): تلك الأرض (tilka al-arḍ)
Ini siang(M): هذا النهار (hādhā an-nahār)
Ini malam(F): هذه الليلة (hādhihi al-layla)

Standard I2S vs LSBJ (EIAJ)

in esp8266audio library

ESP32:

out = new AudioOutputI2S();
out->SetLsbJustified(true);

based on AudioOutputI2S.cpp:

      else if (lsb_justified)
      {
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 2, 0)
        comm_fmt = (i2s_comm_format_t) I2S_COMM_FORMAT_STAND_MSB;
#else
        comm_fmt = (i2s_comm_format_t) (I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_LSB);
#endif
      }
      else
      {
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 2, 0)
        comm_fmt = (i2s_comm_format_t) (I2S_COMM_FORMAT_STAND_I2S);
#else
        comm_fmt = (i2s_comm_format_t) (I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB);
#endif
      }

ESP8266:
Remove I2STMS in file: C:\Users\USER\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\cores\esp8266\core_esp8266_i2s.cpp

// I2SRMS, I2STMS = 1-bit delay from WS to MSB (I2S format), I2SRMS: Receiver, I2STMS: Transmitter
//i2sc_temp |= I2SRF | I2SMR | I2SRMS | I2STMS | (div1 << I2SBD) | (div2 << I2SCD);
i2sc_temp |= I2SRF | I2SMR | I2SRMS | (div1 << I2SBD) | (div2 << I2SCD);