Blog

  • ทำไม Galaxy S24 ไฟดูด

    วันนี้ (2-Feb-24) เห็นโพสต์หนึ่งในกลุ่มผู้ใช้งาน SAMSUNG Galaxy S24 ถามผู้ใช้งานคนอื่น ๆ ว่า เจอไปดูดเหมือนกันบ้างไหม?

    แน่นอนว่า เหมือนบางคนเจอ บางคนไม่เจอ

    ซึ่งที่จริงแล้วปัญหานี้ ไม่ได้เกิดขึ้นเฉพาะกับ S24 แต่มันเกิดกับทุกอุปกรณ์ที่มีบอดี้เป็นโลหะแหละ

    ไม่ว่าจะเป็น iPhone iPad หรือ Mac รวมไปถึง PC ด้วย ลองจาก comments หรือจะค้น “macbook ไฟดูด” ใน Google ดูก็ได้ครับ จะเห็นว่าคนเจอปัญหานี้เพียบ

    ทำให้ผมย้อนนึกไปถึงวันที่คนเริ่มหันมาใช้ Mac กันเยอะขึ้น แล้วมีการถามในกลุ่มแบบนี้แหละ เคยตอบไปแล้วล่ะ แต่บางคนก็เห็นด้วย บางคนก็ไม่เห็นด้วย

    ยังไงก็ตามส่วนตัวผมเอง “สายดินที่บ้าน หรือไม่ก็การเดินสายไฟในตู้เมนที่บ้าน” คือสาเหตุของปัญหาแน่นอน เพราะทุกอุปกรณ์ที่บ้านผมตอนนี้ iPhone Mac PC ทีวี ตู้เย็น เครื่องซักผ้า ไม่มีปัญหานั้น หลังจากที่แก้ปัญหานี้ไปแล้ว

    เลยเอามาลองเขียนโพสต์ไว้ตรงดีนี้ดีกว่า ว่าสาเหตุมันเกิดจากอะไรกันแน่ เพราะปัญหานี้ยังไม่หายไปจากบ้านเรา คงอีกนาน

    ต้องบอกก่อนว่า ปัญหานี้ไม่ได้เกิดจากอุปกรณ์ที่ได้มาตรฐาน ซึ่งก็คือ ไม่ได้เกิดจาก S24 iPhone iPad หรือ Mac เพราะก่อนที่เขาจะนำมาขายได้ เขาออกแบบ ทดสอบเอง ส่งทดสอบ จนผ่านมาตราฐานทางไฟฟ้ามากันหมดแล้ว ไม่ว่าจะเป็น Double Insulation (⧈), ETL, No trash, House, 10-Year Circled, VI, CE, FCC หรือ UL ต่าง ๆ ซึ่งเราจะไม่ลงรายละเอียดกันหรอกนะ 😁

    ไฟดูดหรือไฟรั่วจาก S24, iPhone, iPad, Mac, และ PC เกิดจากอะไร?

    ส่วนตัวนะ ผมเชื่อว่าเกิดจากระบบสายดินในบ้านหรือสำนักงานของผู้ใช้เอง หากจะอธิบายสั้น ๆ ก็คือ จุดที่เป็น 0 โวลต์ของอุปกรณ์เทียบกับจุดที่เรายืน มันมีความต่างศักย์ไฟฟ้ากันอยู่ ถ้ามันมากพอเราจะรู้สึกถูกไฟดูดเหมือนในภาพแรก หลอดไฟสว่างมาก

    ซึ่งในทางทฤษฎีแล้ว ทั้ง 2 จุดนี้มันไม่ควรจะมีความต่างศักย์กันเลย และในบ้านที่เดินสายดินหรือสายกราวด์ที่เหมาะสม จะไม่มีปัญหานี้

    แต่สำหรับบ้านหลังใหญ่ บ้าน 2 ชั้น หรือคอนโด หากผู้ก่อสร้างทำระบบสายดินไม่ดีพอ ก็อาจเจอปัญหานี้ได้เหมือนกัน

    วิธีการแก้ปัญหามี 2 วิธีคือ

    1. แก้ปัญหาที่ต้นเหตุ ซึ่งเป็นเรื่องที่แก้ปัญหาที่ต้นเหตุยากพอสมควร และหากทำเอง ⚠ อาจอันตรายต่อชีวิตและทรัพย์สินด้วย แนะนำให้หาช่างไฟฟ้ามีใบรับรองมาช่วยตรวจสอบและต่อสายดินให้ถูกต้อง

    ซึ่งเรื่องสายดินและการเดินสายไฟฟ้านี่ ก็ไม่ใช่เรื่องง่าย เหมือนที่หลายคนคิดว่า เอาสายไฟจิ้มลงดินเฉย ๆ ลองดูโพสต์นี้ในพันทิป https://pantip.com/topic/41625692

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

    ลองดูคลิปนี้ใน YouTube นะครับ ทีม service ของ TOSHIBA อธิบายและสาธิตไว้อย่างละเอียดแล้ว

    อีกประเด็นหนึ่งคือ เรื่องปลั๊ก 3 ขา และปลั๊ก 3 ตาที่เรามักพูดถึงกัน อย่างในคอมเม้นต์นี้

    ขอพูดถึงประเด็นเรื่อง ที่ชาร์จ (wall charger) มีแค่ 2 ขา สายดินไม่มีผล อันนี้ไม่จริงครับจำนวนขามันต่างกันจริง ๆ แต่สิ่งที่เราไม่ได้ไปรื้อดูในบ้านเราก็คือ สายดิน (G) สีเขียว กับสายนิวทรัล (N​) สีฟ้า จะต่อถึงกันภายในตู้คอนซูมเมอร์ยูนิต หรือตู้เมน แต่เฉพาะที่เดินสายอย่างถูกต้องตามมาตรฐานนะ

    ลองดูในรูปด้านล่างครับ สายนิวทรัลสีฟ้าจากมิเตอร์ จะต่อเข้ากับจุดต่อหลักดินสายสีเขียว และบรรดาสายดินในเต้ารับจะต่อตรงจุดนี้โดยตรง

    และจากจุดต่อสายดินตรงนี้จะมีสายสีฟ้าอันหนึ่งต่อไปที่สายนิวทรัลของ Breaker หลัก ลองดูรายละเอียดในภาพ หรืออ่านเพิ่มได้จากเว็บของ ABB หรือไม่ก็เว็บนี้ “การต่อลงดินของระบบไฟฟ้าในบ้าน” ก็ได้ ซึ่งทั้งคู่ก็เป็นผู้ผลิตอุปกรณ์ไฟฟ้าที่มีชื่อเสียงอยู่แล้ว

    จากข้อมูลที่พูดถึงทั้งหมด ก็จะเห็นว่า ปัญหาหลักก็คือ ระบบสายดิน นั่นล่ะ

    ถ้าจะแก้ให้ถูกต้อง และไม่มีปัญหา รวมถึงปลอดภัยต่อชีวิตและทรัพย์สิน ก็ควรหาช่างมาตรวจสอบและแก้ไขให้ถูกต้อง

    ซึ่งทุกวันนี้มีข้อดีคือ มีชุดตู้เมนสำเร็จรูปขายตามร้านอุปกรณ์ก่อสร้าง รวมถึงใน shopee และ Lazada โดยเขาต่อหรือวายริงสายไว้ให้แล้ว เราแค่มาต่อสายไลน์ (L), สายนิวทรัล (N) และสายดินที่ต่อกับหลักดินเข้าไป ที่เหลือก็คือ เดินไปตามจุดที่ใช้งาน

    อย่างเช่น https://shope.ee/B5EiG7xv9 อันนี้ของ NANO

    ส่วนอันนี้ https://shope.ee/5fQBGWizJI ของ Schneider

    และอันนี้ https://shope.ee/8UkMdriAYG ของ CHANG

    โดยผมเคยใช้ 2 ยี่ห้อหลัง กับ Racer (รับประกัน 10 ปี เซลล์เชียร์ดีมาก ๆ 😆) ที่มีขายตามร้านอุปกรณ์ก่อสร้าง

    2. ปูพรม หรือใช้พื้นเป็นวัสดุที่ไม่นำไฟฟ้า ในบริเวณที่เราต้องสัมผัสกับอุปกรณ์ แต่ต้องมั่นใจนะครับ ว่าไม่อยู่ในที่เปียกชื้น ก็จะเหมือนในคลิปและคอมเม้นต์ด้านบนแหละ

    เป็นอีกวิธีหนึ่งที่ช่วยได้ คือทำให้ไฟฟ้าไหลไม่ครบวงจร หรือไม่ให้มันไหลผ่านตัวเราลงดิน ก็ปูพื้นด้วยวัสดุที่ไม่นำไฟฟ้า หรือฉนวน ก็เหมือนกับที่ช่างไฟฟ้า ต้องใส่ถุงมือและรองเท้าที่เป็นฉนวน เพื่อป้องกันไฟดูด

    วิธีนี้เหมาะกับผู้เช่า เพราะเราไม่สามารถไปทำอะไรในบ้านเองได้

    ✨อ๋อ มีอุปกรณ์อีกตัวหนึ่ง สำหรับใครที่อยากรู้ว่า ที่บ้านเราตอนนี้เดินสายไฟถูกต้องเหมาะสมหรือไม่

    ก็คือ เครื่องตรวจสอบเต้ารับไฟ หรือ Socket Tester อย่างเช่น https://shope.ee/6AMRs6zaCJ ตัวนี้ มีข้อดีคือ แสดงความต่างศักย์ระหว่าง N กับ E (หรือ G ซึ่งก็คือสายดินที่เราพูดกันไปก่อนหน้านี้) ได้ด้วย

    แต่ถึงมันบอกว่า CORRECT ก็อย่าพึ่งชะล่าใจว่าไปจะไม่ดูดเรานะครับ เพราะเขาวัดในระบบสายไฟในบ้านเรา ไม่ได้วัดว่า สายดินมันลงดินจริง ๆ ไหม

    ดังนันโดยสรุปคือ ต้องมั่นใจว่าสายดินเรามันลงดินจริง ๆ หรือไม่ก็ปูพื้นฉนวนไฟฟ้า หรือไม่ก็ทั้งคู่ 😂

    ปล. หลักดินตามมาตรฐานของการไฟฟ้าฯ ยาว 2.4 เมตรนะครับ ที่น่ากลัวคือ บ้านสมัยเก่า ๆ ที่สร้างก่อนช่วงปี 2012 นี่ไม่ค่อยน่าไว้ใจ ถ้ามีสายดิน ช่างบางท่านใช้โครงสร้างบ้านนั่นล่ะเป็นสายดิน ซึ่งเราไม่ได้สร้างเอง ไม่มีทางรู้ได้เลย

    กรณีของผมคือ ลงหลักดินใหม่และเดินสายดินมาเข้าตู้เมน

    กรณีนี้ถือว่าแชร์ประสบการณ์ส่วนตัวนะครับ ไม่ใช่ผู้เชียวชาญ แต่ได้ผลไม่ได้ผลยังไง comment แจ้งไว้ก็ดีนะ 😊

  • รัน python เวอร์ชันอื่นผ่าน terminal ของ macOS

    สรุปความ

    เป็นที่รู้กันดีอยู่แล้วว่า macOS จะมี python ติดมาอยู่แล้ว ถ้าอยากติดตั้งเวอร์ชันอื่นเพิ่มก็ทำได้ แต่จะ run ผ่าน terminal จะทำไม่ได้ หากอยากเรียกใช้ผ่าน terminal ต้องทำผ่านการกำหนด alias ไปยังโพลเดอร์ python ที่เราติดตั้งไป ซึ่งปกติจะอยู่ที่ /usr/local/bin/python3 หากเป็นเวอร์ชัน 3

    และถ้าอ่านใน docs.python.org ก็ไม่ได้แนะนำให้ทำ เนื่องจากอาจมีปัญหาอย่างอื่นตามมา เพราะ python ที่ติดตั้งมาจะถูกเรียกใช้จากบริการหลาย ๆ อย่างของระบบปฏิบัติการ และส่วนนี้อยู่ที่ /usr/bin/python3 ซึ่ง Apple จะเป็นผู้ดูแลและคอยอัพเดทตามความจำเป็นของเขา

    แต่โดยส่วนตัวแล้ว ผมก็อยากจะรันผ่าน terminal อยู่

    การทำ alias ให้รัน python ผ่าน terminal ได้

    ก่อนจะทำ ณ วันนี้ผมใช้ macOS Monterey 12.6.2 อยู่นะครับ โดยเท่าที่ลองเช็คเวอร์ชัน โดยใช้คำสั่ง

    python --version

    และได้ผลลัพธ์ออกมาเป็น

    username@u-mbp ~ % python --version
    zsh: command not found: python
    username@u-mbp ~ % 

    😁 โดยผมคิดว่าดีจัง เพราะ Apple เรียกใช้ python โดยใช้คำสั่ง python3 ซึ่งเราสามารถทำ alias ให้เรียกใช้ python เวอร์ชันอื่นที่เราติดตั้งไปได้ โดยที่ไม่น่าจะส่งผลกระทบอะไรต่อระบบปฏิบัติการและบริการอื่น ๆ ที่เกี่ยวข้อง

    โดยการทำ alias คือ การตั้งชื่อเล่นให้กับแอพ หรือโปรแกรมที่เราจะเรียกใช้ ซึ่งในที่นี้ก็คือ python เวอร์ชันใหม่ที่เราติดตั้งไป และสามารถทำได้โดยเพิ่มคำสั่ง alias ไว้ในไฟล์ .zprofile

    nano .zprofile

    และเพิ่ม 2 บรรทัดนี้เขาไป

    alias python=/usr/local/bin/python3
    alias pip=/usr/local/bin/pip3.11

    เสร็จแล้วให้บันทึกไฟล์โดยกด control + x แล้วกดปุ่ม y และกดปุ่ม return

    จากนั้นให้ใช้คำสั่ง exit เพื่อออกจาก terminal ปัจจุบัน แล้วเปิด terminal ใหม่ขึ้นมา แล้วลองใช้คำสั่ง python --version และ pip --version ใน terminal แล้วจะได้ผลลัพธ์ตามนี้

    username@u-mbp ~ % python –version
    Python 3.11.1
    username@u-mbp ~ % pip –version
    pip 22.3.1 from /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pip (python 3.11)
    username@u-mbp ~ %

    โดยถ้าเป็นแบบนี้แสดงว่า เราจะรันไฟล์ python ที่เราเขียนขึ้นโดยผ่าน terminal ได้แล้ว โดยผมจะลองโดยสร้างไฟล์ชื่อ test.py ซึ่งคำสั่งและผลลัพธ์แบบนี้

    username@u-mbp ~ % nano test.py
    username@u-mbp ~ % python test.py
    Hello! lungthi.com
    Now, you can run me via terminal.
    username@u-mbp ~ %

    ก็จะเห็นว่า ผมสามารถรัน code ที่เขียนขึ้นผ่าน terminal เป็นที่เรียบร้อย 😀

    ส่วนคนที่ไม่อยากทำ alias ก็สามารถใช้วิธีการที่ทาง python.org แนะนำเอาไว้ได้

    รันผ่าน IDLE

    วิธีที่ง่ายที่สุดในการรัน code ที่เขียนขึ้นคือใช้ IDLE

    รันผ่าน Python Launcher

    บน macOS หากเราติดตั้ง python เวอร์ชันใหม่เพิ่มเข้าไป ถ้าจะรันให้ลากไฟล์นั้นมาที่ Python Launcher

    หากจะรัน code ของ python เวอร์ชันใหม่บน macOS ให้ลากมาวางที่ไอคอนนี้

    หรือตั้งค่าให้ default application ให้ Python Launchcer เปิดไฟล์ .py

    หรือไม่ก็ต้องพิมพ์คำสั่งยาว ๆ (ยาวเกิ๊น 😟) โดยตรงคำว่า <your script here> ให้พิมพ์ชื่อไฟล์ที่เราจะ run

    cd '' && '/usr/local/bin/python3'  '<your script here>'  && echo Exit status: $? && exit 1
  • การเลือกใช้ font จาก u8g2 library

    ช่วงนี้ผมกำลังฝึกใช้จอแสดงผลกับ ESP32 อยู่ เลยต้องศึกษาวิธีการใช้ u8g2 library ซึ่งใช้สำหรับแสดงผลจอ monochrome ซึ่งก็คือพวกจอ LCD หรือ OLED ที่มีขายกัน อย่างเช่น พวกจอ 0.96 นิ้วใน Shopee

    แต่พอจะเลือก font มาใช้ก็สงสัยว่า เอะ! ชื่อฟอนต์ก็เหมือนกันนี่หว่า แล้วตัวท้าย f, r, และ u คืออะไร พออ่านแล้วก็เลยต้องมา note 📝 ไว้จะดีกว่า เพราะส่วนใหญ่ทำไปแล้วลืม และกลับไปหาอีกก็ไม่เจอแล้วก็มี

    โดยข้อมูลมาจาก 🔗 https://github.com/olikraus/u8g2/wiki หากใครต้องการข้อมูลและวิธีใช้เพิ่มเติม

    ชื่อ font ของ u8g2 จะประกอบด้วย

    <prefix>_<name>_<purpose><char set>
    • <prefix> จะมักจะเป็น u8g2_font_
    • <name> ก็คือชื่อเรียกของ font นั้น ๆ
    • <purpose>
      • t — ย่อมาจาก Transparent ซึ่งก็คือโปร่งแสง ไม่มี background
      • h — ทุกอักขระจะสูงเท่ากัน
      • m — ทุกอักขระจะสูงและกว้างเท่ากัน หรือที่เรียกว่า  monospace
      • 8 — ทุกอักขระจะปรับให้อยู่ในขนาดไม่เกิน 8×8 พิกเซล
    • <char set>
      • f — ใน font แบบนี้จะมีทั้งหมด 256 อักขระ
      • r — จะมีเฉพาะอักขระในช่วง 32 ถึง 127 ของ ASCII code
      • u — จะมีเฉพาะอักขระในช่วง 32 ถึง 95 หรือมีเฉพาะตัวเลขถึงตัวพิมพ์ใหญ่เท่านั้น
      • n — จะมีเฉพาะอักขระตัวเลขและอักขระที่จำเป็นสำหรับการแสดงผลวันและเวลาเท่านั้น
      • … — อักขระที่ออกแบบมาเฉพาะอื่น

    ASCII Code

    จากหัวข้อที่ผ่านที่เราพูดถึง ตารางด้านล่างเป็นรายการอักขระใน ASCII code ช่วงที่เรากล่าวถึง จะเห็นว่ามีเฉพาะภาษาอังกฤษ

    ASCII CODEอักขระASCII CODEอักขระASCII CODEอักขระ
    32SPACE64@96`
    33!65A97a
    3466B98b
    35#67C99c
    36$68D100d
    37%69E101e
    38&70F102f
    3971G103g
    40(72H104h
    41)73I105i
    42*74J106j
    43+75K107k
    44,76L108l
    4577M109m
    46.78N110n
    47/79O111o
    48080P112p
    49181Q113q
    50282R114r
    51383S115s
    52484T116t
    53585U117u
    54686V118v
    55787W119w
    56888X120x
    57989Y121y
    58:90Z122z
    59;91[123{
    60<92\124
    61=93]125}
    62>94^126~
    63?95_127DEL
  • ใช้ u8g2 library กับ Heltec WiFi LoRa 32

    Welcome to WordPress. This is your first post. Edit or delete it, then start writing!