Jump to: navigation, search

Difference between revisions of "Mihini/EclipseCon2013 Tutorial"

(Introduction to Mihini)
(updating tutorial page: not a working page anymore but a reference to tutorial ressouces)
Line 16: Line 16:
 
=== FUN!!!!!! ===
 
=== FUN!!!!!! ===
  
== Key steps ==
+
== Key steps to reproduce the tutorial==
  
=== Introduction to the greenhouse demo ===
 
 
{{Note|TODO| slides: Benjamin}}
 
 
=== Introduction to Mihini ===
 
 
DONE.
 
 
==== Features ====
 
 
DONE.
 
 
==== Overall architecture ====
 
 
DONE.
 
 
=== Introduction to Koneki tools for Mihini ===
 
 
{{Note|TODO| slides: Benjamin}}
 
  
 
=== Installation of Lua Development Tools (all-in-one bundle) ===
 
=== Installation of Lua Development Tools (all-in-one bundle) ===
  
DONE.
 
  
==== Write and run a local Lua example ====
+
==== M3DA Server ====
  
{{Note|TODO| instructions ?}}
+
tcp://m2m.eclipse.org:44900
  
==== Configure remote system ====
+
Run you own instance:
  
{{Note|TODO| instructions ?}}
 
  
==== Remote launch the previous example ====
+
=== End user android application ===
  
{{Note|TODO| instructions ?}}
 
  
=== Local communication ===
+
=== Running Mihini on RaspberryPi ===
  
{{Note|TODO| slides Laurent}}
 
  
==== Modbus API ====
+
==== Compile and run Mihini manually ====
  
{{Note|TODO| slides Laurent}}
+
Available instructions [[Mihini/Run_Mihini_on_an_Open_Hardware_platform|here]]
 
+
=== Greenhouse tutorial ===
+
 
+
{{Note|TODO| slides ?}}
+
 
+
==== Read/write some values with modbus ====
+
 
+
{{Note|TODO| instructions ?}}
+
 
+
==== Install execution environment ====
+
 
+
{{Note|TODO| instructions ?}}
+
 
+
==== Create new Mihini project ====
+
 
+
{{Note|TODO| instructions ?}}
+
 
+
=== Introduction to push data ===
+
 
+
{{Note|TODO| slides: Benjamin}}
+
 
+
==== M3DA protocol ====
+
 
+
{{Note|TODO| slides : Julien}}
+
 
+
==== push data API ====
+
 
+
{{Note| First Version OK | slides: Laurent}}
+
 
+
=== Add server communication to the code ===
+
 
+
{{Note|TODO| instructions ?}}
+
 
+
==== push data ====
+
 
+
{{Note|TODO| instructions ?}}
+
 
+
==== m2m.eclipse.org ====
+
 
+
{{Note|TODO| instructions/slides ?}}
+
 
+
==== JSon API for displaying data ====
+
 
+
{{Note|TODO| instructions/slides ?}}
+
 
+
=== Go further ===
+
 
+
{{Note|TODO| slides ?}}
+
 
+
==== App con ====
+
 
+
{{Note|TODO| slides: Laurent}}
+
 
+
==== End user android application ====
+
 
+
{{Note|TODO| slides ?}}
+
 
+
 
+
 
+
=== Installation of Mihini ===
+
 
+
Participants will compile and install Mihini on the Raspberry Pi based on the instructions available [[Mihini/Run_Mihini_on_an_Open_Hardware_platform|here]]
+
 
+
==== Compile Mihini source code ====
+
  
 
* Copy (git clone?) the sources of Mihini on the Raspberry Pi
 
* Copy (git clone?) the sources of Mihini on the Raspberry Pi
Line 133: Line 46:
 
* Brief presentation of the defaultconfig ; tweak the few settings that will simplify development
 
* Brief presentation of the defaultconfig ; tweak the few settings that will simplify development
  
==== First Mihini launch ====
 
  
* Start Mihini on the target
 
* Open a telnet connection on port 2000 to play with the agent's shell
 
** a = 1
 
** print(a)
 
** :agent.config.get('shell')
 
 
==== Hello World REMOTE ====
 
 
* Configure a new Remote System corresponding to the Raspberry Pi inside LDT
 
* Launch the previously written Hello World using a remote launch conf
 
* Do a remote debug
 
  
 
=== Setting up the Arduino ===
 
=== Setting up the Arduino ===
  
* First step will be to setup the arduino with a blinking LED
+
Exact Demo arduino code is in -->  
 
+
{{Note|TODO|Prepare Arduino IDE archives (mac, linux, win) for the USB stick}}
+
 
+
{{Note|TODO|Fritzing schematic of the blinking LED setup?}}
+
 
+
 
+
* Next is the instalation of the Modbus stack --> https://github.com/kartben/mihini-greenhouse-demo/tree/master/SimpleModbusSlaveExample
+
 
+
=== Remote run/debug ===
+
Log hello on the module.
+
 
+
 
+
  
=== Wireless code ===
+
instalation of the Modbus stack --> https://github.com/kartben/mihini-greenhouse-demo/tree/master/SimpleModbusSlaveExample
Upload first data on internet using MQTT and AirVantage
+
  
=== Install application ===
 
Show how to install an application using mihini (and airVantage)
 
  
 
== Hardware ==
 
== Hardware ==

Revision as of 13:16, 27 March 2013

Tutorial

EclipseCon 2013 Tutorial plan.

Tutorial material is hosted at https://github.com/SierraWireless/eclipsecon2013-m2m-tutorial

Goals

Show Mihini

  • show key APIs such as logging, sched, airvantage, devicetree, (sms?)...
  • show how it's easy to do I/O manipulation and wireless communication

Koneki for Mihini

  • show how Lua is easy to edit thanks to LDT tooling
  • show EE and remote development for Mihini

FUN!!!!!!

Key steps to reproduce the tutorial

Installation of Lua Development Tools (all-in-one bundle)

M3DA Server

tcp://m2m.eclipse.org:44900

Run you own instance:


End user android application

Running Mihini on RaspberryPi

Compile and run Mihini manually

Available instructions here

  • Copy (git clone?) the sources of Mihini on the Raspberry Pi
Note.png
TODO
Provide a copy of the git repo on the USB stick???


  • Compile Mihini (and its Lua VM)
  • Brief presentation of the defaultconfig ; tweak the few settings that will simplify development


Setting up the Arduino

Exact Demo arduino code is in --> 
instalation of the Modbus stack --> https://github.com/kartben/mihini-greenhouse-demo/tree/master/SimpleModbusSlaveExample


Hardware

The main hardware will be a Raspberry Pi (running Mihini) connected to an Arduino ; the Arduino itself being connected to several sensors/actuators.

Bill of materials

Item Qty
Raspberry Pi 1x
Arduino Uno 1x
Grove kit or equivalent 1x
Micro USB cable 1x
4GB SD card 1x
USB 1A power supply 1x
USB A-B cable 1x
Wifi dongle (Netgear WNA1000M-100FRS)* 1x
  • this might not be the best option for the US market (sounds look it is way more expensive than in Europe?)


Ordering everything from Adafruit would be: