Thingsboard açık kaynak IoT platformudur. Thingsboard u bilmeyenler şuradaki adresden inceleyebilir.



Elimizde Raspberry Pi 5 in 4CPU ve 8GB RAM li modeli bulunmaktadır. Amacımız Raspberry Pi 5 e Thingsboard u kurup fabrikamızda IoT platform olarak Thingsboard u kullanmaktır.

Senaryomuzda fabrikamızın içerisinde bir IoT sıcaklık nem ölçüm cihazımız vardır. Bu cihazımız Wifi ile ağa bağlanır ve MQTT üzerinden sıcaklık ve nem değerlerini Raspberry Pi 5 üzerine kurulu Thingsboard IoT platformuna aktarır.

Kuruluma Thingsboard un sitesindeki işlemler ile başlıyoruz. Bu işlemler şurada açıklanmıştır. https://thingsboard.io/docs/user-guide/install/rpi/ 

Rapberry Pi 5 e ssh ile login oluyoruz veya Rapberry Pi 5 e ekran, klavye ve mouse bağlayarak terminal ekranını açıyoruz. Aşağıdaki adımları sırasıyla yapıyoruz.

Adım 1. Java 17 (OpenJDK) yükleme

  • sudo apt update
  • sudo apt install openjdk-17-jdk
Sisteminizde başka Java sürümleri de olabilir. Java yüklemesi tamamlandığında default sürümün OpenJDK17 seçili olduğunu doğrulayınız.

  • sudo update-alternatives --config java
Javanın versiyonunu tekrar kontrol edelim.
  • java -version
Çıktı aşağıdaki gibi olmalıdır.
  • openjdk version "17.x.xx" 
  • OpenJDK Runtime Environment (...)
  • OpenJDK 64-Bit Server VM (...)

Adım 2. ThingsBoard kurulumu


Rapberry Pi 5 e Thingsboard ı indiriyoruz.

  • sudo wget https://github.com/thingsboard/thingsboard/releases/download/v3.8.1/thingsboard-3.8.1.deb
Thingsboard ı kuruyoruz.
  • sudo dpkg -i thingsboard-3.8.1.deb

Adım 3. ThingsBoard ve Veritabanı ayarları

Thingsboard veritabanı olarak PostgreSQL kullanır. Rapberry Pi 5 e PostgreSQL i aşağıdaki adımlar ile kuruyoruz.
  • sudo wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
  • echo "deb https://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" | sudo tee  /etc/apt/sources.list.d/pgdg.list
  • sudo apt update
  • sudo apt -y install postgresql
  • sudo service postgresql start
Kurulum tamamlandıktan sonra postgresql için şifre oluşturuyoruz.
  • sudo su - postgres
  • psql
  • \password
Şifreyi giriyoruz ve tekrar yazıyoruz. Ctrl+D ile ana terminal ekranına dönüyoruz.

  • psql -U postgres -d postgres -h 127.0.0.1 -W
Tekrar giriş yapıyoruz ve veritabanı şifremizi giriyoruz.

  • CREATE DATABASE thingsboard;
Veritabanımız oluştuktan sonra Ctrl+D ile çıkış yapıyoruz.

Thingsboard .conf dosyasına postgres şifremizi ekliyoruz. 
  • sudo nano /etc/thingsboard/conf/thingsboard.conf
Dosyayı açtıktan sonra en altına aşağıdaki satırları ekliyoruz.
  • # DB Configuration 
  • export DATABASE_TS_TYPE=sql
  • export SPRING_DATASOURCE_URL=jdbc:postgresql://localhost:5432/thingsboard
  • export SPRING_DATASOURCE_USERNAME=postgres
  • export SPRING_DATASOURCE_PASSWORD=PUT_YOUR_POSTGRESQL_PASSWORD_HERE
  • # Specify partitioning size for timestamp key-value storage. Allowed values: DAYS, MONTHS, YEARS, INDEFINITE.
  • export SQL_POSTGRES_TS_KV_PARTITIONING=MONTHS

Adım 4. Thingsboard yükleme ve Demo dataların yüklenmesi


  • sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo

Adım 5. Thingsboard servisinin başlatılması

  • sudo service thingsboard start
Servisin Start yapılması sonrası internet tarayıcınıza http://localhost:8080/  veya http://raspberry_pi_ip_adresi:8080/ ile Raspberry Pi IP adresini yazarak giriş yapabilirsiniz.

Standart olarak 3 hesap açılmıştır. Giriş yaptıktan sonra bu şifreleri değiştiriniz.
  1. System Administrator: sysadmin@thingsboard.org / sysadmin
  2. Tenant Administrator: tenant@thingsboard.org / tenant
  3. Customer User: customer@thingsboard.org / customer

Şimdi 2 numaralı kullanıcı ile oturum açalım. Demo olarak kurulan Thermostat T2 isimli cihaza girelim.





Check connectivity kısmında HTTP, MQTT ve CoAP için erişim komutları bulunmaktadır.  IoT cihazımız MQTT ile veri göndereceği için aşapıdaki komutu terminalimizde çalıştıralım.

  • mosquitto_pub -d -q 1 -h raspberry_pi_ip_adresi -p 1883 -t v1/devices/me/telemetry -u "T2_TEST_TOKEN" -m "{temperature:25}"


Çıktı aşağıdaki gibi çalışıyorsa Thingsboard Raspberry Pi 5 inize sorunsuz kurulmuş demektir.



Thingboard dashboard ekranında sıcaklık 255 verimiz görüntülenmektedir.







Thingsboard ve Raspberry Pi kurulumu hakkında yardım gerekirse yazabilirsiniz.

İyi çalışmalar.