Skip to content
This repository has been archived by the owner on Dec 28, 2019. It is now read-only.

mekanoid/MMRC-start

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 

Repository files navigation

 __  __ __  __ ___  ___
|  \/  |  \/  | _ \/ __|
| |\/| | |\/| |   / (__
|_|  |_|_|  |_|_|_\\___| - start

Modern Model Railroad Control - software for ESP866 wifi capable Arduino and clones.

Översikt

Detta program är gjort för att testa wifi och MQTT på Arduino-kompatibla kretskortsdatorer. Via MQTT-meddelanden eller en knapp kan du tända och släcka Arduinons/klonens inbyggda lysdiod.

Förutsättningar

För att kunna använda programmet behöver du följande:

  • Trådlöst nätverk (Wifi)
  • En MQTT-server (t.ex. Mosquitto) ansluten till trådlösa nätverket
  • En Arduino (eller motsvarande) med inbyggd eller inkopplad ESP8266-krets för trådlös nätverkskommunikation
  • Dator med Arduino IDE
  • MQTT-klient, exempelvis Linear MQTT Dashboard på en Android-telefon
  • Kabel mellan dator och Arduino (vanligen USB micro B)

Programmet är testat på Wemos D1 mini och NodeMCU men det bör kunna fungera på vilken Arduino/klon som helst som använder en ESP8266-krets för trådlös kommunikation. Wemos D1 mini finns att köpa hos exempelvis svenska Lawicel för 49 kr, precis som NodeMCU (2019-12-01).

Gör så här

Det krävs ganska många steg för att få igång MMRC på en kretskortsdator. Inget är speciellt svårt och det mesta behöver bara göras en gång, men det är inget för nybörjaren. Dessa instruktioner är väldigt översiktliga, mer detaljerade kanske kommer med tiden...

En gång:

  • Installera en MQTT-broker på en dator ansluten till nätverket
  • Installera Arduino IDE på valfri dator
  • I Arduino IDE måste tre olika "libraries" installeras: EasyButton, IotWebConf och PubSubClient
  • För vissa kretskortsdatorer måste man på Windows installera drivrutiner för en USB-krets som heter CH340
  • Ladda hem MMRC-start från Github & packa upp i Arduino IDEs skissbok (projektmapp)

För varje klient:

  • Leta reda på MMRCsettings.h och anpassa den för din situation
  • Starta Seriell Monitor i Arduino IDE (inte nödvändigt, men bra första gången)
  • Ladda in programmet i Arduino IDE, koppla in kretskortsdator via USB och prova ladda ner programmet

Har allt gått bra så ska du nu i Seriell Monitor kunna se att kretskortsdator kopplar upp sig mot nätverk och MQTT samt börjar prenumerera på ett ämne. Prova sen att från en annan dator/telefon publicera texten "one" till "mmrc/[ENHETENS ID]/button01/push/set", så ska lysdioden på kretskortsdator tändas och släckas varannan publicering. Varje publicering motsvarar alltså ett tryck på en (återfjädrande) knapp.

Varje gång lysdioden tänds eller släck, bekräftar programmet det genom att publicera texten "hign" eller "low" till "mmrc/[ENHETENS ID]/button01/status". Prenumerera på ämnet i en dator/telefon för att se denna status ändras.