IoT
Bitraf IoT er en gruppe med folk som synes "internet of things" er spennende og vil lage IoT-ting for Bitraf
- Meldingsflyt: https://iot.bitraf.no/live
- Kode med oppsett, kildekode og diverse: https://github.com/bitraf/bitraf-iot
- Grafer og historikk i OpenMCT: http://iot.bitraf.no:8080
- OpenHAB: https://openhab.bitraf.no
I dag (oktober 2016) har vi to typer ting som er satt opp: dørsystemet og temperatur-/fuktighetsmålinger på Bitraf.
Innhold
MQTT
Bitrafs MQTT-tjener er åpen og tilgjengelig for alle medlemmer:
- Host
- mqtt.bitraf.no
- Plain-port
- 1883
- TLS-port
- 8883
- Websockets (med TLS)
- 9001
Det meste er basert på MQTT. For å se på trafikken kan du bruke nettleseren eller en kommandolinjeklient fra f.eks. Mosquitto. Bitrafs produksjonsoppsett bruker bitraf/# (eller /bitraf/#), mens alle eksperimenter bruker public/# som topic.
Nettleserklienten er installert på https://mqtt.bitraf.no/web.
For å se alle meldinger med Mosquittos kommandolinjeklient, bruk denne kommandoen:
mosquitto_sub -h mqtt.bitraf.no -v \ -t bitraf/# -t /bitraf/# \ -t /public/# -t public/#
MQTT-stil
MQTT-protokollen spesifiserer lite av hvordan topics skal brukes så dette er vår stil. Denne delen er levende og bygges ut etterhvert som vi får mer erfaring.
- Topics starter uten slash: foo, ikke /foo.
- Ikke alle tjenestene oppdatert med denne standarden enda.
- For testing og utvikling bruker public/#.
- Dette området vil alltid være åpent for bruk.
- Dette området oppfordrer vi medlemmer til å bruke så mye de vil. Bruk gjerne public/$brukernavn/ som prefiks.
- For Bitrafs egne tjenester bruker vi bitraf/#. De fleste tjenestene er åpne og lesbare for alle for alle, mens noen vil være skrivebeskyttet og noen også lesebeskyttet.
Protokoller
Denne delen beskriver de topicene som de enhetene vi har lagd sender på.
Temperatur
Prefiks: bitraf/temperature/$id
Temperaturen sendes på topicen $id/value som en tekststreng som er antall grader med desimaler, f.eks.:
bitraf/temperature/1/value
Luftfuktighet
Prefiks: bitraf/humidity/$id
Luftfuktigheten sendes på topicen $id/value som en tekststreng som er antall prosent luftfuktighet.
bitraf/humidity/1/value
Enhet
bitraf/device/1/value
Enheter
Denne typen er eksperimentell.
bitraf/device/1/value
boxy2
Døråpner i 2.
boxy4
Døråpner i 4.
arduino-button-box
ESP8266/NodeMCU-basert boks som har knapper og temperatursensor.
Implementerer temperatur (id=1) og humidity (id=1).
Kildekode: https://github.com/bitraf/bitraf-iot/tree/master/arduino-button-box