Challenge

Challenge

With this step by step challenge you will enhance 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. Linux Driver Kernel Module LCD Display Features

  2. Linux Driver Kernel Module LCD Display Main

  3. Linux Driver Userspace Module Temperature

  4. Linux Driver Kernel Module Temperature

  5. Linux Kernel Mainline Support LCD and Temperature

  6. Push your code

01 Linux Driver Kernel Module LCD Display Features

Section Link

Instruction

Enable support for the following Display features: 1. Display On/Off Control 2. Display Lines, 2 Line Support 3. Display Shift (Banner, Marquesina), Text string longer than number of characters 4. Display Clear

02 Linux Driver Kernel Module LCD Display Main

Section Link

Instruction

Implement a Python script to handle MQTT subscribe topic, once a message is received then display it under the LCD via the Linux Driver Kernel Module

03 Linux Driver Userspace Module Temperature

Section Link

Instruction

Write a driver in User Space (MRAA) for your Analog Temperature Sensor from Grove Kit

04 Linux Driver Kernel Module Temperature

Section Link

Instruction

Write a driver in Kernel Space (.ko) for your Analog Temperature Sensor from Grove Kit

05 Linux Kernel Mainline Support LCD and Temperature

Section Link

Instruction

Look if both Linux Kernel Intel Edison and Linux Kernel Mainline versions (under drivers/misc) have support for the LCD and Temperature modules and enable them, in case support is not available enable both drivers your have written in your Yocto Board Support Package Compilation

Mainline

06 Software Version Control System Pushing Code

Section Link

Instruction

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

ToDo Diretory Structure

Last updated