ลองใช้งานเมนู Energy Home Assistant

สำหรับ Home Assistant ตั้งแต่เวอร์ชั่น 2021.8.0 จะมีการเพิ่มเมนูหลักด้านซ้าย โดยจะเป็นส่วนการแสดงผล Energy Dashboard ( demo ) หลังจากเปิดดูตัวอย่างของเขาอลังการมากๆ แต่สำหรับวันนี้ผมจะมาทดลองใช้งานแค่ส่วนของ Solar Panels เพื่อจะเป็นไอเดียนะ เริ่มต้นผมจะใช้วิธี integration ปลั๊กไฟ Sonoff S31 เข้าระบบ Home Assistant เพื่อจะใช้งานในส่วนของการวัดกำลังไฟฟ้า (Power) เชื่อมต่อ Sonoff S31 เข้าระบบ Home Assistant แล้วใช้ micro grid tie ในการผลิตไฟฟ้าจากแผงโซล่าเซลล์ นำมาเสียบกับปลั๊กไฟ Sonoff อาศัยหลักการความต่างศักย์ทางไฟฟ้า เพื่อให้ไฟไหลผ่านปลั๊ก Omniksol-SMP600 Micro Grid Tie สำหรับผู้เริ่มต้น เริ่มต้น Configuration ทำการแก้ไขไฟล์ configuration.yaml sensor: platform: integration source: sensor.sonoff_10012eed24_power name: Omnik SMP600 platform: integration ( อ่านเพิ่มเติม ) source: sensor.sonoff_10012eed24_power จะเป็น sensor กำลังไฟฟ้าจากปลั๊กไฟ Sonoff หน่วยเป็นวัตต์ (W) name: Omnik SMP600 ตั้งชื่อตามสะดวก โดยผมจะใช้ชื่อ micro grid tie Validate Configuration จากนั้น restart HA ...

August 21, 2021 · 1 min · Teera

เชื่อมต่อ Sonoff S31 เข้าระบบ Home Assistant

สำหรับวิธีการ integration อุปกรณ์ Sonoff เข้าระบบ Home Assistant สามารถทำได้หลายวิธี แต่วันนี้ผมจะมาแนะนำ Add-on: Sonoff LAN เหตุผลที่เลือกตัวนี้ เพราะว่าผมจะใช้ความสามารถ LAN Mode ของอุปกรณ์ Sonoff โดยไม่จำเป็นต้องผ่านระบบ Cloud Sonoff S31 ปลั๊กไวไฟ สามารถวัดการใช้พลังงานได้ การติดตั้ง Add-on: Sonoff LAN สามารถติดตั้งได้ทาง HACS โดยเข้าไปเพิ่ม Custom repositories สามารถใช้ชื่อ Repo ข้างล่างได้เลย ตอนเพิ่มให้เลือก Category เป็น integration แล้ว restart HA AlexxIT/SonoffLAN เริ่มต้น Config Home Assistant ทำการแก้ไขไฟล์ configuration.yaml sonoff: username: !secret sonoff_username password: !secret sonoff_password username, password สำหรับใช้งานบน APP Ewelink จากนั้นทำการ restart HA เข้าไปที่โฟลเดอร์ config/ เราจะมองเห็นไฟล์ .sonoff.json ให้ทำการเปิดไฟล์ดังกล่าว แล้วค้นหา deviceid, devicekey ...

August 12, 2021 · 1 min · Teera

update docker image ให้ใหม่สดอยู่เสมอ

เมื่อเรามีจำนวน docker container จำนวนเยอะๆ การที่เราต้องมาคอย pull latest image แต่ละ container ค่อนข้างเสียเวลามาก อีกทั้งเราก็ไม่สามารถรู้ล่วงหน้าว่า เมื่อไหร่ image จะมีการ update เป็นเวอร์ชั่นใหม่ แต่ถ้าเราสามารถ automation update docker image ทุกๆ container ของเราชีวิตมันก็คงจะง่ายขึ้นเนอะ ** คำเตือน การตั้ง automation update อาจจะส่งเสียต่อ *container ของท่านได้ กรณีเวอร์ชั่นใหม่มี bug ค่อนข้างเยอะ หรือไม่ support ต่อระบบของท่าน เพราะฉนั้นกรุณาทำระบบ monitoring อย่างแข็งแรง! Watchtower คือ “หอสังเกตการณ์” 555+ อันนั้นก็ตรงตัวไป ถ้าอธิบายง่ายๆก็คือ docker container ตัวนึงที่จะคอยตรวจสอบ docker image ถ้าเจอมีการ update version ก็จะทำการ pull image จากนั้น restart container ให้เราทันที ฟังแล้วชีวิตง่ายขึ้นมาก ( อ่านเพิ่มเติม ) เริ่มติดตั้ง Watchtower สำหรับการติดตั้ง watchtower สามารถทำได้ทั้งแบบ docker run หรือ docker-compose แต่สำหรับวันนี้ผมจะใช้วิธี docker-compose โดยสร้าง stack ผ่านทาง portainer ...

July 2, 2021 · 1 min · Teera

เชื่อมต่อหุ่นยนต์ดูดฝุ่น Xiaomi ใช้งานบน Home Assistant

เรามาเชื่อมต่อหุ่นยนต์ดูดฝุ่น Xiaomi เข้ากับ Home Assistant เพื่อจะใช้งาน Automation กันเถอะ! สำหรับหุ่นยนต์ดูดฝุ่นเป็นรุ่น Xiaomi Robot Vacuum Mop G1 “ หุ่นยนต์ดูดฝุ่น Xiaomi รุ่นถูกสุด ทำอะไรได้บ้าง ? ” เริ่มต้นโดยการเข้าไปที่ HACS เมนู integrations ทำการ Add repository โดยค้นหาชื่อ Xiaomi Miot Auto เมื่อทำการติดตั้งเสร็จ restart Home Assistant ต่อไปเรามาทำการ integrations โดยเข้าไปเมนู Configuration -> Integrations -> Add Integration จากนั้นค้นหาชื่อ “Xiaomi Miot Auto” เมื่อถึงขั้นตอนนี้เราสามารถเลือกการเชื่อมต่อได้ 2 แบบ Add device using host/token Add devices using Mi Account ส่วนตัวผมจะใช้วิธีเชื่อมต่อผ่าน token “ เรียกใช้งาน Token ทั้งหมดของบัญชี Xiaomi ” ส่วนใครจะใช้การเชื่อมต่อผ่าน Mi Account ก็แค่กรอก username, password ลงไปได้เลย ตอนนี้เราก็จะมี entities ของหุ่นยนต์ดูดฝุ่นเพิ่มเข้ามาเรียบร้อยแล้ว เราสามารถทดสอบ Service vacuum.start, vacuum.stop และ vacuum.return_to_base ( อ่านเพิ่มเติม ) แค่นี้เราก็สามารถนำไปใช้งานในส่วนของ Automation ได้เลย เช่น สั่งให้ทำงานทุกๆเช้า หรือสั่งให้กลับแท่นชาร์จเมื่อเรากำลังจะออกจากบ้าน ต่อไปเรามาสร้าง card สำหรับหุ่นยนต์ดูดฝุ่นกัน โดยเข้าไปที่ HACS เหมือนเดิม จากนั้นเข้าเมนู frontend ค้นหาชื่อ Vacuum Card หลังจากนั้น add card ...

June 24, 2021 · 1 min · Teera

เรียกใช้งาน Token ทั้งหมดของบัญชี Xiaomi

ย้อนกลับไปเมื่อปี 2019 การจะได้มาซึ่ง token ของอุปกรณ์ xiaomi ที่ผูกอยู่กับบัญชีของเรา ค่อนข้างมาก ต้องไปลง app Mi Home v5.4.49 จากนั้นตัว app จะปล่อย token มาผ่าน log file แต่สำหรับตอนนี้มี script python ที่สามารถเรียก token ทั้งหมดออกมาได้เลย แม้จะเป็น token ของอุปกรณ์ Bluetooth Low Energy (BLE) ที่โดนเข้ารหัสไว้ก็ตาม OMG! สำหรับ script ตัวนี้ชื่อว่า “ Xiaomi Cloud Tokens Extractor ” มีวิธีใช้งานค่อนข้างง่าย และสามารถใช้งานได้หลายวิธี แต่สำหรับวันนี้ ผมจะมาแนะนำวิธี run script ผ่านทาง Add-on “ SSH & Web Terminal ” วิธีใช้งาน Xiaomi Cloud Tokens Extractor เข้าไปที่ SSH & Web Terminal จากนั้นใช้คำสั่ง bash <(curl -L https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor/raw/master/run.sh ) ...

June 12, 2021 · 1 min · Teera

ติดตั้ง OMV-Extras ใช้งานบน Openmediavault

OMV-Extras จะเป็น plugins เพิ่มเติมของ Openmediavault ( อ่านเพิ่มเติม ) ซึ่งตอนที่ติดตั้ง Openmediavault โน๊ตบุ๊คเก่า ( อ่านเพิ่มเติม ) มันไม่มีส่วนนี้ติดตั้งมาด้วย แต่ไม่เป็นไร เราสามารถติดตั้งเพิ่มเติม โดยความสามารถหลักๆที่ผมจะใช้งานคือ มันสามารถติดตั้ง Docker ผ่านทาง OMV-Extras ได้เลย วิธีติดตั้ง OMV-Extras SSH เข้าตัว server Openmediavault จากนั้นใช้คำสั่ง ( อ่านเพิ่มเติม ) wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash หลังจากติดตั้งเสร็จแล้ว จะเมนู OMV-Extras วิธีติดตั้ง Docker เมนู OMV-Extras เลือก Docker แล้วก็เลือก Install กรณีต้องการติดตั้ง Portainer สามารถติดตั้ง โดยกดปุ่ม Install ได้เหมือนกัน เพียงแค่นี้ เราก็จะมี Docker + Portainer พร้อมใช้งานแล้วครับ

June 10, 2021 · 1 min · Teera

Python script CPU Temperature มาใช้งานบน Home Assistant

จากบทความที่แล้วเกี่ยวกับการ Integration Openmediavault เข้ามาใช้งานที่ Home Assistant ( อ่านเพิ่มเติม ) จะเห็นว่ามันไม่มีข้อมูลของ CPU Temperature ซึ่งในบทความนี้ ผมจะมาแนะนำวิธีการใช้ Python script เพื่อจะดึงข้อมูล CPU Temp ไปแสดงผลที่ Home Assistant โดยจะเป็นการ run Python script บนเครื่อง Openmediavault โน๊ตบุ๊คเก่า ( อ่านเพิ่มเติม ) ** วิธีนี้สามารถนำไปประยุกต์ใช้กับ server linux อื่นๆได้ด้วยนะ* เตรียมพร้อม Home Assistant เปิดใช้ Rest API แก้ไข configuration.yaml ( อ่านเพิ่มเติม ) Example configuration.yaml entry api: ทำการสร้าง input_number และ sensors แก้ไข configuration.yaml เสร็จแล้ว Restart Example configuration.yaml entry input_number: cpu_temp: min: 0 max: 200000 sensors: cpu_temp: unit_of_measurement: ‘°C’ value_template: ‘{{ states(“input_number.cpu_temp”) | multiply(0.001) | round(1) }}’ ...

June 5, 2021 · 2 min · Teera

เชื่อมต่อ Openmediavault ใช้งานบน Home Assistant

ตอนนี้ที่บ้านมี Openmediavault ใช้งานอยู่ 2 เครื่อง ปกติแล้วจะใช้วิธี login เข้าไปแต่ละเครื่องเพื่อจะ monitor ว่ามันยังทำงานดีอยู่นะ ไม่มีอะไรผิดปกติใช่ไหม แต่เมื่อเรามี Home Assistant อยู่แล้ว มันก็คงจะดีไม่ใช่น้อย ถ้าเกิดเราสามารถเชื่อมต่อกันได้ โดยการเชื่อมต่อจะใช้งานผ่านทาง HACS ( วิธีติดตั้ง HACS ) Integrations มีชื่อว่า “OpenMediaVault” ส่วนความสามารถมีดังนี้ อ่านเพิ่มเติม Filesystem usage sensors System sensors (CPU, Memory, Uptime) System status sensors (Available updates, Required reboot and Dirty config) Disk and smart sensors วิธีติดตั้ง OpenMediaVault เข้าไปที่ HACS เมนู Integrations จากนั้นค้นหา OpenMediaVault เมื่อติดตั้งเรียบร้อย ทำการ restart Home Assistant เข้าไปเมนู Configuration -> Integrations -> Add ค้นหาชื่อ OpenMediaVault กรอกข้อมูล ip, username, password เครื่อง Openmediavault จากนั้นกด submit ** อย่าลืมติ๊ก verify_ssl ออกด้วย กรณี Openmediavault ของเราเป็นแบบ http* 5. ถ้าไม่มีอะไรผิดพลาด ตอนนี้ entities ของ Openmediavault ควรจะเชื่อมต่อเข้ามาแล้ว Openmediavault เครื่อง 1Openmediavault เครื่อง 2 หลังจากนี้เราก็สามารถใช้ประโยชน์จาก entities ต่างๆ เพื่อจะใช้งาน automation เช่น แจ้งเตือนเมื่อ CPU load, Memory เยอะ หรือจะแจ้งเตือน อุณหภูมิ HDD สูงผิดปกติก็ได้เหมือนกัน ...

June 1, 2021 · 1 min · Teera

ปิด Hibernate mode โน๊ตบุ๊ค เมื่อติดตั้ง Linux

หลังจากได้ติดตั้ง Openmediavault โน๊ตบุ๊คเก่า ( อ่านเพิ่มเติม ) ปัญหาที่ตามมาคือ ถ้าเราพับหน้าจอ ตัวเครื่องจะเข้าสู่ Hibernate mode แล้วก็จะปิดตัว service ทุกอย่าง ซึ่งการจะเปิดหน้าจอทิ้งไว้ มันก็เปลืองไฟโดยใช่เหตุ ก็เลยเป็นที่มาของบทความนี้นั้นเอง วิธีปิด Hibernate mode เริ่มต้นโดยการ SSH เข้าไปที่ตัวเครื่อง Openmediavault จากนั้นใช้คำสั่ง sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target จะมี output ออกมาประมาณนี้ Created symlink /etc/systemd/system/sleep.target → /dev/null. Created symlink /etc/systemd/system/suspend.target → /dev/null. Created symlink /etc/systemd/system/hibernate.target → /dev/null. Created symlink /etc/systemd/system/hybrid-sleep.target → /dev/null. ทำการ reboot sudo reboot SSH เข้าไปตัวเครื่องอีกครั้ง ลองเช็คสถานะการปิด Hibernate mode ด้วยคำสั่ง sudo systemctl status sleep.target suspend.target hibernate.target hybrid-sleep.target ...

May 23, 2021 · 1 min · Teera

แก้ปัญหา docker stats ไม่แสดงผล memory usage

ตอนนี้ใช้งาน raspberry pi 4 สำหรับ run docker ซึ่งก็มีจำนวน container ทำงานอยู่พอสมควร เพราะคิดว่าซื้อมาแล้ว ต้องใช้งานให้มันคุ้มค่าซิ! แต่เมื่อ container เริ่มเยอะ เครื่องมันก็จะเริ่มช้า! เราก็เลยอยากรู้ว่า container ตัวไหนใช้งาน cpu หรือ memory เยอะผิดปกติ ซึ่งเราสามารถใช้คำสั่ง docker stats docker stats ไม่แสดงผล memory usage อย่างที่เห็นดังรูปข้างบน MEM USAGE / LIMIT และ MEM % จะไม่แสดงผล ก็เลยไปลองหาข้อมูลจนเจอวิธีแก้ปัญหาดังกล่าว เลยคิดว่านำมาแชร์ เพื่อจะเป็นประโยชน์ วิธีแก้ปัญหา ทำการ backup cmdline.txt ไว้ก่อนเลย เผื่อมีอะไรผิดพลาด จากนั้นเข้าไปแก้ไขไฟล์ cmdline.txt ได้เลย sudo cp /boot/cmdline.txt /boot/cmdline.txt.old sudo nano /boot/cmdline.txt เมื่อเข้าไปในไฟล์ cmdline.txt เราจะเจอแบบข้างล่าง console=serial0,115200 console=tty1 root=PARTUUID=eb9dd260-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait ทำการแก้ไข โดยเพิ่มคำสั่ง cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory ต่อท้าย rootwait ...

May 12, 2021 · 1 min · Teera