Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
en:iot-open:remotelab:itt:controlmodule [2018/12/06 05:47] – created rim.puksen:iot-open:remotelab:itt:controlmodule [2020/07/20 09:00] (current) – external edit 127.0.0.1
Line 1: Line 1:
-===== Controller module basics=====+===== ITT Controller module basics =====
  
  
 ==== Introduction  ==== ==== Introduction  ====
-This chapter describes the IOT ITT controller module. Controller module is necessary for for any other module to work. +This chapter describes the IOT ITT controller module. The controller module is necessary for any other module to work. 
  
 {{:en:iot_homelab_kit:hardware:controller.png?200|}} {{:en:iot_homelab_kit:hardware:controller.png?200|}}
Line 13: Line 13:
 ==== Technical details ==== ==== Technical details ====
  
-Specifications +The ITT IoT controller module is based on the Wemos D1 Mini controller. Its pinout can be seen in the following schematic. 
-11 digital input/output pins + 
-Micro USB connector +{{:en:iot_homelab_kit:hardware:d1mini_pinout.png?300|}} 
-Compatible with ArduinoIDE + 
-Compatible with nodemc +==== Specifications==== 
-4 MB flash-memory +  11 digital input/output pins 
-Electrical connection+  Micro USB connector 
 +  Compatible with ArduinoIDE 
 +  Compatible with  nodemc 
 +  4 MB flash-memory 
 + 
 +==== Electrical connection ====
 Modules are using following I/O ports Modules are using following I/O ports
  
-RGB LED Shield GPIO4 +  *     RGB LED Shield GPIO4 
-Relay Shield GPIO5 +      Relay Shield GPIO5 
-OLED Display Shield GPIO4, GPIO5 +      OLED Display Shield GPIO4, GPIO5 
-Motor Shield GPIO4, GPIO5 +      Motor Shield GPIO4, GPIO5 
-Temperature/Humidity DHT Pro Shield GPIO2 +      Temperature/Humidity DHT Pro Shield GPIO2    
-Sensor Shield (ITT ver. 1.1) GPIO4, GPIO5, GPIO6, GPIO7, A0+      Sensor Shield (ITT ver. 1.1) GPIO4, GPIO5, GPIO6, GPIO7, A0 
 + 
 +==== Actuators ==== 
 +As this is the controller module, no actuators or sensors are installed to it.
  
-=== Actuators === +==== Software, libraries and externals ==== 
-This laboratory involves WS2812B RGB LEDRGB LEDs are basically three LEDs (red, green, blue) that are built inside one shell. They include a WS2812 driver that makes it possible to use only one pin to control them.+To program the controller module ITTIoT library is used. This is custom library made specifically for ITT IoT kitsIt aims to make the board easier to use with simple but yet effective methodsA non-exclusive list of methods is presented below:
  
-=== Softwarelibraries and externals === +^ Method ^ Description ^ 
-To control WS2812B RGB LED the following libaries are used: +| iot.setup() | Does the operations necessary for setting up the ITTIoT framework and MQTT communications.| 
-  * ITTIoT libary - used to program the controller module+| iot.printConfig() | Prints the module configuration to the serial port.| 
-  * Adafruit NeoPixel libary used to control the RGB LED.+| iot.handle() | Does the background work necessary for the communications to work. For examplechecks if the communication with the broker is still working and checks if any new messages have been received. This method has to be called periodically.| 
 +| iot.connected() | A method defined by the user that is called when the connection with the MQTT broker has been established. It is primarily used to subscribe to topics with the method iot.subscribe().| 
 +| iot.subscribe(String topic) | Subscribes to the topic specified as the operandFor example iot.subscribe("IoT/button") subscribes to the topic "IoT/button".| 
 +| iot.received(String topic, String msg) | User-defined method that is called when the controller receives a message from one of the subscribed topics. The topic from which the message is received is the string "topic" and the body of the message is the string "msg".| 
 +| iot.publishMsgTo(String topic, String msg, bool retain) | Publishes the message "msg" to the topic "topic". Boolean retain informs the broker if the message should be saved into the memory of the broker.|
  
-=== Communication === 
-The user can connect to this controller using the Distancelab environment.  
  
-=== Limits === +==== Communication ==== 
-At the same time one user can program the controller. But all users connected to the Distancelab MQTT broker can control the RGB LED, assuming they use the topic described in the controller program.+The user can connect to and program this controller using the Distancelab environment.
  
-==== Hands-on labs ==== +==== Limits ==== 
-//List study scenarios (hands-on labs)linking to the Dokuwiki pages with hands-on labs descriptions (there should be a separate page for each scenario)Classify each scenario and refer to the target group using starting keywords: +At the same timeone user can program the controllerBut all users connected to the Distancelab MQTT broker can subscribe to and publish messages to the topics.
-  * Beginners +
-  * Undergraduates +
-  * Masters +
-  * Professionals +
-Note, assume that more professional group automatically contains less professional ones. Note - use language and as appropriate to the target group, i.e.:// +
-<code> +
-  * Beginners: Elementary operations on the Arduino 2x16 LCD screen. +
-  * Undergraduates: Visualizing temperature and humidity on the remote screen. +
-  * Masters: Using power saving states to limit power consumption. +
-</code> +
-==== Support ==== +
-//Give some information on how to access help, how to get support in case of the trouble etc.//+
  
en/iot-open/remotelab/itt/controlmodule.1544075220.txt.gz · Last modified: 2020/07/20 09:00 (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0