Challenge

Challenge

With this step by step challenge you will maximize the capacity of your Development Board by writing functionality both in User Space and Kernel Space from the topics you have learned during the workshop.

  1. Build Systems, Yocto Board Support Package, Compilation, Make

  2. Build Systems, Yocto Board Support Package, Compilation, Make, Kernel Version

  3. Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module

  4. Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module, Load Automatically At Boot Time

  5. Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module, InternetOfThings101/main.py

  6. Initialization, Dual Boot

  7. User Space, Virtual Network Computing

  8. User Space, Services

  9. Libraries, Temboo

  10. Subsystems LED

  11. Application Development, Bots, Telegram Bot

  12. Application Development, Artificial Intelligence, Wit.Ai

  13. Software Version Control System Pushing Code

00 Build Systems, Yocto Board Support Package, Compilation, Make

Section Build Systems Yocto Board Support Package Compilation

Instruction

Under your Linux Host Development, install the required dependencies, download and decompress the Intel Edison Linux Sources and compile your own Intel Edison Board Support Package

01 Build Systems, Yocto Board Support Package, Compilation, Make, Kernel Version

Section Build Systems Yocto Board Support Package Compilation

Instruction

Choose another version / branch and compile

02 Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module

Section Build Systems Yocto Board Support Package Modules

Instruction

Write a Linux Kernel module under that gets registered under /sys/kernel/sensor using Native Compilation, Simulated Sensor Kernel Module will generate a random number

Look at Linux Kernel Sysfs Documentation

root@edison:~# ls /sys/kernel/sensor
status
root@edison:~# cat /sys/kernel/sensor/status
456
root@edison:~#

03 Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module, Load Automatically At Boot Time

Section Build Systems Yocto Board Support Package Modules

Instruction

Make your Simulated Sensor Module load automatically at boot time by incorporating your Linux Kernel module into your Yocto Board Support Package Compilation

04 Build Systems, Yocto Board Support Package, Modules, Simulated Sensor Kernel Module, InternetOfThings101/main.py

Section Build Systems Yocto Board Support Package Modules

Instruction

Under EmbeddedLinux/main.py replace existing functionality/logic under functionDataSensor to use now the random number generated by the Simulated Sensor Kernel Module

05 Initialization, Dual Boot

Section Initialization Dual Boot

Instruction

Allow Intel Edison to boot Ubilinux from uSD, Yocto shall be maintained under main flash partition

06 User Space, Virtual Network Computing

Section User Space Virtual Network Computing

Instruction

Enable Virtual Network Computing server from Ubilinux under uSD, access Intel Edison from your Development Host using Virtual Network Computing client

07 User Space, Services

Section User Space Services

Instruction

Configure SystemD to run your script EmbeddedLinux/main.py on startup

08 Libraries, Temboo

Section Libraries Temboo

Instruction

Implement 1 CHOREOS under EmbeddedLinux/main.py

09 Subsystems, LED

Section Subsystems LED

Instruction

Enable under your Yocto Board Support Package Compilation the macros LEDS_TRIGGERS and LEDS_TRIGGER_HEARTBEAT so you can control a Led from the Grove Indoor Environment Kit attached to one of the GPIOs

10 Application Development, Bots, Telegram Bot

Section Application Development Bots

Instruction

Create a new Bot and implement under your script EmbeddedLinux/main.py 2 commands, to report data from functionDataSensor and to execute the action under functionDataActuator from any Telegram client

11 Application Development, Artificial Intelligence, Wit.Ai

Section Application Development Artificial Intelligence Wit.Ai

Instruction

Implement under your script EmbeddedLinux/main.py 2 commands, to report data from functionDataSensor and to execute the action under functionDataActuator from from the Wit.Ai bot

12 Software Version Control System Pushing Code

Section Software Version Control System

Instruction

Confirm every code under your local "TheIoTLearningInitiative" git repository, "EmbeddedLinux" directory is uploaded to your remote "TheIoTLearningInitiative" github repository

ToDo Diretory Structure

Last updated