4 คะแนน โดย GN⁺ 2024-01-02 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Meshtastic คือเครือข่ายเมชโอเพนซอร์สที่เชื่อมต่ออุปกรณ์พลังงานต่ำและต้นทุนต่ำเข้าหากันได้โดยไม่ต้องมีเสาสัญญาณหรืออินเทอร์เน็ต จึงมีประโยชน์ในสถานการณ์ที่ไม่มีโครงสร้างพื้นฐานด้านการสื่อสาร
  • ใช้ การสื่อสารระยะไกลบนพื้นฐาน LoRa และการเข้ารหัส AES-256 ทำให้สามารถส่งข้อความเมชแบบ peer-to-peer ที่เป็นส่วนตัวได้แม้ในสภาพแวดล้อมออฟกริด
  • ระบบนิเวศกำลังขยายตัว โดยมีอุปกรณ์ที่ชุมชนรองรับมากกว่า 8 รุ่น ผู้ร่วมพัฒนาโค้ดจากทั่วโลกมากกว่า 149 คน ภูมิภาค LoRa 26 แห่ง และภาษาที่รองรับ 39 ภาษา
  • ผู้ใช้บนมือถือและนักพัฒนาสามารถเข้าถึงเครือข่ายเดียวกันได้ผ่านแอป iOS·iPad·Mac OS, แอป Android, Web Client และ Python CLI/SDK
  • มีไคลเอนต์หลายแบบ รวมถึงเอกสารและเครื่องมือ flasher ช่วยให้เส้นทางการเริ่มต้นตั้งแต่การเตรียมฮาร์ดแวร์ไปจนถึงการตั้งค่าและควบคุมอุปกรณ์ค่อนข้างชัดเจน

เครือข่ายเมชที่ทำงานได้โดยไม่ต้องมีโครงสร้างพื้นฐาน

  • Meshtastic เป็นเครือข่ายเมชแบบกระจายศูนย์ออฟกริดที่สร้างบนพื้นฐาน โอเพนซอร์ส
  • ถูกออกแบบมาให้ทำงานบนอุปกรณ์ราคาประหยัดและใช้พลังงานต่ำ พร้อมมอบ การเชื่อมต่อแบบ peer-to-peer โดยไม่ต้องมีเสาสัญญาณหรืออินเทอร์เน็ต
  • แนวคิดหลักคือ “No cell towers. No internet. Just pure peer-to-peer connectivity.”

ความสามารถด้านการสื่อสาร

  • Long Range: ใช้เทคโนโลยี LoRa เพื่อให้สื่อสารได้ในระยะหลายกิโลเมตร
  • Encrypted: ใช้การเข้ารหัส AES-256 เพื่อให้ข้อความคงความเป็นส่วนตัวและปลอดภัย
  • No Infrastructure: ทำงานได้โดยไม่ต้องมีเสาสัญญาณ, WiFi หรือการเชื่อมต่ออินเทอร์เน็ต

ชุมชนและขอบเขตการรองรับ

  • ขนาดของระบบนิเวศที่ Meshtastic ระบุมีดังนี้
    • อุปกรณ์ที่ชุมชนรองรับ: มากกว่า 8 รุ่น
    • ผู้ร่วมพัฒนาโค้ดจากทั่วโลก: มากกว่า 149 คน
    • ภูมิภาค LoRa: 26 แห่ง
    • ภาษาที่รองรับ: 39 ภาษา

ไคลเอนต์สำหรับการเข้าถึงและควบคุม

  • Apple Apps: แอปที่รองรับ iOS, iPad และ Mac OS สำหรับจัดการเครือข่าย Meshtastic ระหว่างเดินทาง
  • Android App: สามารถเชื่อมต่อและควบคุมอุปกรณ์ Meshtastic ได้จากแอป Android
  • Web Client: ไคลเอนต์บนเว็บที่ใช้เข้าถึงเครือข่าย Meshtastic ได้จากหลายอุปกรณ์
  • Python CLI/SDK: มีทั้ง command-line interface และ SDK สำหรับนักพัฒนา Python

เครื่องมือเริ่มต้นใช้งานและตั้งค่า

  • Get Started: ลิงก์ไปยังเอกสารเริ่มต้นใช้งาน Meshtastic
  • Read the Docs: จุดเริ่มต้นของเอกสารสำหรับผู้ใช้ที่ต้องเตรียมฮาร์ดแวร์
  • Flasher: ลิงก์ไปยังเครื่องมือ flasher บนเว็บไซต์ Meshtastic

1 ความคิดเห็น

 
GN⁺ 2024-01-02
ความคิดเห็นจาก Hacker News
  • มีโปรเจกต์ที่เกี่ยวข้องคือ https://github.com/antirez/freakwan/
    ขอเสริมว่าเป็นสิ่งที่ผมทำเอง แนวคิดคล้ายกับ Meshtastic แต่ตั้งเป้าให้มีการจัดทำเอกสารและทำให้ การเลือกในระดับโปรโตคอล ชัดเจนยิ่งขึ้น รวมถึงเป็น implementation ที่แฮ็ก/ปรับแก้ได้ง่ายกว่ามาก
    ถ้าเข้าใจภาษาอิตาลี มีเนื้อหาที่ผมนำเสนอไว้ที่นี่ด้วย: https://talks.codemotion.com/introduzione-alla-tecnologia-rf...

    • https://www.robots-everywhere.com/cellsol/ พอจะ ร่วมมือกัน ได้ไหมครับ?
    • เจ๋งมาก อยากรู้ว่ามี ระยะทางหรือดัชนีชี้วัดประสิทธิภาพ ที่ทำได้จริงไหม ไม่น่าเชื่อว่าจะมีโปรเจกต์ Mesh WAN อยู่ด้วย
    • อยากรู้ว่าถ้าเทียบ freakwan กับ reticulum https://github.com/markqvist/Reticulum ต่างกันอย่างไร
  • เคยลองใช้ที่ Burning Man ปี 2023 ซึ่ง Burning Man เป็นสภาพแวดล้อมที่โหดกับอุปกรณ์ และสภาพคลื่นความถี่วิทยุก็ซับซ้อนอย่างน่าทึ่ง
    ถึงอย่างนั้นมันก็เสถียรและประสบการณ์ใช้งานก็ดี เลยค่อนข้างชอบมาก

    • เท่าที่รู้ LoRa ไม่ได้มีแบนด์วิดท์สูง เลยถามด้วยความสงสัยล้วน ๆ ว่าใช้ทำอะไรบ้าง
    • ผมก็เคยใช้ตอนนั้น และทำงานได้ค่อนข้างดี แต่ดูเหมือนต้องปรับให้ตำแหน่งของผมอัปเดตเร็วขึ้น
      ผมทำ fork ของเฟิร์มแวร์ที่แก้ให้แสดงตำแหน่งบน playa ไว้ด้วย
      https://github.com/exadeci/Meshtastic-device-bm
    • เคยลองใช้ที่ EDC ปีที่แล้วด้วย และก็ทำงานได้ค่อนข้างดีคล้ายกัน
    • มีบทความอะไรที่น่าอ่านไหมครับ?
  • ผมซื้ออุปกรณ์ LoRa/Meshtastic มาหลายตัว แล้วลองศึกษาว่าจะบันทึกตำแหน่งตัวเองและแสดงบนแผนที่แบบ APRS ได้ไหม
    แต่ดูยากกว่ากระบวนการตั้งค่า APRS iGate แล้วดูตำแหน่งของตัวเองบน aprs.fi มาก
    สักวันอยากลองอีกครั้ง แต่รู้สึกว่าต้องมีคู่มือเริ่มต้นที่ดีพอจะช่วยสร้างแรงจูงใจ

    • ผมมีฮาร์ดแวร์ Meshtastic LoRa อยู่พอสมควร แต่การทำให้มันใช้งานได้จริงอย่างถูกต้องยากกว่าที่คาดไว้มาก
  • นึกถึงคำพูดที่ว่า อย่าถามอายุผู้หญิง อย่าถามเงินเดือนผู้ชาย และอย่าถาม throughput ของ ตัวรับส่งสัญญาณ LoRa
    ถ้าอยู่ในระดับบิตสองหลักต่อวินาที เมื่อคิดรวม packet header กับ error correction ฯลฯ แล้ว อย่างดีที่สุดก็คงได้แค่ไม่กี่ตัวอักษรต่อวินาที หรือต่ำกว่านั้น

    • ถ้าดู datasheet ของ Semtech SX1262 ซึ่งเป็นหนึ่งในชิปไร้สายที่มักใช้ในอุปกรณ์ Meshtastic อัตราส่งบิตต่ำสุดคือ 18bps ซึ่งค่อนข้างช้า
      แต่ถ้าใช้ channel width ที่ใหญ่ขึ้นและ spreading factor ต่ำลง ก็ขึ้นไปได้ถึง 62.5kbps ผมไม่แน่ใจว่า Meshtastic ใช้โหมดไหนเป็นค่าเริ่มต้น แต่ดูเหมือนจะมี preset อยู่ 8 แบบ
    • สำนวน “อย่าถามอายุผู้หญิง อย่าถามเงินเดือนผู้ชาย” ฟังดูมีความเหยียดเพศอยู่หน่อย
      รู้ว่าเป็นสุภาษิต และไม่ได้โทษคอมเมนต์ต้นทางนะ
  • ก่อนจะตื่นเต้นกับสิ่งนี้มากเกินไป ขอชี้ให้เห็นว่า การใช้เสาอากาศรอบทิศทางกับ ระบบวิทยุเมชแบบ half-duplex/TDD จัดว่าเป็นหนึ่งในวิธีที่มีประสิทธิภาพต่ำที่สุดในการสร้างเครือข่าย IP ไร้สายระดับหมู่บ้านหรือเมืองเล็ก ๆ
    เมื่อเสาอากาศรอบทิศทางสื่อสารกัน เสาอากาศรอบทิศทางก็เป็นตัวรับสัญญาณรบกวน 360 องศาด้วย ทำให้รับได้แม้กระทั่งทราฟฟิกหรือสัญญาณยึดครอง time slot จากโหนดเมชที่อยู่ไกลออกไปเล็กน้อย ซึ่งไม่ใช่คู่สื่อสารที่กำลังรับส่งกันอยู่ในตอนนั้น
    ในทำนองเดียวกัน เวลาส่งแพ็กเก็ตไปยังโหนดใดโหนดหนึ่ง สัญญาณ RF 99% ก็จะแผ่ออกไปในทิศมุมอะซิมัทที่ไม่ได้ต้องการและไม่จำเป็น แล้วทำให้ noise floor ของโหนดใกล้เคียงที่ใช้ฮาร์ดแวร์คล้ายกันสูงขึ้น
    ถ้าใครอยากทำอะไรแบบนี้ด้วยงบที่รัดตัวมาก ๆ ผมแนะนำให้ดู ระบบไร้สาย 802.11ac/ax แบบ point-to-point ที่ออกแบบมาเพื่อสร้าง L2 Ethernet bridge ระหว่างสองจุด โดยส่วนใหญ่ใช้เสาอากาศสะท้อนพาราโบลา และช่วงหลัง ๆ ก็มีอุปกรณ์ point-to-point bridge ราคาถูกย่าน 24GHz และ 60GHz ที่ตั้งอยู่บนสมมติฐานว่าต้องมีแนวสายตาและเคลียร์ Fresnel zone
    อุปกรณ์ตระกูล LoRa เองก็จะดีกว่ามาก หากต้องการลิงก์คงที่ระหว่างสองจุดในย่านที่คล้าย VHF/UHF ซึ่งต่ำกว่า 2.4GHz หรือ 5GHz มาก โดยทั่วไปต่ำกว่า 1300MHz และแทนที่จะหันเสาอากาศรอบทิศทางสองต้นเข้าหากัน ก็สามารถหันเสาอากาศ Yagi-Uda หรือไดโพลเข้าหากันได้
    ถ้าเป็นไซต์ที่โหนดไม่เคลื่อนที่และตำแหน่งสัมพันธ์กันไม่เปลี่ยน ผมขอแนะนำอย่างยิ่งให้พิจารณาแทบทุกอย่างที่ไม่ใช่เสาอากาศรอบทิศทางสำหรับลิงก์เครือข่ายระหว่างโหนด เพื่อความเสถียรของลิงก์และอัตราการส่งข้อมูลที่ดีกว่า
    นี่เป็นตัวอย่างสุ่ม ๆ ที่หาเจอจากการค้นหา 5 วินาที ลองดูแพตเทิร์น gain ในทิศทางเฉพาะ: https://www.elprocus.com/design-of-yagi-uda-antenna/
    หนึ่งในสิ่งเจ๋ง ๆ ที่ทำกันด้วยชิปเซ็ตและโมดูล RF ตระกูล LoRa ในช่วงนี้คือ ExpressLRS ซึ่งทำ serial UART bridge ระหว่างรีโมตคอนโทรลกับ flight controller ออนบอร์ดของ UAV, เรือไร้คนขับ หรือยานภาคพื้นดิน เป็นแนวคิดทั่วไปแบบเดียวกับ TBS Crossfire สำหรับงาน RC แต่พัฒนาต่อขึ้นมา
    https://www.google.com/search?client=firefox-b-d&q=expresslr...

    • ดูเหมือนจะเขียนยาวพอสมควรทั้งที่ยังไม่รู้จริง ๆ ว่า Meshtastic คืออะไร
      Meshtastic คือ การส่งข้อความตัวอักษร ที่มีช่องสัญญาณ พร้อมฟังก์ชันส่งข้อมูลเซ็นเซอร์และข้อมูลตำแหน่งจากบางโหนด
      ไม่ได้มีเป้าหมายเพื่อให้บริการเครือข่าย TCP/IP
    • ดูเหมือนเป็นเนื้อหาที่เขียนโดยตั้งสมมติฐานถึงอะไรบางอย่างที่ไม่ใช่ LoRa
      การสร้าง “เครือข่าย IP ไร้สายระดับหมู่บ้านหรือเมืองเล็ก ๆ” ไม่ใช่เป้าหมายตั้งแต่แรก มันทำได้แค่สร้าง เครือข่ายส่งข้อความตัวอักษร แบบง่าย ๆ ที่ระยะค่อนข้างดี แต่แบนด์วิดท์ต่ำ
    • ถ้าติดอุปกรณ์แบบนี้กับโดรนแล้วสลับกันบินขึ้นไป ก็น่าจะขยายสัญญาณในพื้นที่เฉพาะได้อย่างต่อเนื่อง
      ดูเหมือนมีความเป็นไปได้ในการ เลี่ยง ISP เยอะมากจริง ๆ
    • สิ่งที่ใช้ในการฝึก LLM เขียนว่า LoRA โดยตัว A เป็นตัวพิมพ์ใหญ่ ส่วนของไร้สายคือ LoRa
    • นั่นแหละคือเหตุผลที่มีการประดิษฐ์ เสาอากาศอัจฉริยะ และ beamforming ขึ้นมา
      แต่ในระบบที่ช้าในโดเมนเวลาและมี throughput ต่ำมากอย่าง LoRa เมื่อคำนึงถึงการเคลื่อนที่แล้ว แนวคิดนี้ไม่ใช่สิ่งที่นำไปใช้ได้ง่ายนัก
  • มีวิดีโอที่ชาวอังกฤษผู้กระตือรือร้นมากคนหนึ่งใช้งานแอป Android จริง ๆ และสาธิต ฟังก์ชัน traceroute รวมถึงอย่างอื่น: https://www.youtube.com/watch?v=LmGr1pGJ4sM

  • เห็นว่าขยายได้แค่ 80 โหนด ดังนั้นถ้าไม่ได้สร้างเองก็คงหาเมชให้เข้าร่วมได้ยาก และดูเหมือนจะใช้ได้เฉพาะในกลุ่มคนรู้จักกันเท่านั้น
    อยากได้ เครือข่ายเมชทั่วโลก ที่มาแทนอินเทอร์เน็ต

    • ผมก็อยากได้ อย่างน้อยในตอนนี้ ผมมองว่า แอปพลิเคชันที่ทนต่อการแบ่งพาร์ทิชัน คือหนทางข้างหน้ามากกว่าเมชขนาดยักษ์
      การค้นหาว่า “Taco Express เปิดอยู่ตอนนี้ไหม?” ไม่ควรทำโดยตีความชื่อที่มีเอกลักษณ์ระดับโลกให้เป็นที่อยู่ที่มีเอกลักษณ์ระดับโลก แล้วไปถามเซิร์ฟเวอร์ที่อยู่ไกล จากนั้นเซิร์ฟเวอร์นั้นก็ขอข้อมูลตำแหน่งอีกทีเพื่อระบุว่าเป็น Taco Express สาขาไหน วิธีนี้เปราะบางเกินไป
      แทนที่จะเป็นแบบนั้น คำค้นควรถูกแพร่กระจายไปตามเมชที่เข้าถึงได้ในขณะนั้น จนไปเจอโหนดที่มีอำนาจตอบเรื่องเวลาเปิดของ Taco Express ซึ่งอาจเป็น Raspberry Pi ที่อยู่ในร้าน Taco Express เอง เนื่องจากเป้าหมายเป็นสิ่งที่ local ต่อคำถาม โครงสร้างจึงให้ผลลัพธ์แบบ local
      ปัญหาการเชื่อมเมชเหล่านี้เข้าด้วยกันก็น่าสนใจ แต่จนกว่าจะเกิดระบบนิเวศของแอปที่ไม่พึ่งพาที่อยู่คงที่ของโหนดแต่ละตัว มันก็ยังไม่ได้มีประโยชน์มากนัก
      สิ่งที่ต้องการไม่ใช่การระบุที่อยู่เซิร์ฟเวอร์และ request/response แต่คือ การระบุที่อยู่ตามบริบท และ publish/subscribe ต้องมีการเปลี่ยนกรอบคิดครั้งใหญ่พอสมควร และน่าเสียดายที่ดูเหมือนการเปลี่ยนแบบนั้นคงไม่เกิดขึ้น จนกว่าจะมีภัยพิบัติบางอย่างมาทำให้ผู้คนยอมรับว่ามันจำเป็น
    • อินเทอร์เน็ตก็เป็นเครือข่ายเมชทั่วโลกอยู่แล้ว
      เมื่อเทียบกับลิงก์ไฟเบอร์ 1000km, 10000Gbps ที่ต้องใช้เงินหลายล้านดอลลาร์ในการวาง สิ่งที่คนคนเดียวจะมีส่วนร่วมได้นั้นแทบไม่มีเลย ถึงอย่างนั้นก็ไม่มีใครห้ามคุณไปหา port ในดาต้าเซ็นเตอร์สองแห่งหรือ Internet exchange สองจุด แล้วหาทางเชื่อมต่อกัน จากนั้นเก็บค่าขนส่งทราฟฟิกระหว่างสองจุดนั้น
      ในยุโรป ใบเสนอราคาค่า transport 10Gbps ระยะ 650km อยู่ราวเดือนละ 800 ดอลลาร์ ดังนั้นในทางทฤษฎีก็อาจทำเงินได้ประมาณนั้น
    • ถ้าสนใจเครือข่ายเมชขนาดใหญ่ ลองดู Wirepas ก็น่าจะดี แต่เป็นพื้นฐาน 802.15.4 ไม่ใช่ LoRa
      ผมเคยทำงานเป็นผู้จัดการผลิตภัณฑ์ของระบบติดตามบุคลากรบนไซต์ก่อสร้างที่ใช้เมช และได้ไลเซนส์เทคโนโลยี Wirepas มาใช้ในโซลูชันนั้น ระหว่างนั้นได้เรียนรู้รายละเอียดปลีกย่อยของเมชเยอะมาก
    • ถ้าพูดถึง “เครือข่ายเมชทั่วโลกที่มาแทนอินเทอร์เน็ต” ก็อยากรู้ว่าคิดถึง เกณฑ์การออกแบบ แบบไหนอยู่
      มันมี trade-off ที่ยากระหว่างการค้นพบได้, latency, availability และ security
  • ไม่มีเครือข่ายเมชโอเพนซอร์สบน Android อยู่บ้างเหรอ? แบบที่ใช้ Wi‑Fi หรือ Bluetooth
    เหมือนเคยได้ยินว่าเคยมีการใช้เครือข่ายเมชในการประท้วงเมื่อหลายปีก่อน หรือว่ายังไม่มีอะไรที่ใช้งานได้จริงอยู่ดี?

    • Yggdrasil ใช้ Wi‑Fi บน Android ได้ ยังไม่ได้ลองเอง: https://yggdrasil-network.github.io/
      Yggdrasil ช่วยให้ใช้แอปพลิเคชัน TCP/IP บนเครือข่ายเมชของตัวเองได้ แต่ตัวมันเองไม่ได้มีฟีเจอร์สำหรับผู้ใช้ปลายทาง
      Manyverse ใช้ Wi‑Fi สำหรับโซเชียลเน็ตเวิร์กแบบกระจายศูนย์ได้: https://www.manyver.se/
      ตอนนี้กำลังเขียนแบ็กเอนด์ใหม่ และกำลังย้ายออกจาก Secure Scuttlebutt ไปใช้โปรโตคอลของตัวเองที่ตอนนี้ชื่อว่า PPPPP
      Reticulum/Sideband ให้ระบบส่งข้อความแบบ P2P บน Wi‑Fi หรือสื่ออื่น ๆ: https://github.com/markqvist/sideband
    • ถ้ายังไม่มีจริง ๆ ก็น่าแปลกมาก การกระจายศูนย์ด้านฮาร์ดแวร์ ยังขาดแคลนจริง ๆ
    • จำได้ว่ามีอะไรบางอย่างที่ถูกนำไปใช้งานในเปอร์โตริโกหลังพายุเฮอริเคนปี 2017 ค้นเร็ว ๆ แล้วน่าจะเป็นอันนี้: https://techcrunch.com/2017/11/14/a-mesh-network-spontaneous...
    • เคยได้ยินชื่อ Briar, Bridgeify, Serval, Meshenger แล้ว มีอะไรอื่นอีกไหม?
    • น่าจะหมายถึงอันนี้: https://en.m.wikipedia.org/wiki/FireChat
      ยุติไปเมื่อปี 2018 และก็ไม่ใช่โอเพนซอร์สด้วย
  • เคยอยากเข้าร่วมขบวนการ Decentralized Web ที่ TimBL ประกาศไว้ แต่สุดท้ายก็เงียบหายไป
    เคยสมัครจะไป “offline camp” ที่ Oregon แต่ถูกยกเลิกเพราะไฟป่าครั้งใหญ่ และน่าจะเกี่ยวข้องกับ Camp Fire สุดท้ายเลยได้ไปตั้งแคมป์ริมแม่น้ำแทน
    ใช้เงิน 1 ล้านดอลลาร์ตลอดกว่า 10 ปี เพื่อสร้างซอฟต์แวร์ชุมชนโอเพนซอร์สที่รันได้บนเซิร์ฟเวอร์เอนกประสงค์ทุกแบบ ไม่ว่าจะเป็นเครื่องบิน เรือสำราญอย่าง Norwegian Cruise Lines หรือหมู่บ้านชนบท
    อยากช่วยด้านการศึกษาในท้องถิ่น รวมถึงเด็กผู้หญิงชาวอัฟกันด้วย และกำลังติดต่อกับ RohingyaProject.com และอื่น ๆ เพื่อช่วยเหลือผู้ลี้ภัยไร้รัฐ
    เครือข่ายเมชแบบนี้มีอยู่แล้ว และฮาร์ดแวร์โทรศัพท์มือถือก็ยอดเยี่ยม สิ่งที่ยังขาดคือ ซอฟต์แวร์แบ็กเอนด์ ที่ดีพอจะพาผู้คนออกจาก Big Tech อย่าง Twitter หรือ Facebook เหมือนที่ Web เคยพาคนออกจาก AOL และ MSN และเหมือนที่ Wordpress เคยพาคนออกจาก Web 1.0
    ถ้าอยากเข้าร่วม หรือรู้จักขบวนการ “decentralized web” หรือ “indieweb” ที่ยังคึกคักจริง ๆ ช่วยบอกไว้ด้านล่างด้วย
    https://qbix.com/blog/2021/01/15/open-source-communities/
    บทความล่าสุดเกี่ยวกับแพลตฟอร์ม:
    https://www.laweekly.com/restoring-healthy-communities/

  • https://www.robots-everywhere.com/cellsol/ เราสร้างสิ่งนี้ราวปี 2020 และรองรับทั้งแพ็กเก็ตของ Meshtastic และ disasterradio