มาเล่น Sonoff smart switch กับ NETPIE กัน

ครั้งที่แล้วลอง flash firmware ใหม่ลงใน Sonoff smart switch เพื่อใช้งาน MQTT กันไปแล้ว ในครั้งนี้มาลองเล่นกับ NETPIE.io กันดูบ้าง NETPIE เป็นบริการ IoT Platform พัฒนาโดย NECTEC แนะนำให้ไปใช้กันครับ :) ครั้งนี้เราจะเรียกใช้งาน WifiManager เพื่อช่วยเรื่องการเชื่อมต่อ Wifi และการ Config AP ผ่าน Web Browser กันแบบง่ายๆ

การใช้งานก็ง่ายมากๆ เสียบสายไฟแล้วกดปุ่มค้างไว้ รอไฟกระพริบถี่ๆ จะเข้า mode setting เกาะ AP ชื่อ ESPXXXX จะเข้าสู่หน้าตั้งค่า AP ดังนี้

เลือก AP ที่ต้องการใช้งาน เท่านี้ก็ใช้ได้แล้ว โค้ดเขียนมาลวกๆ สั่ง subscribe ไปยัง /switch/01 เพื่อรอคำสั่ง
Continue reading

มา flash firmware ใหม่ให้ Sonoff smart switch กัน

เนื่องจากไม่ค่อยมีเวลาเล่นอุปกรณ์ IoT ส่วนใหญ่จะดองอยู่ในโหล วันนี้ได้โอกาสเลยมาแกะกล่อง smart switch เล่นกัน smart switch เป็น IoT switch ใช้ ESP8266 เป็นตัวประมวลผลและเป็น Wifi module โดยปกติการใช้งานจะใช้งานผ่าน Mobile Application ของ Sonoff แต่ครั้งนี้เราจะมา flash firmware ใหม่ให้ switch IoT ตัวนี้ให้ทำงานร่วมกับ MQTT Broker กัน :)

แกะกล่องออกมาเราจะเจอ board ประมาณนี้ (แอบต่อ pin header ไว้แล้ว) สำหรับรุ่นใหม่ๆ จะมี 5 pin แต่รุ่นเก่าจะมี 4 pin

Continue reading

เก็บตกอบรม Cyber Security กับ ACIS

ผมได้มีโอกาสไปอบรม Cyber Security กับ ACIS ซึ่งเป็นโครงการอบรมต่อเนื่องจากงาน CDIC 2016 ผมสมัครอบรมในหัวข้อ Internet of Things Penetration Testing และ Client-side Attack เนื่องจากกันลืมและอาจจจะเป็นประโยชน์ก็เลยมา blog ไว้สักหน่อย


Continue reading

มาเล่น Node32s กัน

วันนี้ได้ Node32s ส่งตรงจาก Gravitech Thai สั่งซื้อแบบ pre-order ไว้ ช่วงเดือนพฤศจิกายนจนลืมไปแล้ว วันนี้พัสดุมาส่งก็เลยมา blog ไว้สักหน่อย Node32s เป็น development board จาก Ayarafun และ LamLoei ผลิตโดย Gravitech Thai มาดูบอร์ดกันสักหน่อย

ตัวบอร์ดมาพร้อม USB to TTL ใช้ชิป FTDI มีพอร์ท JST สำหรับต่อแบตเตอรี่และสามารถชาร์ตแบตเตอรี่ได้ด้วย สำหรับชิปเป็น ESP32s แบบ module มี PTC Fuse ขนาด 500mA ด้วย :) ด้านหลังมี label บอกตำแหน่ง pin ต่างๆ

สำหรับการเขียนโปรแกรมสามารถใช้ ESP-IDF หรือ Arduino Core ก็ได้ตามความถนัด หรือท่านที่ชอบใช้ Platform.io ก็สามารถใช้งานได้เช่นกัน สำหรับ pin layout เป็นแบบนี้ครับ

ฝากไว้หน่อย คู่มือการใช้งานและการเขียนโปรแกรมบน Node32s ครับ

เปลี่ยนหัว E3D V6 ให้เครื่อง Delta

รื้อเครื่อง Prusa i3 มาทำเครื่อง Delta เอาหัว E3D V5 มาใส่คิดว่าหัวมันใหญ่ไปหน่อยและพัดลมเป่าชิ้นงานแรงไม่พอ ก็เลยเปลี่ยนเป็นหัว E3D V6 ให้เล็กลงมาหน่อย พิมพ์ Fan Shroud ใหม่ด้วยใส่พัดลม 2 ตัวสะใจเลยทีเดียว

ประสบการณ์ทำเครื่อง 3D Printer แบบ Delta

ครั้งที่แล้วเคย blog เรื่องที่รื้อเครื่อง Prusa i3 เดิมเอามาทำเครื่อง Delta ซึ่งปกติชิ้นส่วนของ Prusa i3 น่าจะเอามาทำเครื่อง Core XY มากกว่า รื้อเครื่องแล้ว พิมพ์ชิ้นส่วนแล้ว คงถอยไม่ได้แล้วล่ะ

หลังจากที่พิมพ์ชิ้นส่วนแล้วก็ประกอบกับท่อนอลูมิเนียมได้เลย
Continue reading

Top 10 Strategic Technology Trends for 2017

Gartner ได้ประกาศ Technology Trends ในปี 2017 มาแล้ว ก็เลยถือโอกาสมา blog ไว้ก่อน ส่วนรายละเอียดจะทะยอยเพิ่มเติมอีกครั้ง

  1. Artificial Intelligence and Advanced Machine Learning
  2. Intelligent Apps
  3. Intelligent Things
  4. Virtual Reality and Augmented Reality
  5. Digital Twins
  6. Blockchains and Distributed Ledgers
  7. Conversational Systems
  8. Mesh App and Service Architecture
  9. Digital Technology Platforms
  10. Adaptive Security Architecture

Gartner จัดงาน Conference ที่ Cape Town มีสรุปนิดหน่อย อ่านสรุป Trend ทั้ง 10 ข้อกันได้ครับ สำหรับงาน Conference ในไทย จะจัดขึ้นช่วงเดือนธันวาคม โดย IMC Institute ท่านที่สนใจสามารถลงทะเบียนเข้าร่วมสัมนาได้ครับ

อัพเดทเพิ่มเติม รายละเอียดเกี่ยวกับทั้ง 10 เทรนด์ อ.ธนชาติ เขียน blog ไว้ละเอียดเลยทีเดียวและนำให้ตามไปอ่านครับ

มาเล่น Nano32 กัน

Nano32 เป็น Development Board ที่ใช้ชิป ESP32 ตัว Dev Kit พัฒนาโดย MakerAsia และ GravitechThai ตัวบอร์ดมาพร้อมกับ FTDI เสียบสาย usb ปุ๊บใช้งานได้เลย ความสามารถของชิป ESP32 ที่หลายคนรอคอยคือสามารถใช้งาน Wifi และ Bluetooth ได้ แถมประหยัดพลังงานด้วย สำหรับการเชื่อมต่อก็มี GPIO มาให้ใช้งานเยอะมาก มี SPI, SDIO, I2C, UART มาพร้อม รายละเอียดดูได้ที่เว็บ Espressif ครับ

สำหรับการเขียนโปรแกรมบน ESP32 นี้จะใช้ ESP IDF (Espressif IoT Development Framework) ช่วงแรกนี้อาจจะโหดสักหน่อยเพราะมีการเปลี่ยนแปลงแยะมาก สำหรับท่านที่เขียน C++ บน RTOS มาก่อนคงไม่ค่อยรู้สึกแตกต่างมากนัก สำหรับท่านที่เริ่มใหม่ก็ต้องสร้างกำลังใจเรียนรู้ใหม่กันเลยครับ

การติดตั้ง toolchain สำหรับ ESP32 มีหลายวิธี แต่วิธีที่ง่ายที่สุดคงเป็นติดตั้งและใช้งานบน Linux มีคนทำ toolchain บน Docker ด้วยน่าสนใจดีครับ สำหรับท่านที่ใช้ Mac OS แบบผมก็สามารถติดตั้ง toolchain มาเล่นบน Mac ได้เหมือนกัน ลองอ่านวิธีการได้ที่ Wiki ของ ESP IDF อ้อเกือบลืมท่านที่ใช้ Brew อย่าลืมติดตั้ง package เพิ่มเติมดังนี้

brew install gnu-sed gawk binutils homebrew/dupes/gperf grep gettext ncurses pkgconfig

ตั้งค่า PATH ดังนี้

สำหรับการพัฒนาก็ง่ายมาก สามารถศึกษาได้จากตัวอย่างใน git repository โครงการ ESP-IDF ได้ การสร้างโปรเจคใหม่ทาง Esspressif มี template ใช้งานเช่นกัน

เพิ่มเติมทาง Chiang Mai Maker Club มี Tutorial การติดตั้ง Toolchain และ ESP-IDF สำหรับ Windows, Mac, Ubuntu และ Docker ลองไปศึกษาเพิ่มเติมได้ครับ

สำหรับวิธีการ Build ก็ง่ายมาก Makefile มีเครื่องมือมาให้ใช้งานพร้อมแล้ว ผ่าน make tool เช่น

  • การ build ใช้คำสั่ง make
  • การตั้งค่า sdkconfig ผ่านคำสั่ง make menuconfig (อารมณ์เดียวกับ build kernel เลย)
  • การ flash ก็เพียงแค่สั่ง make flash

อัพเดทเพิ่มเติมสำหรับท่านที่อยากใช้ Arduino IDE สามารถติดตั้ง ESP32 บน Arduino IDE และเขียนโค้ดแบบ Arduino ได้แล้ว ดูวิธีการติดตั้ง ESP32 สำหรับ Arduino Core จาก Chiang Mai Maker Club ได้ ปล. Arduino Core วิ่งได้แค่ Core เดียวนะครับ

เครื่องมือวาดไดอะแกรม

หาเครื่องมือวาดไดอะแกรมแบบออนไลน์เพราะว่า Visio ยังใช้งานบน Mac OS ไม่ได้ ก็เลยพยายามหาโปรแกรมแบบออนไลน์เอามาใช้งาน ลองเล่นมาหลายตัวก็เลยมา blog เอาไว้สักหน่อย

  • sketchboard
  • gliffy
  • cacoo
  • draw.io
  • lucidchart

แต่ละตัวมีจุดเด่นแตกต่างกัน ลงเลือกใช้กันดูครับ

เก็บตกงาน Software Freedom Day Bangkok 2016

ผมได้มีโอกาสไปงาน Software Freedom Day 2016 ที่มหาวิทยาลัยเกษตรศาสตร์เมื่อวันเสาร์ที่ผ่านมาจัดโดยสมาคมศึกษาและพัฒนาโอเพนซอร์สและหน่วยงานพันธมิตร เนื่องจากมีเวลาอยู่ที่ประเทศไทยอีกเล็กน้อยก็เลยได้เข้าสัมนาและ Workshop บาง session ที่ได้เข้าไปดังนี้

PHP secure coding ปัญหาของการเขียนโค้ดไม่ปลอดภัยยังเป็นปัญหาเดิมๆ เช่น SQL Injection, Cross site scripting, Remote Execution เป็นต้น ซึ่งปัญหาเหล่านี้อยู่ใน OWASP Top 10 issues มาตลอด อาจมีกระแสเรื่องการเลิกเขียน PHP เถอะ หรือหันมาใช้ PHP Framework แต่ช่องโหว่ก็ยังมีอยู่ สรุปคร่าวๆ ที่จำได้

  • ให้ระวังเรื่อง register global อย่ามักง่าย!!
  • อย่าใช้ dynamic include!!
  • ต้องทำ error handling ดีๆ ไม่งั้นหลุด
  • php.ini ช่วยได้เยอะในกรณีที่ใช้เครื่องของตัวเอง
  • ทำ VA และ Pentest กันบ้าง – อันนี้ผมเพิ่มเอง

Data Science Essentials ใน session นี้ปูพื้นเรื่องความรู้ด้าน Big Data กันเลยทีเดียว จะไปจบที่เครื่องมือ OpenSource ที่สามารถหยิบเอามาใช้งานเพื่อให้เหมาะกับลักษณะของข้อมูลที่ต้องการเก็บ อ้อเดี๋ยวนี้เค้าเรียก Data Lake กัน ไม่ได้เรียก Data Warehouse กันแล้ว!!!

Log Manangement บน ELK D3.js จาก ม.เกษตร ทำให้เห็นภาพของเครือข่ายขนาดใหญ่ที่ต้องเก็บ Log ตาม พรบ. และเพื่อใช้วิเคราะห์ข้อมูล Log ที่เก็บมี 3 ส่วนคือ Log ของ Network, Login Log และ Web Log การจัดเก็บ เก็บเป็นไฟล์ raw Log แบ่งเป็นไดเรคทอรี่ย่อยเรียงตาม ปี เดือน วัน ไฟล์ Log จัดเก็บเป็นนาที อ. แนะนำเรื่องเครื่องมือเก็บ Log อย่างง่ายเช่น Graylog ด้วย ระบบของ ม.เกษตร เก็บ Log ลง Elastic Search และใช้ Kibana ในการค้นหาและดึงออกมาทำ Visualized เบื้องต้น แต่ที่ใช้งานจริงๆ จะเป็น Dashboard ที่พัฒนาด้วย D3.js มีรายงานที่น่าสนใจอยู่หลายตัว แถมดูข้อมูลได้ละเอียดมากกกกก เช่น Netflow ของแต่ละ session, การ Login เข้าใช้งานอินเตอร์เน็ตของนักศึกษาและอาจารย์ เป็นต้น

BI ใน session นี้พูดถึงความเป็นมาของ BI ซึ่งแนวทางการทำ Data Analytics มีมานานแล้ว เป้าหมายที่ classic ที่สุดคือเอาไว้ช่วยตัดสินใจ ถ้าพูดถึง BI มุมมองของแต่ละคนจะแตกต่างกันถ้าเป็นผู้บริหารจะนึกถึง Dashboard สวยๆ หรือ Decision Room เอาไว้ดูตัวเลขแดงๆ เพื่อถกปัญหาและตัดสินใจ สำหรับคนทำงานด้านข้อมูลกว่าจะได้ Dashboard ออกมาสวยๆ ต้องฝ่าฟัน silo ข้อมูลที่แยกกันอยู่ เอามารวมใน Data Warehouse แล้วถึงจะเอามาสร้าง Dashboard สวยๆ ให้ผู้ตัดสินใจดูได้ ปัญหาคือ คนเราใช้ data ในการตัดสินใจมากน้อยแค่ไหน วิทยากรได้เอาตัวเลขมาให้ดูก็พบว่าคนเราติดสินโดยใช้ข้อมูลกันน้อยมาก ดังนั้นการใช้ข้อมูลในองค์กรเพื่อการตัดสินใจจึงไม่ค่อยประสบความสำเร็จ

วันที่สองไม่ได้ไปเพราะต้องเดินทางไปมาเลเซีย อดเรียน Firebase เลย