Upgrade HomeLab NAS เปลี่ยนจาก JMB575 เป็น ASMedia ASM1166

อัปเกรด HomeLab NAS เปลี่ยนจาก JMB575 เป็น ASMedia ASM1166

ช่วงนี้มีโอกาสอัปเกรด HomeLab ที่บ้าน โดยเริ่มจาก NAS ที่ใช้ ZFS เป็นระบบจัดเก็บข้อมูลหลัก โดยตัดสินใจเปลี่ยนการ์ด PCI-E SATA มาใช้ ASMedia ASM1166 เพื่อหวังให้ระบบมีความเสถียรมากขึ้น และรองรับการใช้งานระยะยาวได้ดีกว่าเดิม ก่อนหน้านี้ใช้การ์ด PCI-E SATA JMB575 สำหรับเชื่อมต่อ HDD ทั้งหมด 4 ลูก โดยแบ่งเป็น ZFS RAIDZ1 จำนวน 3 ลูก สำหรับเก็บข้อมูลหลัก และอีก 1 ลูก แยกเป็น Backup Pool เพื่อทำ ZFS Replication จาก Pool หลักเป็นประจำ หลังจากใช้งานไปสักระยะ เริ่มพบว่า Performance ของ ZFS ลดลง โดยเฉพาะช่วงที่มีการอ่านเขียนข้อมูลจำนวนมาก ทำให้เกิด I/O Delay สูงขึ้น จึงเริ่มหาสาเหตุ และพบความผิดปกติจาก SATA Link ของการ์ด JMB575 จาก dmesg dmesg | grep "SATA link up" HDD บางลูกเชื่อมต่อด้วยความเร็วเพียง 1.5 Gbps ในขณะที่ลูกอื่นทำงานที่ 6.0 Gbps ...

July 18, 2026 · 2 min · 236 words · Teera
Config Frigate NVR ให้ใช้งาน NVIDIA GPU ผ่าน ONNX

Config Frigate NVR ให้ใช้งาน NVIDIA GPU ผ่าน ONNX

ต่อจากบล็อกก่อนหน้า ติดตั้ง NVIDIA Quadro P600 บน Proxmox เพื่อใช้กับ Container (CT) และ ติดตั้ง NVIDIA Container Toolkit เพื่อใช้งาน GPU ผ่าน Docker บล็อกนี้จะต่อยอดเข้าสู่การ config detectors ของ Frigate NVR เพื่อดึงพลัง Nvidia GPU มาใช้งานจริง โดยในเวอร์ชันปัจจุบันของ Frigate v0.16.2 การใช้ Nvidia GPU จะต้องผ่าน ONNX เท่านั้น! หมายเหตุ: 👉 ต้องใช้ Docker image ที่ลงท้ายด้วย -tensorrt เท่านั้น ตัวอย่างไฟล์ docker-compose.yml โดยใช้ image 0.16.2-tensorrt และกำหนด resources สำหรับ GPU ผ่าน Docker services: frigate: container_name: frigate restart: unless-stopped stop_grace_period: 30s image: ghcr.io/blakeblackshear/frigate:0.16.2-tensorrt deploy: resources: reservations: devices: - driver: nvidia count: 1 capabilities: [gpu] shm_size: 64mb cap_add: - CAP_PERFMON volumes: - /etc/localtime:/etc/localtime:ro - ./config:/config - ./storage:/media/frigate - type: tmpfs target: /tmp/cache tmpfs: size: 1000000000 ports: - 5000:5000 environment: - TZ=Asia/Bangkok ตัวอย่างไฟล์ /config/config.yml ที่ตั้งค่าให้ Frigate ใช้ detector แบบ ONNX พร้อมกับ hwaccel_args: preset-nvidia เพื่อให้รองรับการประมวลผลด้วย Nvidia GPU ...

November 29, 2025 · 1 min · 186 words · Teera
ติดตั้ง NVIDIA Container Toolkit เพื่อใช้งาน GPU ผ่าน Docker

ติดตั้ง NVIDIA Container Toolkit เพื่อใช้งาน GPU ผ่าน Docker

ต่อจากบล็อกก่อนหน้า ติดตั้ง NVIDIA Quadro P600 บน Proxmox เพื่อใช้กับ Container (CT) สำหรับบล็อกนี้ จะต่อยอดด้วยการติดตั้ง NVIDIA Container Toolkit เพื่อให้ Docker สามารถเรียกใช้งาน GPU ได้โดยตรง ติดตั้งเครื่องมือที่จำเป็น sudo apt update sudo apt install curl gpg -y เพิ่ม Repository ของ NVIDIA curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \ && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \ sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list ติดตั้ง Toolkit sudo apt update sudo apt install nvidia-container-toolkit -y ตั้งค่า Runtime ของ Docker ให้รู้จัก GPU ...

November 11, 2025 · 2 min · 251 words · Teera
ติดตั้ง NVIDIA Quadro P600 บน Proxmox เพื่อใช้กับ Container (CT)

ติดตั้ง NVIDIA Quadro P600 บน Proxmox เพื่อใช้กับ Container (CT)

ได้การ์ดจอมือสอง NVIDIA Quadro P600 มาในงบเพียง 900 บาท จะนำมาใช้รันงาน AI ขนาดเล็ก ในบล็อกนี้ จะไม่ใช้วิธี GPU Passthrough เพื่อเชื่อมต่อกับ VM แต่จะเลือกใช้งานผ่าน Container (CT) บน Proxmox แทน เพราะวิธีนี้สะดวกกว่าและสามารถแชร์การ์ดจอให้ หลาย CT ใช้งานพร้อมกัน ได้ง่ายกว่า ตรวจสอบว่าระบบเห็นการ์ดจอ แล้วหรือยัง lspci | grep NVIDIA 01:00.0 VGA compatible controller: NVIDIA Corporation GP107GL [Quadro P600] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GP107GL High Definition Audio Controller (rev a1) ติดตั้งเครื่องมือที่จำเป็นสำหรับคอมไพล์ไดรเวอร์ NVIDIA apt install -y dkms build-essential pve-headers-$(uname -r) ติดตั้ง NVIDIA Driver สำหรับ Linux x64 👉 download driver ...

November 5, 2025 · 2 min · 356 words · Teera
ลอง YOLOv9 กับ Frigate เบา เร็ว แม่นยำ

ลอง YOLOv9 กับ Frigate เบา เร็ว แม่นยำ

จากบล็อกก่อนหน้า ลองเปลี่ยน Frigate มาใช้ YOLO-NAS แทน MobileNet รอบนี้มาลองทดสอบ YOLOv9 กันบ้าง ว่าประสิทธิภาพและความเร็วต่างจาก YOLO-NAS แค่ไหน Model mAP (val) Params FLOPs Latency Reference YOLO-NAS S 47.5 19.0 M 66.9 G 3.21 ms 👉 YOLO-NAS YOLOv9-S 46.8 7.1 M 26.4 G ~3.0 ms 👉 YOLOv9 สรุป: ขนาดทดสอบ: 640×640 YOLO-NAS S แม่นยำกว่าหน่อย (47.5 vs 46.8%) YOLOv9-S เบากว่าเยอะ (Params และ FLOPs ลดลงกว่าครึ่ง) Latency ใกล้เคียงกัน แต่ YOLOv9-S เหมาะกับ Edge Device มากกว่า ตัวอย่าง docker-compose.yml ...

October 24, 2025 · 2 min · 277 words · Teera
เพิ่ม SSD ทำ ZFS Mirror สำหรับ Boot Disk บน Proxmox

เพิ่ม SSD ทำ ZFS Mirror สำหรับ Boot Disk บน Proxmox

ช่วงแรกที่ติดตั้ง Proxmox + ZFS ใช้ดิสก์เพียงตัวเดียว (M.2 SATA) สำหรับบูตระบบ พอใช้งานไปสักพักเลยอยากเพิ่ม SSD SATA อีกตัว เข้ามาทำงานแบบ ZFS Mirror เพื่อเพิ่มความทนทาน กรณีดิสก์ตัวใดตัวหนึ่งเสีย ระบบก็ยังสามารถบูตและใช้งานต่อได้ตามปกติ 💡 หมายเหตุ: /dev/sdb = ดิสก์ใหม่ (ที่จะเพิ่มเข้ามาทำ mirror) /dev/sdc = ดิสก์บูตเดิม ก่อนอื่นเช็กให้แน่ใจว่าดิสก์ใหม่ว่างและไม่มีพาร์ทิชันสำคัญ lsblk /dev/sdb /dev/sdc จากนั้นก็ทำการคัดลอก partition table ของดิสก์เดิมไปยังไฟล์ชั่วคราว sfdisk -d /dev/sdc > /tmp/parts แก้ไขไฟล์ /tmp/parts เพื่อลบสิ่งที่ไม่จำเป็น ลบบรรทัด last-lba ลบ UUID ทุกอัน แก้ไขขนาดพาร์ทิชันให้เป็น size= - ...

October 19, 2025 · 1 min · 142 words · Teera
ลองเปลี่ยน Frigate มาใช้ YOLO-NAS แทน MobileNet

ลองเปลี่ยน Frigate มาใช้ YOLO-NAS แทน MobileNet

ต่อจากบล็อก Config Detector ด้วย OpenVINO ตอนนั้นใช้ model MobileNet ซึ่งเป็นตัว default ที่มากับ Frigate NVR อยู่แล้ว ทำงานได้ดี แต่ยังมีข้อจำกัดเล็กน้อย เวลาเจอวัตถุขนาดเล็ก ลองเปลี่ยนมาใช้ YOLO-NAS เพราะโมเดลตัวนี้ขึ้นชื่อเรื่องการ detect วัตถุขนาดเล็กได้แม่นยำกว่า และยังคงทำงานได้เร็วใกล้เคียงกับ MobileNet ตัวอย่าง docker-compose.yml services: frigate: container_name: frigate restart: unless-stopped stop_grace_period: 30s image: ghcr.io/blakeblackshear/frigate:0.16.1 shm_size: 64mb cap_add: - CAP_PERFMON group_add: - "104" devices: - /dev/dri/renderD128:/dev/dri/renderD128 volumes: - /etc/localtime:/etc/localtime:ro - ./config:/config - ./storage:/media/frigate - type: tmpfs target: /tmp/cache tmpfs: size: 1000000000 ports: - 5000:5000 environment: - TZ=Asia/Bangkok ต้องเตรียมโมเดล YOLO-NAS S สามารถ export ออกมาเป็นไฟล์ yolo_nas_s.onnx ได้ง่าย ๆ ผ่าน Google Colab สามารถนำไปใช้เป็น detector ได้ทันที ...

October 5, 2025 · 1 min · 198 words · Teera
Config Detectors ของ Frigate ด้วย Intel GPU

Config Detectors ของ Frigate ด้วย Intel GPU

ในการใช้งาน Frigate NVR ส่วนที่ถือว่าเป็นหัวใจสำคัญที่สุดก็คือการ config detectors เพื่อให้ AI Object Detection ทำงานได้อย่างมีประสิทธิภาพ แต่ในช่วงแรกนั้น hardware ที่รองรับยังมีไม่มาก โดยตัวที่ได้รับความนิยมมากที่สุดคือ Google Coral อย่างไรก็ตาม หากใครที่ใช้เครื่องที่มี Intel GPU อยู่แล้ว ก็สามารถนำมาใช้งานกับ Frigate ได้เช่นกัน ซึ่งถือว่าเป็นการต่อยอดจากบล็อกก่อนหน้า การ Config ffmpeg hwaccel ใน Frigate หมายเหตุ: ต้องทำการ Passthrough Intel GPU เข้าเครื่อง LXC Container ก่อน 1. Config Detector ด้วย OpenVINO การกำหนด detector ในไฟล์ config.yml โดยใช้ OpenVINO อ้างอิง: OpenVINO Detector detectors: ov: type: openvino device: GPU 2. Config Model การตั้งค่า model ที่ใช้สำหรับ object detection โดย OpenVINO คือ SSDLite MobileNet v2 ...

September 12, 2025 · 2 min · 292 words · Teera
การ Config ffmpeg hwaccel ใน Frigate

การ Config ffmpeg hwaccel ใน Frigate

ต่อจากบล็อกก่อนหน้า การ Config Frigate NVR ให้บันทึก 24/7 จะเลือกใช้ hwaccel_args: auto ในส่วนของ ffmpeg เพื่อความสะดวก ปล่อยให้ Frigate เช็คเองว่าจะเลือกใช้ hardware acceleration ตัวไหน ในบล็อกนี้จะมาแชร์วิธีการ config Frigate ให้ใช้ Intel VAAPI โดยตรง ซึ่งเป็น hardware acceleration ที่มาพร้อม GPU ของ Intel แทบจะทุกรุ่น วิธีนี้ช่วยลดการใช้ CPU ลงอย่างชัดเจน และทำให้การประมวลผล video stream ลื่นขึ้นมาก 1. ตรวจสอบว่าเครื่องมี Intel GPU หรือไม่ lspci | grep -i vga 00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06) จะเห็นประมาณ Intel Corporation HD Graphics ... แสดงว่า มี Intel GPU ...

September 6, 2025 · 2 min · 333 words · Teera
การ Config Frigate NVR ให้บันทึก 24/7

การ Config Frigate NVR ให้บันทึก 24/7

ต่อจากบล็อกก่อนหน้า วิธีติดตั้ง Frigate NVR v0.16.0 หลังจากติดตั้งเสร็จ ขั้นตอนสำคัญต่อมาคือการทำความเข้าใจไฟล์ config.yaml ซึ่งเป็นหัวใจหลักของการใช้งาน Frigate NVR ในบล็อกนี้ เราจะโฟกัสที่การ ตั้งค่า Frigate ให้ทำงานเฉพาะโหมด Record 24/7 โดยไม่เปิดการตรวจจับวัตถุ (Object Detection) เหมาะสำหรับใครที่ต้องการใช้งาน Frigate เป็น NVR บันทึกวิดีโออย่างเดียว วิธี Configuration Frigate NVR หมายเหตุ: สำหรับ Frigate v0.16.0 หน้าตั้งค่า: Settings → Configuration Editor ไฟล์: config/config.yaml อ้างอิง: Full configuration 1. go2rtc อ้างอิง: go2rtc v1.9.9 go2rtc ใช้สำหรับ Re-stream กล้องเพื่อนำไปใช้งานกับ Frigate NVR และจัดการเรื่อง protocols ต่าง ๆ ทำให้ Frigate สามารถดึงสตรีมได้อย่างราบรื่น แก้ไขไฟล์ docker-compose.yml เพื่อให้ WebRTC ทำงานได้ เปิดพอร์ต 8555 ทั้ง TCP และ UDP ...

August 29, 2025 · 2 min · 355 words · Teera