Skip to content

jsong060/VoiceRemoteApp

Repository files navigation

VoiceRemoteApp

Android Studio + Arduino ESP32 based project for Hack the Hill Hackathon event held in University of Ottawa between March 3-5, 2023, with the task of completing one or more of the challenges within 36 hrs.

Table of Contents

Challenges participated

Task

The project is tasked to provide a solution to the problem that many people with disabilities who use power recliner chairs or remote controlled hospital beds with reduced mobility cannot push the buttons on their chairs/beds' remote controls with physical power. The challenge was introduced by TetraSociety.

Project Summary

A design solution comprising of 5 cascading communicating components to achieve a voice operated, software+hardware driven mechanical system was layed out:

  • Command based voice recognition
  • Text filtering/parsing and generating data packets containing control signals
  • Android Bluetooth Low Energy (BLE) client/peripheral system
  • Arduino ESP32 Bluetooth Low Energy (BLE) server/center system
  • Mechanical servo system controlled by Arduino ESP32

Scope of Capability

VoiceRemote App

The Android app is capable of selectively receiving voice commands, with optional duration parameter passing through voice as well. The speech is transcribed and filtered, then converted to serially transmittable string packets to be sent through the peripheral output of the Android system's BLE functionality.

Speech is transcribed in real-time in determined short time intervals using Android's SpeechRecognizer library. Provides the user to prompt a programmable button command, e.g. "up two" for pressing the up button for two seconds, or just "down" for pressing the down button for a programmed default interval.

Arduino ESP32 Bluetooth Low Energy (BLE) Server System

The ESP32 board is programmed to host a BLE server to scan for serial peripheral input at a baud rate of 115200 bps. The serial input is converted into control signals for the servos to control button interaction.

Arduino ESP32 Steel-geared Servo System

The ESP32 is also programmed to get the serial control input and translate that into a set of servo control signals for button interaction. The placement of the buttons can be customizable for possible future implementations, allowing up to multiple button interactions and different time intervals, potentially allowing generic application for various remote control devices.

Further information

ChairIO (Voice-Automated Chair Controller)

Team Members

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published