[RPi] ลองเอา Raspberry Pi มาทำเป็น MQTT Broker (Mosquitto)
Published in
2 min readOct 19, 2015
วันนี้ได้มีโอกาสลองเอา Raspberry Pi มาลง MQTT Broker เพื่อลองเล่น IoT อย่างง่ายๆดูครับ
Mosquitto คือ Open source MQTT broker (v3.1) ที่ได้รับความนิยมอย่างมากครับ คงไม่ต้องเกริ่นกันนาน เริ่มเลยแล้วกันครับ
สิ่งที่ใช้งาน
- Raspberry Pi 2 Model B + Jessie or Wheezy OS
- Internet
- Mosquitto
(http://mosquitto.org/files/source/mosquitto-1.4.4.tar.gz) - LibWebSockets
(http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/snapshot/libwebsockets-1.4-chrome43-firefox-36.tar.gz)
Step 1 อัพเดดระบบ
- อัพเดดฐานข้อมูลของระบบ
sudo apt-get update
- ทำการดาวโหลดแพ็คเกจที่มีการปรับปรุงและติดตั้ง
sudo apt-get upgrade
Step 2 ติดตั้งซอฟแวร์ที่เกี่ยวข้อง
- libssl-dev
- พิมพ์คำสั่ง
sudo apt-get install libssl-dev
- กด y และ enter เพื่อยืนยัน
- cmake
sudo apt-get install cmake
- libc-ares-dev
sudo apt-get install libc-ares-dev
- uuid-dev
sudo apt-get install uuid-dev
- deamon
sudo apt-get install daemon
Step 3: ติดตั้ง LibWebSockets
- ดาวโหลด libwebsockets
wget http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/snapshot/libwebsockets-1.4-chrome43-firefox-36.tar.gz
- ทำการ Unpack
tar zxvf libwebsockets*
- เปลี่ยน directory ไปที่ libwebsockets*
cd libwebsockets*
- สร้าง directory ที่ชื่อ build
mkdir build
- ย้าย directory ไปที่ Build
cd build
- build
cmake ..
- Install
sudo make install
- Rebuild library cache.
sudo ldconfig
- เปลี่ยน directory ไปที่ home
cd
Step 4 ติดตั้ง Mosquitto
- ดาวโหลด source code จาก mosquitto
wget http://mosquitto.org/files/source/mosquitto-1.4.4.tar.gz
- Unpack
tar zxvf mosquitto-1.4.1.tar.gz
- เปลี่ยน directory ไปยัง mosquitto
cd mosquitto-1.4.4
- แก้ไขไฟล์ config.mk
sudo nano config.mk
- แก้ไขบรรทัด WITH_WEBSOCKETS:
จาก
WITH_WEBSOCKETS:=no
เป็น
WITH_WEBSOCKETS:=yes
- Make mosquitto
make
- Install mosquitto
sudo make install
- Copy the default config file over to /etc
sudo cp mosquitto.conf /etc/mosquitto
หมายเหตุ หากยังไม่มี directory ให้สร้างก่อนด้วยคำสั่ง
sudo mkdir /etc/mosquitto
- Enable websockets ด้วยการแก้ไขไฟล์ /etc/mosquitto/mosquitto.conf
sudo nano /etc/mosquitto/mosquitto.conf
- เพิ่มคำสั่งทั้ง 2 บรรทัดต่อไปนี้
listener 9001
protocol websockets
- สร้าง user สำหรับ mosquitto
sudo adduser mosquitto
- Reboot
sudo reboot
เท่านี้ก็เรียบร้อยครับ
Step 5 ทดสอบ
- ลองทดสอบด้วยการใช้โปรแกรม Mqtt Spy ซึ่งสามารถดาวโหลดได้ที่ https://github.com/kamilfb/mqtt-spy/wiki/Downloads