MIT App Inventor Projects
50+ Android and iOS Apps with Raspberry Pi, ESP32 and Arduino
By Dogan Ibrahim
Chapter 1: Introduction
- 1.1 Text-Based Programming
- 1.2 Block-Based Visual Programming
- 1.3 Example
Chapter 2: Setting up the MIT App Inventor
- 2.1 Overview
- 2.2 Setting Up the App Inventor
- 2.3 Summary
Chapter 3: Simple MIT App Inventor projects
- 3.1 Overview
- 3.2 Starting App Inventor and the Startup Screen
- 3.3 Project 1: Using a Button to Generate Sound
- 3.4 Saving the Project
- 3.5 Deleting a Project
- 3.6 Sharing a Project
- 3.7 Project 2: Using a Button, a Label, and Text Boxes – Language Translation
- 3.8 Project 3: Formatting the Layout of the Components – Language Translation
- 3.9 Project 4: Text to Speech – Fixed Text Message
- 3.10 Project 5: Text to Speech – Any Text Message
- 3.11 Project 6: Text to Speech – English to German
- 3.12 Project 7: Using Images – Learning Elementary English
- 3.13 Project 8: Speaking a Received SMS Message
- 3.14 Project 9: Sending SMS Messages
- 3.15 Project 10: Reading a Message and Sending a Reply Message Automatically when Busy
- 3.16 Project 11: Display the Received SMS Message
- 3.17 Project 12: Calling a Fixed Telephone Number
- 3.18 Project 13: Calling to Several Fixed Telephone Numbers
- 3.19 Project 14: Calling from the Contacts List
- 3.20 Project 15: Taking Pictures with the Camera
Chapter 4: MIT App Inventor projects using mathematical & logical operations
- 4.1 Overview
- 4.2 Project 1: Area of a Triangle
- 4.3 Project 2: Areas of Various Shapes
- 4.4 Project 3: Roots of a Quadratic Equation
- 4.5 Project 4: Random Numbers – Dice Numbers
- 4.6 Project 5: Quiz - Learning Multiplication
- 4.7 Project 6: Table of Trigonometric Functions
- 4.8 Project 7: Multiplication Time Tables
- 4.9 Summary
Chapter 5: Raspberry Pi 4 – specifications – setup – installing the operating system
- 5.1 Overview
- 5.2 Parts of Raspberry Pi 4
- 5.3 Requirements of Raspberry Pi 4
- 5.3.1 Setup Option 1
- 5.3.2 Setup Option 2
- 5.4 Installing the Raspberry Pi Operating System
- 5.4.1 Raspbian Buster Installation Steps on Raspberry Pi 4
- 5.5 Remote Access
- 5.6 Using Putty
- 5.6.1 Configuring the Putty
- 5.7 Remote Access of the Desktop
- 5.8 Using the Python Programming Language
- 5.8.1 Method 1: Interactively from Command Prompt
- 5.8.2 Method 2: Create a Python File in Command Mode
- 5.8.3 Method 3: Create a Python File in GUI mode – Using the Thonny
- 5.9 Which Method?
- 5.10 Accessing Raspberry Pi 4 Hardware and Peripheral Devices from Python
- 5.10.1 GPIO – Parallel Interface
- 5.10.2 The GPIO Library
- 5.11 Example Project Accessing the External World
Chapter 6: Raspberry Pi Bluetooth based projects using the MIT App Inventor
- 6.1 Overview
- 6.2 Project 1: Controlling an LED from Android Mobile Phone
- 6.3 Project 2: Sound Output while Controlling an LED
- 6.4 Project 3: Controlling an LED with Speech Commands
- 6.5 Project 4: Controlling Multiple LEDs
- 6.7 Project 6: DC Motor Speed Control
- 6.8 Project 7: Sending Temperature and Humidity to Android Device
- 6.9 Project 8: Password Protection
- 6.10 Summary
Chapter 7: Raspberry Pi Wi-Fi based projects using the MIT App Inventor
- 7.1 Overview
- 7.2 Project 1: Getting and Displaying the Local Wi-Fi Parameters
- 7.3 Project 2: Web Server to Control an LED
- 7.4 Project 3: Web Server to Control Multiple Relays
- 7.5 Project 4: Sending Ambient Temperature and Humidity to Android Mobile Phone
- 7.6 Summary
Chapter 8: Raspberry Pi Node-Red based projects using MIT App Inventor
- 8.1 Overview
- 8.2 Project 1: Controlling an LED – Web Server
- 8.3 Project 2: Controlling 4 Relays – Web Server
- 8.4 Summary
Chapter 9: Arduino Uno Bluetooth based projects using MIT App Inventor
- 9.1 Overview
- 9.2 Arduino Uno Board
- 9.3 Arduino Uno Program Development
- 9.4 Bluetooth for Arduino Uno
- 9.5 Project 1: Controlling an LED
- 9.6 Project 2: Controlling a 4 Channel Relay
- 9.7 Project 3: Controlling a 4 Channel Relay with Sound Output
- 9.8 Project 4: Controlling a 4 Channel Relay with Speech
- 9.9 Project 5: Sending Text to Arduino UNO
- 9.10 Project 6: Sending the Ambient Temperature to Android Mobile Phone
- 9.11 Project 7: Weather Watch
- 9.12 Project 8: ON-OFF Temperature Control
- 9.13 Project 9: Modified ON-OFF Temperature Control
- 9.14 Project 10: Controlling a Stepper Motor
- 9.15 Summary
Chapter 10: Arduino Wi-Fi based projects using MIT App Inventor
- 10.1 Overview
- 10.2 Arduino Uno Wi-Fi Connectivity
- 10.3 Project 1: Controlling an LED
- 10.4 Project 2: Controlling a 4 Channel Relay Module
- 10.5 Project 3: Speech Control of a 4 Channel Relay Module
- 10.6 Project 4: UDP Based Control – LED Control
- 10.7 Project 5: UDP Based Control – Digital Thermometer
- 10.8 Project 6: UDP Based Control – Speaking Thermometer
- 10.9 Summary
Chapter 11: ESP32 based projects using the MIT App Inventor
- 11.1 Overview
- 11.2 ESP32 DevKitC Hardware
- 11.3 Arduino IDE for The ESP32 DevKitC
- 11.3.1 Installing the Arduino IDE for the ESP32 DevKitC
- 11.4 Project 1: Controlling an LED – Bluetooth Communication
- 11.5 Project 2: Speech Control of an LED – Bluetooth Communication
- 11.7 Project 4: Controlling a 4 Channel Relay Module using Switch Components - Bluetooth Communication
- 11.9 Project 6: Displaying the Ambient Light Level on LCD – Bluetooth Communication
- 11.10 Project 7: Controlling an LED – Wi-Fi Communication
- 11.11 Project 8: Speaking Thermometer – Wi-Fi Communication
- 11.12 Project 9: Saving the Temperature Data – Wi-Fi Communication
- 11.13 Summary
Appendices
- Appendix A: Exercises
- Appendix B: Using the MIT App Inventor offline
- B.1 Overview
- B.2 Installing the App Inventor Ultimate
- Appendix C: Loading the programs from the book website
- C.1 File Extensions
- C.2 Loading MIT App Inventor Programs
- C.3 Loading Android UNO Programs
- C.4 Loading ESP32 DevKitC Programs
- Appendix D: MIT App Inventor extension components
- Appendix E: List of components used in the book
- Processors used
- Index