EST. 2026 — บันทึกงานเซิร์ฟเวอร์จริง SYSADMIN · SECURITY · AI · DIRECTADMIN เล่มที่ 01
THE SYSADMIN ALMANAC
หน้าหลัก / แท็ก / IoT
IoT

#IoT

12 บทความ
Hardware / IoT
ไม่มีมิเตอร์ kWh แต่อยากรู้ค่าไฟรายวัน คิดจากกระแสที่วัดได้
Hardware

ไม่มีมิเตอร์ kWh แต่อยากรู้ค่าไฟรายวัน คิดจากกระแสที่วัดได้

บันทึกการแปลงค่ากระแสจากหัววัด CT ให้กลายเป็นหน่วยไฟและค่าไฟรายวันแบบแยกช่วงเวลา ตั้งแต่สูตรกำลังไฟสามเฟส จังหวะการอ่านที่เป็นส่วนหนึ่งของสูตร การข้ามช่วงไฟดับ ไปจนถึงการแยกช่วง peak กับ off-peak ด้วยเลขคณิตบน epoch และตารางสรุปรายวันที่ทำให้หน้าเว็บเร็วขึ้นเจ็ดเท่า

#energy#power-meter#electrical#modbus
อ่าน 10 นาที·15 ต.ค.
อ่านค่าจากอุปกรณ์ Modbus ที่ไม่รู้ว่าเป็นตัวอะไร พิสูจน์ก่อนตีความ
Hardware

อ่านค่าจากอุปกรณ์ Modbus ที่ไม่รู้ว่าเป็นตัวอะไร พิสูจน์ก่อนตีความ

บันทึกการไล่หาอุปกรณ์บนบัส RS485 ที่ไม่มีเอกสาร ตั้งแต่กวาด baud กับ address ทีละชุด ไปจนถึงการพิสูจน์ว่า register ตัวไหนมีค่าจริงตัวไหนตาย และบทเรียนว่าการเดาชนิดอุปกรณ์จากรูปแบบตัวเลขอย่างเดียวทำให้ตีความผิดได้ยาวเป็นเดือน

#modbus#rs485#serial#iot
อ่าน 11 นาที·14 ต.ค.
time-series เป็น JSON โตวันละ 50 MB ย้ายลงคอลัมน์โดยไม่แก้ dashboard
Linux

time-series เป็น JSON โตวันละ 50 MB ย้ายลงคอลัมน์โดยไม่แก้ dashboard

เก็บค่าที่อ่านจากอุปกรณ์ทั้งเฟรมเป็น JSON array วินาทีละแถว ผ่านไปสองสัปดาห์ตารางโต 183 MB ที่ปลายทางและ 625 MB บนเซิร์ฟเวอร์ พร้อมกับ JSON_EXTRACT ที่ทำ index ไม่ได้ — วิธีย้ายไปเก็บเป็นคอลัมน์ int แล้วให้ API ประกอบ array คืนแบบ sparse เพื่อไม่ให้ dashboard รู้ตัวสักบรรทัด

#mariadb#mysql#migration#performance
อ่าน 10 นาที·11 ต.ค.
แจ้งเตือนถี่เกินเท่ากับไม่ได้แจ้ง จูนบอทให้คนอ่านจริง
Linux

แจ้งเตือนถี่เกินเท่ากับไม่ได้แจ้ง จูนบอทให้คนอ่านจริง

วันเดียว 28 เหตุการณ์กลายเป็น 56 ข้อความ และ 57 เปอร์เซ็นต์ของทั้งหมดเป็นการเตือนซ้ำทุก 30 นาที บทความนี้ว่าด้วยการแยกชั้นผู้รับ การรวมรอบที่ซ้อนกัน สถานะที่รอดจากการรีสตาร์ต และเหตุผลที่ห้ามใส่ keepalive กับ session ของแอปแชต

#monitoring#alerting#bot#logging
อ่าน 9 นาที·5 ต.ค.
ดักโปรโตคอลเครื่องพิมพ์ฉลากบลูทูธจาก btsnoop แล้วสั่งพิมพ์เอง
Linux

ดักโปรโตคอลเครื่องพิมพ์ฉลากบลูทูธจาก btsnoop แล้วสั่งพิมพ์เอง

เครื่องพิมพ์ฉลากบลูทูธที่มีแต่แอปบนมือถือ ต่อเข้าระบบตัวเองไม่ได้ ผมเลยเปิด HCI snoop log บนมือถือของตัวเอง ลอก HCI/ACL/L2CAP/RFCOMM ออกทีละชั้นด้วย parser Python สั้นๆ แล้วเทียบกับไลบรารีโอเพนซอร์สจนอ่านคำสั่งออก และสั่งพิมพ์เองได้จากสคริปต์

#bluetooth#ble#python#reverse-engineering
อ่าน 9 นาที·25 ส.ค.
อ่าน uptime อุปกรณ์ที่ไม่มี SNMP/SSH/API ด้วย TCP timestamp
Network

อ่าน uptime อุปกรณ์ที่ไม่มี SNMP/SSH/API ด้วย TCP timestamp

กล้อง IP เครื่องคุมประตู และอุปกรณ์ฝังตัวจำนวนมากไม่มีทั้ง SNMP SSH และ API ให้ถาม uptime แต่ถ้ามันตอบ TCP timestamp มาด้วย เราอ่านเวลาบูตของมันได้จากนอกบ้านโดยไม่ต้อง login เลยสักครั้ง

#networking#monitoring#linux#python
อ่าน 7 นาที·20 ส.ค.
เครื่องในโรงงานหลัง NAT ขึ้นคลาวด์ ด้วย push snapshot + คิวคำสั่ง
Network

เครื่องในโรงงานหลัง NAT ขึ้นคลาวด์ ด้วย push snapshot + คิวคำสั่ง

เครื่องงานจริงอยู่ใน LAN หลัง NAT ไม่มี public IP แต่เจ้าของอยากดูข้อมูลบนเว็บคลาวด์และแก้ข้อมูลจากมือถือให้ลงไปถึงเครื่องใน — ทำได้โดยไม่เปิดพอร์ตไม่ตั้ง VPN ด้วย push snapshot + คิวคำสั่งแก้ + ack แบบ idempotent

#automation#networking#nat#api
อ่าน 10 นาที·9 ส.ค.
อนุมานจังหวะ defrost ห้องเย็นจากความชันอุณหภูมิ ไม่ง้อเซนเซอร์ความชื้น
Linux

อนุมานจังหวะ defrost ห้องเย็นจากความชันอุณหภูมิ ไม่ง้อเซนเซอร์ความชื้น

ห้องเย็นรีดน้ำวุ้นเส้นไม่มีเซนเซอร์ความชื้นสักตัว แต่ frost ที่เกาะคอยล์ทำให้ความชันการลดอุณหภูมิ (dT/dt) ราบลงเสมอ บทความนี้ใช้สมการ lumped-capacitance กับ time-constant τ จับ frost แล้วสั่ง defrost แบบ demand ด้วย Python จริง พร้อมคำนวณ COP ของ R404A และน้ำที่รีดออกต่อรอบ

#refrigeration#iot#monitoring#python
อ่าน 10 นาที·22 ก.ค.
เล่นกล้อง AI reCamera + gimbal: cross-compile RISC-V + CAN + Node-RED
Linux

เล่นกล้อง AI reCamera + gimbal: cross-compile RISC-V + CAN + Node-RED

reCamera คือกล้อง AI บนชิป RISC-V ที่วางอยู่บนแกน brushless สองแกน สั่งหมุนผ่าน CAN bus ได้ละเอียดระดับ 0.01 องศา บทความนี้ไล่ตั้งแต่ cross-compile ภาษา C สำหรับ riscv64 musl, scp ขึ้น device, โครงสร้าง CAN frame ที่คุมมอเตอร์, อ่าน encoder 15-bit กลับมา, การหาศูนย์มอเตอร์ด้วยกระแส, ไปจนถึง Node-RED dashboard + PID + auto-track และไฟล์ STP พิมพ์เคส 3D

#recamera#iot#automation#python
อ่าน 10 นาที·21 ก.ค.
ต่อเครื่องชั่ง RS-232 Toledo ผ่าน Bluetooth อ่านด้วย PowerShell
Linux

ต่อเครื่องชั่ง RS-232 Toledo ผ่าน Bluetooth อ่านด้วย PowerShell

ต่อเครื่องชั่งดิจิทัล TWT-01 ที่มีแต่พอร์ต RS-232 เข้าพีซีผ่านตัวแปลง Bluetooth BT578 แล้วอ่านน้ำหนักเรียลไทม์ด้วย PowerShell — ไล่ตั้งแต่จับคู่ Bluetooth หา COM port จาก MAC แกะ frame ของ Toledo Continuous 18 ไบต์ ไปจนถึงกับดัก null byte กับ scale auto-sleep ที่เจอจริงตอนใช้งาน

#serial#windows#automation#iot
อ่าน 8 นาที·20 ก.ค.
อ่านมิเตอร์ 3 เฟส DTSU666 ด้วย Raspberry Pi ผ่าน Modbus RS485
Linux

อ่านมิเตอร์ 3 เฟส DTSU666 ด้วย Raspberry Pi ผ่าน Modbus RS485

บันทึกการต่อ DTSU666 Smart Power Sensor เข้ากับ Raspberry Pi ผ่าน RS485 อ่านค่าไฟ 3 เฟสจากหลายมิเตอร์ด้วย Modbus RTU decode float 32-bit ให้ถูก แล้วเก็บลง SQLite/MySQL ก่อนส่งออก MQTT กับ REST API พร้อมบั๊กค่าติดลบที่ผมเจอเอง

#modbus#rs485#iot#dtsu666
อ่าน 11 นาที·19 ก.ค.
อ่าน Modbus RTU ผ่าน gateway RS485 ให้ไม่ได้ค่าผี — บทเรียนจากงานจริง
Linux

อ่าน Modbus RTU ผ่าน gateway RS485 ให้ไม่ได้ค่าผี — บทเรียนจากงานจริง

ต่อมิเตอร์/เซนเซอร์ Modbus RTU หลายตัวบนบัส RS485 ผ่าน serial-to-Ethernet gateway แล้วเจอค่าผี ค่าเพี้ยน หรืออุปกรณ์ที่ไม่มีอยู่จริงโผล่มา — เพราะ transparent gateway คือ RTU-over-TCP ที่ต้องประกอบเฟรม+CRC เอง และต้อง validate ทุก reply บทความนี้สรุปกฎที่ได้จากการทำจริง

#modbus#rs485#iot#python
อ่าน 9 นาที·15 ก.ค.