Skip to content

damianobertolini/msp432_IR_Controller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 

Repository files navigation


Logo

HELICOPTER CONTROLLER

Implementation of a controller for the infrared helicopter Syma S107n using MSP432


Table of Contents
  1. About The Project
  2. Built With
  3. Installation
  4. Requirements
  5. Folder Structure
  6. Functionalities explanation
  7. Getting started
  8. Video and Presentation
  9. Team members
  10. Contact

About The Project

This project simulates an infrared remote controller using the Texas Instruments MSP432P401R microcontroller.
It allows the MSP432P401R (along with the Educational BoosterPack MKII) to send infrared signals in order to control the helicopter Syma S107n.


Built With

c

Installation

Clone the repo (or fork it)

git clone git@github.com:damianobertolini/msp432_IR_Controller.git

(back to top)

Requirements

Software requirements

To use this project, you will need the following software:

Hardware Requirements

To use this project, you will need the following hardware:

  • Texas Instruments MSP432P401R microcontroller
  • Educational BoosterPack MKII
  • Infrared emitter sensor
  • Current-limiting resistor (the best one is a 50 Ohm Resistance)
  • Jumper wires
  • HC08 Bluetooth module (you can also use the Bluetooth Module you prefer)

msp432p401r boosterpack



Setting up the hardware

Connect the various components as follows:

  • Connect the BoosterPack MKII to the MSP432P401R Launchpad.
  • Connect the cathode of the LED (in series with the transistor) to a GND pin on the MSP432.
  • Connect the anode of the LED (in series with the transistor) to the PIN 2.5 on the MSP432.
  • Connect the Bluetooth module wires to the GND and 3.3V for power and to PIN 3.2 and PIN 3.3 for data transmitting and receiving.

(back to top)

Folder structure

MSP432_Project
├── Debug                  # Compiled files 
├── Hardware               # Hardware related files
│   ├── Bluetooth          # Manages Bluetooth connection
│   ├── Clock              # Manages System Master Clock (48MHz)
│   ├── Graphics           # Manages all the graphics required
│   ├── Infrared           # Sends IR signals using PWM on PIN 2.5
│   └── Lcd                # Manages the LCD setup
├── Logic                  # Control logic and program testing
│   └── Interrupts         # Contains all the interrupts required
├── Release
├── Images                 # Images for the README
├── targetConfigs          # Target configuration files
├── main.c                 # Main source code
└── README.md

Functionalities explanation

The microcontroller shows at startup an helicopter with moving propellers, then the main menu is displayed, which contains as options:

  • Joystick
  • Accelerometer
  • Bluetooth

Each of these options, when selected, enables the use of the selected peripheral in order to drive the helicopter; the available options are:

  1. Move forward
  2. Move backward
  3. Turn right
  4. Turn left
  5. Increment power (using the upper button on Boosterpack MKII)
  6. Decrement power (using the lower button on Boosterpack MKII)

The Bluetooth option also provides a "landing" function which just smoothly decrements the power intensity of the propellers until the helicopter stops.

In order to setup the Bluetooth Connection, you need a BLE-Compatible device with Position and Bluetooth enabled, and an app for BLE Scanning and signal sending (you can choose the one you prefer, for example BLE Terminal available on Google Play). After connecting, launch the program on MSP432 and you will receive some messages which indicate that the connection is established and working.

(back to top)

Getting started

  1. Open the project in Code Composer Studio.
  2. Go to: Project → Properties → Build → Arm Compiler → Include Options and add the source directory located in simplelink_msp432p4_sdk_3_40_01_02/
  3. Go to: Project → Properties → Build → Arm Linker → File Search Path and add:
    • msp432p4xx_dreivelib.lib directory_ located in [..]/source/ti/devices/msp432p4xx/driverlib/ccs/
    • grlib.a located in [..]/source/ti/grlib/lib/ccs/m4f/
  4. Build and run the project. The Launchpad should now be displaying the graphics.

For more examples, please refer to the Documentation


Video and Presentation

(back to top)

Team Members

The project was a developed in a team and the code was divided into different areas (Logic, Hardware setup, Graphics, ...); each one of the members concentrated therefore on certain aspects of the project.

Damiano Bertolini:
  contributed to the implementation of the hardware, control logic, bluetooth and infrared controller to send signals to the IR helicopter and to the testing phase.

Matteo Beltrami:
  contributed to the creation of the graphics displayed on the lcd, to the management of the movements to control the IR helicopter and to the testing phase.

Rowan Alessandro Bevilacqua:
  contributed to the menu implementation and code review and management.


Contact

Damiano Bertolini - damybert@gmail.com
Matteo Beltrami - beltramimatteo01@gmail.com
Rowan Alessandro Bevilacqua - rowan.bevilacqua@studenti.unitn.it

Project Link: https://github.com/damianobertolini/msp432_IR_Controller

(back to top)