This Book is all about Interfacing Android with Embedded Systems. This book guides the beginners for creating GUI with Android SDK & Interfacing Bluetooth , WiFi with Embedded System. DIY Android based Bluetooth & WiFi projects included.
This document provides an introduction and tutorial on Android concepts and programming. It covers installing the Android SDK and setting up a development environment. It then demonstrates how to create a simple "Hello World" Android app with basic UI elements like buttons, edit texts, and text views. It also introduces some key Android concepts like activities, intents, and the sensor manager API for accessing device sensors. The goal is to help readers quickly get started with Android programming and cover topics not fully explained in the Android documentation.
Windows phone 8 guide for android developersKhai Le
Windows Phone and Android both emphasize direct manipulation through touch interfaces and visual elements. While Windows Phone uses a start screen of live tiles rather than app icons, the core design principles are similar - focusing on usability, simplicity and key user scenarios given the constraints of mobile devices. Windows Phone provides controls similar to Android widgets that can be manipulated through common touch gestures. Developers can leverage their Android experience when designing for the Windows Phone interface.
This document summarizes the key features of Android Nougat 7.1. It discusses the history and beta releases of Nougat. The main features include split-screen multitasking, bundled notifications, Doze battery improvements, and support for Vulkan graphics. Advantages include better performance, longer battery life, and multitasking. High-end hardware is required and users should prepare before updating. In conclusion, Nougat provides faster performance and is good for gamers due to multitasking capabilities.
The document provides guidance for Android developers looking to create applications for Windows Phone 7. It compares the programming stacks and frameworks between Android and WP7. While there are similarities in design principles, WP7 applications should take advantage of unique Metro design guidelines. The document outlines user interface guidelines, development tools, programming languages, application lifecycles and data storage between the two platforms.
This document summarizes a mobile computing lab session on creating user interfaces in Android. The key topics covered include:
1. Introduction of common Android views like TextView, EditText, Button and ImageView. Views are basic UI elements and ViewGroups arrange views in layouts.
2. Demonstration of common Android layouts - LinearLayout arranges views vertically or horizontally, RelativeLayout positions views relative to each other, TableLayout arranges views in a table, and FrameLayout overlays views.
3. Explanation of five different methods to handle button click events in Android - using XML onClick attribute, implementing OnClickListener interface, inner classes, interface variables, and anonymous inner classes.
This document provides an overview of the Windows Phone 7 development platform for iPhone application developers. It covers the key differences and similarities between the two platforms, including the development tools, programming languages, UI frameworks, and application lifecycles. The document is organized into multiple chapters that introduce Windows Phone 7 concepts and guide iPhone developers on migrating their skills and applications to the new platform.
Android Development: Build Android App from ScratchTaufan Erfiyanto
a month ago, i have a change to held a one day workshop about Android development at Phetchaburi Rajabhat University, Thailand. The workshop is attended by students and lecturers. it is a pleasure to me to see many people that excited to learn android development.
This is a presentation slide of my presentation. in this presentation you will learn about how to build create a simple to do list app from scratch.
content of the presentation slide:
- Introduction: what Android is?
- Android development tools
- Creating Android Project
- Understanding the Project Structure
- Creating Android Emulator
- Running Android Project on Emulator
- Running Android Project on Device
- Creating User Interface
- Manipulating Widget
- Creating To Do List App
- Integrating SQLite Database to Android Project
This document outlines the objectives and topics covered in an Android development training course offered by www.apponix.com. The training will cover setting up Android Studio, Java programming fundamentals, building user interfaces, managing inputs and buttons, using variables and arrays, the app lifecycle, SQLite databases, connecting to web services, maps and location services, deploying apps, XML layouts, different screen sizes and rotations, keyboard and touch inputs, and displaying notifications. It also describes the Associate Android Developer certification exam, expected salary range after completion, and high job demand and opportunities for Android developers.
The document provides an introduction to Android including:
- An overview of Android as an open source platform designed for mobile devices championed by Google.
- Explanations of Android versions and code names over time as the platform evolved from 2008 to present.
- Details on how 500 million Android devices were activated globally by September 2012.
- Reasons why Android is a good platform for developers, including its security, features, application framework, and native libraries.
- Instructions on setting up an IDE like Eclipse or Android Studio to begin developing Android apps.
- Examples of basic Android code for declaring activities, passing data between activities using intents, and switching between activities.
The document is a seminar report on Android and Android architecture. It discusses the history and introduction of Android, key aspects of the Android architecture including its layered design with the Linux kernel at the bottom and applications at the top, and describes Android versions, features, advantages, and disadvantages. It also covers the Open Handset Alliance and provides an overview of Android security.
Android is an open source operating system designed primarily for touchscreen mobile devices. It uses Linux for core functions like memory and process management and includes features like an open application marketplace (Google Play), built-in security protections, and regular updates to newer platform versions codenamed after desserts. Android's flexibility allows it to run on a variety of hardware, expand its functionality through customization, and offer developers an easy environment to create applications for a wide user base.
Android is an open source software stack for mobile devices that includes an operating system, middleware and key applications. It was developed by Google and the Open Handset Alliance to advance open standards for mobile devices. When released in 2008, most of the Android platform was made available under the Apache free-software and open-source license. The unveiling of Android was announced with the founding of the Open Handset Alliance, a consortium of 34 hardware, software and telecom companies devoted to advancing open standards for mobile devices.
installation and configuration Android Studio provides the fastest tools for building apps on every type of Android device.
World-class code editing, debugging, performance tooling, a flexible build system, and an instant build/deploy system all allow you to focus on building unique and high quality apps.
Introduction to everything around Android:-
Android mobile operating system
Android app
Android app sandboxing
Android app development platform
Android emulators and advance techniques
Android device administration
Sample App
Day 2 android internals a quick overviewAhsanul Karim
Android is an open source software stack that includes an operating system, middleware, and key applications for mobile devices. It uses the Linux kernel for core system services like memory management and process management. The Android runtime uses the Dalvik virtual machine. The application framework provides APIs for location services, connectivity, multimedia, sensors, and more. Developers can create Android applications using the Android SDK which provides tools and APIs to access device capabilities.
The document provides information about setting up the Android development environment using Eclipse. It discusses downloading the Android SDK starter package, installing the ADT plugin for Eclipse, and adding Android platforms and components to the SDK using the Android SDK and AVD Manager. The typical layout of the Eclipse IDE for Android development is shown, including the ADT plugin extensions. Steps for creating an Android Virtual Device for use with the emulator are also outlined.
The document provides an overview of Android development. It discusses what Android is, its architecture including the Linux kernel, libraries, Dalvik virtual machine and application framework. It then demonstrates how to set up an Android development environment in Eclipse, and walks through building a simple "Hello World" Android app that displays text when run on an emulator. The app's components like layouts, strings, and icons are also explained.
Introduction to Android Development: Before Getting StartedAhsanul Karim
Android application development seminar focused on getting started. The document provided an overview of mobile and smartphone applications and platforms like Android, discussed why developers should learn the Android platform due to its open source nature, vast opportunities for distribution and business advantages over other platforms. It suggested holding workshops and training programs going forward to help novice developers learn.
This seminar report discusses Android. It provides a brief history of Android including Google's acquisition of Android Inc. in 2005 and releases of the Android SDK. It describes Android as an open software platform for mobile development that uses Linux and is developed as part of the Open Handset Alliance. The report outlines Android's architecture including its use of Linux for core systems and the Dalvik virtual machine. It also discusses Android tools like the emulator, DDMS, and ADB. In closing, it notes some advantages of Android like running multiple apps simultaneously and its large app market.
This document provides instructions for setting up the Android development environment. It explains that you need to install the Java Development Kit (JDK), Android SDK, and Android Developer Tools (ADT) plugin for Eclipse. You then need to download the ADT bundle, extract the ZIP file, and launch Eclipse to open the integrated development environment. From there you can create and run Android applications and configure an Android Virtual Device for testing apps in an emulator.
The Android emulator allows developers to test Android applications without using physical devices. It simulates key aspects of an Android device including hardware, software, and various form factors. The emulator runs on the computer and displays an emulated Android device that developers can interact with. It supports running multiple emulated Android devices at once with varying configurations defined through Android Virtual Devices (AVDs). The emulator and AVDs allow easy prototyping and testing of Android applications across different device profiles before releasing to physical hardware.
Android Application Devlopment. A Guide for the Intermediate Developer. Degree Thesis in Computer Science presented at Malmo Univerity, School of Technology, Department of Computer Science June 4, 2010.
I used this deck to give an overview on Android development for Android Development professional training in DyCode Edu.
More information on the training, please refer to http://edu.dycode.co.id
This document provides instructions for setting up the development environment and coding a basic "Hello World" Android application. It includes steps for installing the Java Development Kit (JDK), Android SDK, configuring the Android Virtual Device (AVD), and creating a new Android project in Eclipse. It then walks through coding the app's layout, main activity class, and manifest file. Later sections add functionality like displaying Toast notifications and creating a new activity for camera access. The document teaches Android app development basics through a tutorial approach of building on a simple starter app.
1. The document discusses programming with sensors on Android devices. It describes creating a project to test which sensors are supported on a device and in the emulator.
2. Code examples are provided to check for support of various sensors like accelerometer, light, magnetic field, and orientation sensors.
3. The document also discusses an example of using the accelerometer sensor to move an image based on device movement. It describes using a sensor simulator library for emulator testing and registering sensor event listeners.
Android is an open source operating system used worldwide in smartphones. It is based on Linux and developed by Google. There have been many versions of Android released since the first one in 2008, with the most recent being KitKat. Android allows developers to create applications and games and distribute them through app stores, fueling its popularity. The document provides instructions on getting started with Android development using Java and outlines some basic UI components like buttons, text views and making toasts.
This document is an industrial internship report submitted by Sujeet Kumar Yadav for their Bachelor of Technology degree. It details their internship focused on Android app development. The report includes chapters on introducing apps and Android, knowing Android, starting an Android project, important Android concepts, and examples of apps created including ones for audio/video recording and using seek bars. It provides an overview of their learning and experience developing basic Android apps during their internship.
Android Design Patterns in Mobile Application Development - Michalis Grigorop...Michail Grigoropoulos
Design patterns help developers and designers to solve common design problems by using tested and user friendly solutions. The term can be applied to both directions to build a thing and the thing itself. The purpose of this study is to present such solutions and examine their applicability in android application development and user experience. For the study's purposes, an application called "Messeme" was developed based on some of the design patterns that are presented in the Second section of this Thesis.
This document outlines the objectives and topics covered in an Android development training course offered by www.apponix.com. The training will cover setting up Android Studio, Java programming fundamentals, building user interfaces, managing inputs and buttons, using variables and arrays, the app lifecycle, SQLite databases, connecting to web services, maps and location services, deploying apps, XML layouts, different screen sizes and rotations, keyboard and touch inputs, and displaying notifications. It also describes the Associate Android Developer certification exam, expected salary range after completion, and high job demand and opportunities for Android developers.
The document provides an introduction to Android including:
- An overview of Android as an open source platform designed for mobile devices championed by Google.
- Explanations of Android versions and code names over time as the platform evolved from 2008 to present.
- Details on how 500 million Android devices were activated globally by September 2012.
- Reasons why Android is a good platform for developers, including its security, features, application framework, and native libraries.
- Instructions on setting up an IDE like Eclipse or Android Studio to begin developing Android apps.
- Examples of basic Android code for declaring activities, passing data between activities using intents, and switching between activities.
The document is a seminar report on Android and Android architecture. It discusses the history and introduction of Android, key aspects of the Android architecture including its layered design with the Linux kernel at the bottom and applications at the top, and describes Android versions, features, advantages, and disadvantages. It also covers the Open Handset Alliance and provides an overview of Android security.
Android is an open source operating system designed primarily for touchscreen mobile devices. It uses Linux for core functions like memory and process management and includes features like an open application marketplace (Google Play), built-in security protections, and regular updates to newer platform versions codenamed after desserts. Android's flexibility allows it to run on a variety of hardware, expand its functionality through customization, and offer developers an easy environment to create applications for a wide user base.
Android is an open source software stack for mobile devices that includes an operating system, middleware and key applications. It was developed by Google and the Open Handset Alliance to advance open standards for mobile devices. When released in 2008, most of the Android platform was made available under the Apache free-software and open-source license. The unveiling of Android was announced with the founding of the Open Handset Alliance, a consortium of 34 hardware, software and telecom companies devoted to advancing open standards for mobile devices.
installation and configuration Android Studio provides the fastest tools for building apps on every type of Android device.
World-class code editing, debugging, performance tooling, a flexible build system, and an instant build/deploy system all allow you to focus on building unique and high quality apps.
Introduction to everything around Android:-
Android mobile operating system
Android app
Android app sandboxing
Android app development platform
Android emulators and advance techniques
Android device administration
Sample App
Day 2 android internals a quick overviewAhsanul Karim
Android is an open source software stack that includes an operating system, middleware, and key applications for mobile devices. It uses the Linux kernel for core system services like memory management and process management. The Android runtime uses the Dalvik virtual machine. The application framework provides APIs for location services, connectivity, multimedia, sensors, and more. Developers can create Android applications using the Android SDK which provides tools and APIs to access device capabilities.
The document provides information about setting up the Android development environment using Eclipse. It discusses downloading the Android SDK starter package, installing the ADT plugin for Eclipse, and adding Android platforms and components to the SDK using the Android SDK and AVD Manager. The typical layout of the Eclipse IDE for Android development is shown, including the ADT plugin extensions. Steps for creating an Android Virtual Device for use with the emulator are also outlined.
The document provides an overview of Android development. It discusses what Android is, its architecture including the Linux kernel, libraries, Dalvik virtual machine and application framework. It then demonstrates how to set up an Android development environment in Eclipse, and walks through building a simple "Hello World" Android app that displays text when run on an emulator. The app's components like layouts, strings, and icons are also explained.
Introduction to Android Development: Before Getting StartedAhsanul Karim
Android application development seminar focused on getting started. The document provided an overview of mobile and smartphone applications and platforms like Android, discussed why developers should learn the Android platform due to its open source nature, vast opportunities for distribution and business advantages over other platforms. It suggested holding workshops and training programs going forward to help novice developers learn.
This seminar report discusses Android. It provides a brief history of Android including Google's acquisition of Android Inc. in 2005 and releases of the Android SDK. It describes Android as an open software platform for mobile development that uses Linux and is developed as part of the Open Handset Alliance. The report outlines Android's architecture including its use of Linux for core systems and the Dalvik virtual machine. It also discusses Android tools like the emulator, DDMS, and ADB. In closing, it notes some advantages of Android like running multiple apps simultaneously and its large app market.
This document provides instructions for setting up the Android development environment. It explains that you need to install the Java Development Kit (JDK), Android SDK, and Android Developer Tools (ADT) plugin for Eclipse. You then need to download the ADT bundle, extract the ZIP file, and launch Eclipse to open the integrated development environment. From there you can create and run Android applications and configure an Android Virtual Device for testing apps in an emulator.
The Android emulator allows developers to test Android applications without using physical devices. It simulates key aspects of an Android device including hardware, software, and various form factors. The emulator runs on the computer and displays an emulated Android device that developers can interact with. It supports running multiple emulated Android devices at once with varying configurations defined through Android Virtual Devices (AVDs). The emulator and AVDs allow easy prototyping and testing of Android applications across different device profiles before releasing to physical hardware.
Android Application Devlopment. A Guide for the Intermediate Developer. Degree Thesis in Computer Science presented at Malmo Univerity, School of Technology, Department of Computer Science June 4, 2010.
I used this deck to give an overview on Android development for Android Development professional training in DyCode Edu.
More information on the training, please refer to http://edu.dycode.co.id
This document provides instructions for setting up the development environment and coding a basic "Hello World" Android application. It includes steps for installing the Java Development Kit (JDK), Android SDK, configuring the Android Virtual Device (AVD), and creating a new Android project in Eclipse. It then walks through coding the app's layout, main activity class, and manifest file. Later sections add functionality like displaying Toast notifications and creating a new activity for camera access. The document teaches Android app development basics through a tutorial approach of building on a simple starter app.
1. The document discusses programming with sensors on Android devices. It describes creating a project to test which sensors are supported on a device and in the emulator.
2. Code examples are provided to check for support of various sensors like accelerometer, light, magnetic field, and orientation sensors.
3. The document also discusses an example of using the accelerometer sensor to move an image based on device movement. It describes using a sensor simulator library for emulator testing and registering sensor event listeners.
Android is an open source operating system used worldwide in smartphones. It is based on Linux and developed by Google. There have been many versions of Android released since the first one in 2008, with the most recent being KitKat. Android allows developers to create applications and games and distribute them through app stores, fueling its popularity. The document provides instructions on getting started with Android development using Java and outlines some basic UI components like buttons, text views and making toasts.
This document is an industrial internship report submitted by Sujeet Kumar Yadav for their Bachelor of Technology degree. It details their internship focused on Android app development. The report includes chapters on introducing apps and Android, knowing Android, starting an Android project, important Android concepts, and examples of apps created including ones for audio/video recording and using seek bars. It provides an overview of their learning and experience developing basic Android apps during their internship.
Android Design Patterns in Mobile Application Development - Michalis Grigorop...Michail Grigoropoulos
Design patterns help developers and designers to solve common design problems by using tested and user friendly solutions. The term can be applied to both directions to build a thing and the thing itself. The purpose of this study is to present such solutions and examine their applicability in android application development and user experience. For the study's purposes, an application called "Messeme" was developed based on some of the design patterns that are presented in the Second section of this Thesis.
Introduction_to_android_and_android_studioAbdul Basit
This document provides an introduction to Android and Android Studio. It discusses what Android is, its operating system components, versions and features. It also describes Android Studio as the IDE for developing Android apps, outlining its tools and how to install, create, code and deploy an Android app. The document serves as a high-level overview of getting started with Android development.
1. The document provides an introduction to setting up virtual reality projects using Unity 3D and C# scripting. It discusses installing the JDK, Android SDK, and introducing VR/AR SDKs and tools like Unity.
2. The document then covers setting up a VR project in Unity, including importing VR SDK packages and using the "GvrEditorEmulator" to simulate a VR headset camera.
3. It also provides overviews of Unity 3D, commonly used VR SDKs, and introduces C# as a scripting language for building immersive applications in Unity.
1) This document discusses the basics of Android development including the Android architecture, tools, and software required.
2) The Android architecture consists of the Linux kernel at the bottom layer, with native libraries and the Android runtime in between. At the top are the application framework and applications.
3) Key tools for Android development include Android Studio, the Android SDK, Android emulator, and DDMS for debugging. The SDK includes tools like adb, SQLite, and platform-specific tools.
Android interview questions and answerskavinilavuG
Android uses Dalvik Virtual Machine (DVM) which requires a special bytecode format called .dex files. The DVM executes multiple virtual machines efficiently and runs Java bytecode, converting it to .dex format. Activities dictate the user interface and handle interactions, services handle background processes, broadcast receivers handle communication between apps and the OS, and content providers manage data storage. The Android SDK includes tools like the emulator, DDMS, and ADB for app development.
The document discusses SensActions, an Android application that uses various sensors on a device to perform different functions without using the touchscreen. It can lock/unlock a device using the proximity sensor, change music tracks with shakes, and use the camera flash as a torch. The purpose is to allow users to interact with their smartphone in a convenient and smarter way. It provides widgets, help screens, and uninstall instructions. The document also covers the system architecture, including the Linux kernel, Dalvik virtual machine, libraries, and application framework.
The document discusses the course Mobile Application Development. It provides details about the course teacher, outcomes, textbooks, and configuration of the Android development environment. The key topics covered are the Android SDK, Android Virtual Devices, emulators, Dalvik Virtual Machines, and steps to install Android Studio and SDK.
Questions About Android Application DevelopmentAdeel Rasheed
In this file i describe all the important questions about android application development.
What is Android?
What is an Activity?
Describe android application architecture?
What is explicit intent?
What is APK format?
What is implicit intent?
What language does Android support to develop an application?
Android is an open source operating system used for mobile devices like smartphones and tablets. It is developed by Google and a consortium of technology companies called the Open Handset Alliance. Android allows developers to write programs in Java and offers tools to distribute apps to users. There are challenges to developing for Android like supporting a variety of device screen sizes and older platform versions, but it offers a large potential user base and opportunities to create engaging apps.
-About mobility in human context with mobile handsets.
-Available hot mobile platforms.
-Pons & cons (summarized) of each mobile platforms in respect of market & application development.
-Why Android?
-Future of Android!
-How to start with Android?
Creating the first app with android studioParinita03
The document provides an overview of Android Studio, the integrated development environment for Android app development. It discusses what Android is, how Android Studio differs from Eclipse, and walks through creating a new project in Android Studio. The key steps covered are installing Android Studio, creating a new project, selecting project options like the application name and form factors, adding an initial activity, and running the app on an Android emulator.
Evolution of Android Operating System and it’s Versionsijtsrd
Android is a software stack for mobile devices that includes an operating system, middleware and key applications. It can be considered as a software platform as well as an operating system for mobile devices based on the Linux operating system and currently developed by Google. It is designed primarily for touch screens mobile devices such as smartphones and tablet computers. One of the most widely used mobile OS these days is android. It is free and open source software its source code is known as Android Open Source Project AOSP , which is primarily licensed under the Apache License. This Paper Contains android architecture consists of key applications, Application framework, Native libraries, Android runtime, DVM, Linux Kernal., Many versions of Android Operating System are KitKat, JellyBean, Honeycomb, Froyo etc… Advantages and Disadvantages of Android and also the conclusion. Aishwarya Gujar | Prof. Pratibha Adkar "Evolution of Android Operating System and it’s Versions" Published in International Journal of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-5 | Issue-4 , June 2021, URL: https://www.ijtsrd.compapers/ijtsrd42519.pdf Paper URL: https://www.ijtsrd.comengineering/computer-engineering/42519/evolution-of-android-operating-system-and-it’s-versions/aishwarya-gujar
This document provides an introduction to Android development using Eclipse. It discusses the basic components of an Android application, including activities, content providers, services and broadcast receivers. It also describes how to set up an Android virtual device to test applications. The tutorial explains how to create a "Hello World" app to demonstrate Android development and introduces some basic widgets to create user interfaces.
Android is an open source software stack for mobile devices that includes an operating system, middleware and key applications. It allows applications to run in their own process using the Dalvik Virtual Machine. The Android software development kit includes tools for application development, debugging, and deployment. While Android offers flexibility and customization, the user interface is not as polished as the iPhone and media syncing requires third party tools rather than a centralized application like iTunes.
Android is an open source operating system for mobile devices that allows developers to create innovative applications. It provides access to core APIs as well as bindings to Android's native APIs. The Android software stack includes applications, application framework, libraries and services, and the Linux kernel. Unlike proprietary platforms, Android is open source and allows customization by device makers and developers.
This is Eight Channel relay board controlled by Bluetooth Module. The Bluetooth relay board is with 8
SPDT relays rated up to 7A each. You can control devices 230V / 120V (up to 8) directly with one such
relay unit. Suitable for home automation applications, hobby projects, industrial
automation. Bluetooth module enables you to wireless transmit & receive serial data.
4 Channel Relay Board 5V-Bluetooth Compatible for ArduinoRaghav Shetty
Bluetooth technology is a short distance communication technology used by almost all phones
including smart phones and all laptops. This technology find very wide uses including that of Home &
Industrial automation.
The Relay shield is capable of controlling 4 relays. The max switching power could be
12A/250VAC or 15A/24VDC. It could be directly controlled by Arduino through digital IOs.
4 Channel Relay Board 12V-Compatible for ArduinoRaghav Shetty
4 Channel Relay Board 12V-Compatible for Arduino. The Relay shield is capable of controlling 4
relays. The max switching power could be 10A/120VAC or 10A/24VDC. It could be directly controlled by
Arduino through digital IOs. Each relay can switch variety of AC or DC high voltage, high current loads
working at 110V or 220V AC 7Amps mains like lights, fans, motors etc.
This is Eight Channel relay board controlled through RS485 protocol. The RS485 relay
board is with 8 SPDT relays rated up to 7A each. You can control devices 230V / 120V (up to 8)
directly with one such relay unit. Suitable for home automation applications, hobby projects,
industrial automation.
XBee is very easy and popular wireless device. It is a transceiver, it can transmit and it receive
data wirelessly. There are several types of XBee module. The very popular XBee is Series 1
(802.15.4), comes with the firmware to create connection for point to point or star network. But
bear in mind, many people actually thought it is using ZigBee protocol, but it is not compliance
to ZigBee because it uses the low layer of ZigBee protocol only
This basic piezo sensor can be used in anti-theft devices, electronic locks, mechanical equipment vibration detection, sound gesture application and detection range bull's-eye counts vibration sensor occasions. These vibration levels could be given to any controller/processor and necessary decisions could be taken through it. Module triple output mode, digital output simple, analog output more accurate, serial output with exact readings.
Support 5V-9V wide power voltage, Low-noise direct thermal printing method, can support Max.39MM (diameter) paper roll,RS-232C/TTL Interface, rich of graphics / curves / characters print function, Easy paper loading structure, outline dimension : 111W*65D*57H mm.
This document describes a digital soil moisture sensor that can be used to automatically monitor soil moisture levels and trigger watering systems. The sensor outputs a digital signal indicating soil moisture levels and can connect to devices like Arduino. It works by measuring the dielectric constant of soil which corresponds to moisture level. The sensor has adjustable sensitivity and threshold levels and provides digital, analog or serial output of moisture readings for various microcontroller applications.
Micro SD Memory Card Interface for 5V MCURaghav Shetty
This is a wonderful little SD card interface module. It is easily interfaced as a peripheral to your module. Through programming, you can read and write to the SD card. All SD Card works on 3V interface so if your microcontroller is working on 5V you will need to convert these signals.. All SD Card works on 3V interface so if your microcontroller is working on 5V you will need to convert these signals.
Micro SD Memory Card Interface for 3.3V MCURaghav Shetty
This is a wonderful little SD card interface module. It is easily interfaced as a peripheral to your module. Through programming, you can read and write to the SD card.All SD Card works on 3V interface so if your microcontroller is working on 3V you can use this board readily. The interface board provided is for microcontrollers running at 3V.
The regulated power supply accepts unregulated inputs from 9V to 15V AC or DC and gives regulated output of 3.3V, 5V and 12V suitable for projects which needs precise voltage to work. The input can come from step down transformer. Since board has Diode Bridge input polarity does not matter. All outputs are brought to screw terminal. There is also an unregulated output voltage to drive high current loads like relays and motors.
With this board you can develop and prototype with any of Microchip's 40 pin PIC microcontrollers. The RS232 driver on board allows easy connection with PC or other embedded hardware. The bridge rectifier allow this board to be powered with both AC and DC power supply adapters
8 Channel Bi Directional Logic Level ConverterRaghav Shetty
Because the Arduino (and Basic Stamp) are 5V devices, and most modern sensors, displays, flash cards and modes are 3.3V-only, many makers find that they need to perform level shifting/conversion to protect the 3.3V device from 5V.This 8-bit non inverting translator uses two separate configurable power-supply rails. The A port is designed to track VCCA. VCCA accepts any supply voltage from 1.2 V to 3.6 V. The B port is designed to track VCCB. VCCB accepts any supply voltage from 1.65 V to 5.5 V. This allows for universal low-voltage bidirectional translation between any of the 1.2-V, 1.5-V, 1.8-V, 2.5-V, 3.3-V, and 5-V voltage nodes. VCCA should not exceed VCCB.
One of the basic interfacing requirements for the hobbyists or electronics enthusiasts is I/P (keypad) and O/P (LCD display) for prototype applications. This shield uses minimum number I/O’s that is 4 bits for LCD data and 2 control signal lines for the same. A single analog pin (Pin A0) is multiplexed to read 5 input key switches (Navigation keys). Each key has been pulled up to a different voltage level, so a different voltage will be generated every time a user selects a key. This voltage could be read by the analog pin A0 on the board. Hence saves the no of I/O pins. The backlight of the LCD could be controlled by setting PWM (Pin D10) by adding a few lines of code.
The L298 Driver is a high voltage, high current dual ful bridge driver designed to accept standard TTL logic levels and drive inductive loads such relays, solenoids, DC and stepping motors. Two enable inputs are provided to enable or disable the device independently of the input signals. The emitters of the lower transistors of each bridge are connected together the corresponding external terminal can be used for the connection of an external sensing resistor.
The Joystick Shield easily stacks on top of your ATmega 328 and turns it into a simple robotic and gaming controller. Six momentary push buttons (4+2), a two-axis thumb joystick and optional remote transmission adapter for Xbee and Bluetooth allows your ATmega 328 to control from remote location. ATmega 328 digital pins D3-D8 are connected to momentary push buttons, when pressed they will pull the pin HIGH. Voltage accross analog pin 0 varies proportionally for the vertical movement of the joystick, like wise horizontal movement can be tracked at analog pin 1.Xbee Dout is connected to D0(Rx) and Din is connected to D1(Tx) of ATmega 328 sheild.
This is a force sensitive resistor with a round, 0.5" diameter, sensing area. This FSR will vary its resistance depending on how much pressure is being applied to the sensing area. The harder the force, the lower the resistance. When no pressure is being applied to the FSR its resistance will be larger than 1M. This FSR can sense applied force anywhere in the range of 100g-10kg.
Level switch magnetic reed switch and float by the composition of the reed switch encapsulated in the guide rod , fitted with a ring magnet in the float when the float moves up and down with the measured liquid level , its internal magnet to attract magnetic reed switch contact action , thereby detecting the level position as a level control or direction
Flex Sensor 4.2" ROHS Compliant Description: A simple flex sensor 4.2" in length. As the sensor is flexed, the resistance across the sensor increases. The resistance of the flex sensor changes when the metal pads are on the outside of the bend (text on inside of bend). Connector is0.1" spaced and bread board friendly. Note: Please refrain from flexing or straining this sensor at the base. The usable range of the sensor can be flexed without a problem, but care should be taken to minimize flexing outside of the usable range. For best results, securely mount the base and bottom portion and only allow the actual flex sensor to flex.
Enterprise Integration Is Dead! Long Live AI-Driven Integration with Apache C...Markus Eisele
We keep hearing that “integration” is old news, with modern architectures and platforms promising frictionless connectivity. So, is enterprise integration really dead? Not exactly! In this session, we’ll talk about how AI-infused applications and tool-calling agents are redefining the concept of integration, especially when combined with the power of Apache Camel.
We will discuss the the role of enterprise integration in an era where Large Language Models (LLMs) and agent-driven automation can interpret business needs, handle routing, and invoke Camel endpoints with minimal developer intervention. You will see how these AI-enabled systems help weave business data, applications, and services together giving us flexibility and freeing us from hardcoding boilerplate of integration flows.
You’ll walk away with:
An updated perspective on the future of “integration” in a world driven by AI, LLMs, and intelligent agents.
Real-world examples of how tool-calling functionality can transform Camel routes into dynamic, adaptive workflows.
Code examples how to merge AI capabilities with Apache Camel to deliver flexible, event-driven architectures at scale.
Roadmap strategies for integrating LLM-powered agents into your enterprise, orchestrating services that previously demanded complex, rigid solutions.
Join us to see why rumours of integration’s relevancy have been greatly exaggerated—and see first hand how Camel, powered by AI, is quietly reinventing how we connect the enterprise.
Smart Investments Leveraging Agentic AI for Real Estate Success.pptxSeasia Infotech
Unlock real estate success with smart investments leveraging agentic AI. This presentation explores how Agentic AI drives smarter decisions, automates tasks, increases lead conversion, and enhances client retention empowering success in a fast-evolving market.
Config 2025 presentation recap covering both daysTrishAntoni1
Config 2025 What Made Config 2025 Special
Overflowing energy and creativity
Clear themes: accessibility, emotion, AI collaboration
A mix of tech innovation and raw human storytelling
(Background: a photo of the conference crowd or stage)
Original presentation of Delhi Community Meetup with the following topics
▶️ Session 1: Introduction to UiPath Agents
- What are Agents in UiPath?
- Components of Agents
- Overview of the UiPath Agent Builder.
- Common use cases for Agentic automation.
▶️ Session 2: Building Your First UiPath Agent
- A quick walkthrough of Agent Builder, Agentic Orchestration, - - AI Trust Layer, Context Grounding
- Step-by-step demonstration of building your first Agent
▶️ Session 3: Healing Agents - Deep dive
- What are Healing Agents?
- How Healing Agents can improve automation stability by automatically detecting and fixing runtime issues
- How Healing Agents help reduce downtime, prevent failures, and ensure continuous execution of workflows
AI Agents at Work: UiPath, Maestro & the Future of DocumentsUiPathCommunity
Do you find yourself whispering sweet nothings to OCR engines, praying they catch that one rogue VAT number? Well, it’s time to let automation do the heavy lifting – with brains and brawn.
Join us for a high-energy UiPath Community session where we crack open the vault of Document Understanding and introduce you to the future’s favorite buzzword with actual bite: Agentic AI.
This isn’t your average “drag-and-drop-and-hope-it-works” demo. We’re going deep into how intelligent automation can revolutionize the way you deal with invoices – turning chaos into clarity and PDFs into productivity. From real-world use cases to live demos, we’ll show you how to move from manually verifying line items to sipping your coffee while your digital coworkers do the grunt work:
📕 Agenda:
🤖 Bots with brains: how Agentic AI takes automation from reactive to proactive
🔍 How DU handles everything from pristine PDFs to coffee-stained scans (we’ve seen it all)
🧠 The magic of context-aware AI agents who actually know what they’re doing
💥 A live walkthrough that’s part tech, part magic trick (minus the smoke and mirrors)
🗣️ Honest lessons, best practices, and “don’t do this unless you enjoy crying” warnings from the field
So whether you’re an automation veteran or you still think “AI” stands for “Another Invoice,” this session will leave you laughing, learning, and ready to level up your invoice game.
Don’t miss your chance to see how UiPath, DU, and Agentic AI can team up to turn your invoice nightmares into automation dreams.
This session streamed live on May 07, 2025, 13:00 GMT.
Join us and check out all our past and upcoming UiPath Community sessions at:
👉 https://community.uipath.com/dublin-belfast/
AI x Accessibility UXPA by Stew Smith and Olivier VroomUXPA Boston
This presentation explores how AI will transform traditional assistive technologies and create entirely new ways to increase inclusion. The presenters will focus specifically on AI's potential to better serve the deaf community - an area where both presenters have made connections and are conducting research. The presenters are conducting a survey of the deaf community to better understand their needs and will present the findings and implications during the presentation.
AI integration into accessibility solutions marks one of the most significant technological advancements of our time. For UX designers and researchers, a basic understanding of how AI systems operate, from simple rule-based algorithms to sophisticated neural networks, offers crucial knowledge for creating more intuitive and adaptable interfaces to improve the lives of 1.3 billion people worldwide living with disabilities.
Attendees will gain valuable insights into designing AI-powered accessibility solutions prioritizing real user needs. The presenters will present practical human-centered design frameworks that balance AI’s capabilities with real-world user experiences. By exploring current applications, emerging innovations, and firsthand perspectives from the deaf community, this presentation will equip UX professionals with actionable strategies to create more inclusive digital experiences that address a wide range of accessibility challenges.
Slack like a pro: strategies for 10x engineering teamsNacho Cougil
You know Slack, right? It's that tool that some of us have known for the amount of "noise" it generates per second (and that many of us mute as soon as we install it 😅).
But, do you really know it? Do you know how to use it to get the most out of it? Are you sure 🤔? Are you tired of the amount of messages you have to reply to? Are you worried about the hundred conversations you have open? Or are you unaware of changes in projects relevant to your team? Would you like to automate tasks but don't know how to do so?
In this session, I'll try to share how using Slack can help you to be more productive, not only for you but for your colleagues and how that can help you to be much more efficient... and live more relaxed 😉.
If you thought that our work was based (only) on writing code, ... I'm sorry to tell you, but the truth is that it's not 😅. What's more, in the fast-paced world we live in, where so many things change at an accelerated speed, communication is key, and if you use Slack, you should learn to make the most of it.
---
Presentation shared at JCON Europe '25
Feedback form:
http://tiny.cc/slack-like-a-pro-feedback
Introduction to AI
History and evolution
Types of AI (Narrow, General, Super AI)
AI in smartphones
AI in healthcare
AI in transportation (self-driving cars)
AI in personal assistants (Alexa, Siri)
AI in finance and fraud detection
Challenges and ethical concerns
Future scope
Conclusion
References
UiPath Automation Suite – Cas d'usage d'une NGO internationale basée à GenèveUiPathCommunity
Nous vous convions à une nouvelle séance de la communauté UiPath en Suisse romande.
Cette séance sera consacrée à un retour d'expérience de la part d'une organisation non gouvernementale basée à Genève. L'équipe en charge de la plateforme UiPath pour cette NGO nous présentera la variété des automatisations mis en oeuvre au fil des années : de la gestion des donations au support des équipes sur les terrains d'opération.
Au délà des cas d'usage, cette session sera aussi l'opportunité de découvrir comment cette organisation a déployé UiPath Automation Suite et Document Understanding.
Cette session a été diffusée en direct le 7 mai 2025 à 13h00 (CET).
Découvrez toutes nos sessions passées et à venir de la communauté UiPath à l’adresse suivante : https://community.uipath.com/geneva/.
An Overview of Salesforce Health Cloud & How is it Transforming Patient CareCyntexa
Healthcare providers face mounting pressure to deliver personalized, efficient, and secure patient experiences. According to Salesforce, “71% of providers need patient relationship management like Health Cloud to deliver high‑quality care.” Legacy systems, siloed data, and manual processes stand in the way of modern care delivery. Salesforce Health Cloud unifies clinical, operational, and engagement data on one platform—empowering care teams to collaborate, automate workflows, and focus on what matters most: the patient.
In this on‑demand webinar, Shrey Sharma and Vishwajeet Srivastava unveil how Health Cloud is driving a digital revolution in healthcare. You’ll see how AI‑driven insights, flexible data models, and secure interoperability transform patient outreach, care coordination, and outcomes measurement. Whether you’re in a hospital system, a specialty clinic, or a home‑care network, this session delivers actionable strategies to modernize your technology stack and elevate patient care.
What You’ll Learn
Healthcare Industry Trends & Challenges
Key shifts: value‑based care, telehealth expansion, and patient engagement expectations.
Common obstacles: fragmented EHRs, disconnected care teams, and compliance burdens.
Health Cloud Data Model & Architecture
Patient 360: Consolidate medical history, care plans, social determinants, and device data into one unified record.
Care Plans & Pathways: Model treatment protocols, milestones, and tasks that guide caregivers through evidence‑based workflows.
AI‑Driven Innovations
Einstein for Health: Predict patient risk, recommend interventions, and automate follow‑up outreach.
Natural Language Processing: Extract insights from clinical notes, patient messages, and external records.
Core Features & Capabilities
Care Collaboration Workspace: Real‑time care team chat, task assignment, and secure document sharing.
Consent Management & Trust Layer: Built‑in HIPAA‑grade security, audit trails, and granular access controls.
Remote Monitoring Integration: Ingest IoT device vitals and trigger care alerts automatically.
Use Cases & Outcomes
Chronic Care Management: 30% reduction in hospital readmissions via proactive outreach and care plan adherence tracking.
Telehealth & Virtual Care: 50% increase in patient satisfaction by coordinating virtual visits, follow‑ups, and digital therapeutics in one view.
Population Health: Segment high‑risk cohorts, automate preventive screening reminders, and measure program ROI.
Live Demo Highlights
Watch Shrey and Vishwajeet configure a care plan: set up risk scores, assign tasks, and automate patient check‑ins—all within Health Cloud.
See how alerts from a wearable device trigger a care coordinator workflow, ensuring timely intervention.
Missed the live session? Stream the full recording or download the deck now to get detailed configuration steps, best‑practice checklists, and implementation templates.
🔗 Watch & Download: https://www.youtube.com/live/0HiEm
Challenges in Migrating Imperative Deep Learning Programs to Graph Execution:...Raffi Khatchadourian
Efficiency is essential to support responsiveness w.r.t. ever-growing datasets, especially for Deep Learning (DL) systems. DL frameworks have traditionally embraced deferred execution-style DL code that supports symbolic, graph-based Deep Neural Network (DNN) computation. While scalable, such development tends to produce DL code that is error-prone, non-intuitive, and difficult to debug. Consequently, more natural, less error-prone imperative DL frameworks encouraging eager execution have emerged at the expense of run-time performance. While hybrid approaches aim for the "best of both worlds," the challenges in applying them in the real world are largely unknown. We conduct a data-driven analysis of challenges---and resultant bugs---involved in writing reliable yet performant imperative DL code by studying 250 open-source projects, consisting of 19.7 MLOC, along with 470 and 446 manually examined code patches and bug reports, respectively. The results indicate that hybridization: (i) is prone to API misuse, (ii) can result in performance degradation---the opposite of its intention, and (iii) has limited application due to execution mode incompatibility. We put forth several recommendations, best practices, and anti-patterns for effectively hybridizing imperative DL code, potentially benefiting DL practitioners, API designers, tool developers, and educators.
Mastering Testing in the Modern F&B Landscapemarketing943205
Dive into our presentation to explore the unique software testing challenges the Food and Beverage sector faces today. We’ll walk you through essential best practices for quality assurance and show you exactly how Qyrus, with our intelligent testing platform and innovative AlVerse, provides tailored solutions to help your F&B business master these challenges. Discover how you can ensure quality and innovate with confidence in this exciting digital era.
Dark Dynamism: drones, dark factories and deurbanizationJakub Šimek
Startup villages are the next frontier on the road to network states. This book aims to serve as a practical guide to bootstrap a desired future that is both definite and optimistic, to quote Peter Thiel’s framework.
Dark Dynamism is my second book, a kind of sequel to Bespoke Balajisms I published on Kindle in 2024. The first book was about 90 ideas of Balaji Srinivasan and 10 of my own concepts, I built on top of his thinking.
In Dark Dynamism, I focus on my ideas I played with over the last 8 years, inspired by Balaji Srinivasan, Alexander Bard and many people from the Game B and IDW scenes.
Discover the top AI-powered tools revolutionizing game development in 2025 — from NPC generation and smart environments to AI-driven asset creation. Perfect for studios and indie devs looking to boost creativity and efficiency.
https://www.brsoftech.com/ai-game-development.html
2. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 1RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Contents
Introduction ..................................................................................................................................................3
Android Development Tools (ADT):..........................................................................................................3
Software Development Kit (SDK):.............................................................................................................3
Android Packages......................................................................................................................................3
Download ADT bundle from Below link:...................................................................................................3
Getting Started..........................................................................................................................................4
Launching the eclipse for App Development:...........................................................................................4
Install Android Packages: .........................................................................................................................4
Creating your First App .................................................................................................................................7
Application Folders .....................................................................................................................................11
Adding Behavior..........................................................................................................................................12
Radio Buttons..............................................................................................................................................15
Alert Dialog .................................................................................................................................................18
Spinners ......................................................................................................................................................19
Android Manifest........................................................................................................................................22
Toggle Button..............................................................................................................................................24
Seek bar.......................................................................................................................................................27
Bluetooth Communication..........................................................................................................................28
Connecting to a remote Device ..............................................................................................................32
App for Bluetooth Communication.........................................................................................................34
Bluetooth and Relays interfacing using 8051 Microcontroller and Keil– AT89S52 ................................44
BLUETOOTH RELAY SHIELD .........................................................................................................................51
RELAY SHIELD ARDUINO CODE ...............................................................................................................52
4-RELAY SWITCH BOARD ANDROID APPLICATION..................................................................................56
8 channel Relay Bluetooth..........................................................................................................................57
OVERVIEW...............................................................................................................................................57
FEATURES................................................................................................................................................57
APPLICATION DIAGRAM..........................................................................................................................59
INTERFACE...............................................................................................................................................59
Circuit Diagram .......................................................................................................................................60
RELAY SWITCHBOARD SOFTWARE..........................................................................................................60
3. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 2RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Android APP link .....................................................................................................................................60
SERIAL 8 CHANNEL AC 230V SR AND DIMMER WITH BLUETOOTH INTERFACE..........................................61
FEATURES................................................................................................................................................61
Electrical Characteristics.........................................................................................................................62
TRIAC.......................................................................................................................................................63
Applications: ...........................................................................................................................................63
Electrical Characteristics.........................................................................................................................63
FIRING ANGLE .........................................................................................................................................64
CONNECTING 230V AC 8 CHANNELDIMMER WITH ELECTRONIC GADGETS...........................................65
UART INPUT FOR LOADS.........................................................................................................................65
Example...................................................................................................................................................65
BLOCK DIAGRAM.....................................................................................................................................67
BLUETOOTH ............................................................................................................................................68
Bluetooth Module HC 05 Specifications: ................................................................................................68
Bluetooth Module HC 05 Application:....................................................................................................68
PROCEDURE TO OPERATE......................................................................................................................69
RDL Wi-Fi Robo ...........................................................................................................................................74
RDL Wifi Relay.............................................................................................................................................77
Features: .................................................................................................................................................77
XBee Wifi configuration..............................................................................................................................84
SOFTWARE ..................................................................................................................................................84
4. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 3RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Introduction
Android is a free and open operating system from Google that runs on all kinds of devices from
phones, to tablets and even televisions. That’s a ton of different devices you can target with just one
platform. (And the market share is gaining too). Google provides everything you need to get started
building Android apps for free. And you can build your Android apps on Mac, Windows, or UNIX and
publish your apps for next to nothing (and with no need for anyone’s approval). Ready to get started?
You’re going to start building you’re first Android app, but first there are a few things to setup...
Android already runs on a TON of different devices! With careful planning, you’re app can run on all of
these Android powered devices. From phones and tablets, to TVs and even home automation
There are a lot of mobile platforms out there, but with Android’s presence and growth, everyone is
building out their Android apps.
Android Development Environment:
· Eclipse Integrated Development Environment (IDE):
The Eclipse Integrated Development Environment (IDE for short) is where you’ll write your code. Eclipse
is a generic IDE, not specific to Android development. It’s managed by the Eclipse foundation.
Android DevelopmentTools (ADT):
The Android Development Tools (ADT) is an Eclipse plug-in that adds Android specific functionality to
Eclipse.
Software Development Kit (SDK):
The Android Software Development Kit (SDK) contains all of the lower level tools to build, run and test
your Android apps. The ADT is really just a user interface, and
The guts of the app building all happen here in the ADT.
Android Packages:
You can develop and support multiple versions of Android from the same development environment.
These
Packages add functionality to the base SDK to let you develop for that Android.
Download ADT bundle from Below link:
(http:developer.android.com/sdk/index.html#download)
5. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 4RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Getting Started:
All you need to start developing android application is the ADT bundle which is downloaded from the
developer’s site and Java Development Kit. Java IDE & Eclipse is particularly well supported to make
development a little easier.
Versions of the SDK, Java, and Eclipse
Are available for Windows, Mac OS, and Linux, so you can explore Android from the comfort of
whatever OS you favor. The SDK includes an emulator or all three OS environments, and because
Android applications are run on a virtual machine, there’s no advantage to developing from any
particular operating system.
Android code is written using Java syntax, and the core Android libraries include most of the features
from the core Java APIs. Before they can be run, though, your projects are first translated into Dalvik
byte code. As a result, you get the benefits of using Java, while your applications have the advantage of
running on a virtual machine optimized for Android devices.
Launching the eclipse for App Development:
After installing the Java-7 IDE in your system unzip the ADT bundle which you downloaded. It contains 2
folders SDK and Eclipse. Open the Eclipse folder and launch the Eclipse.
· Launching Eclipse
When you launch Eclipse for the first time, you will be prompted to enter a workspace Location.a
directory where all of · your Eclipse projects and settings will be stored.
Install Android Packages:
The SDK is designed to allow you to work with multiple versions of Android in the same development
environment. To keep downloads small, the SDK version packages are separated from the SDK. (This also
allows you to update to new versions of Android without having to download the entire SDK) You can
configure the installed packages in the SDK from the Android SDK and AVD Manager (another added
bonus of the ADT).
6. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 5RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Open the manager by selecting Window → Android SDK and AVD Manager.
· When you expand the tree node, you’ll see a combination of SDK Tools, SDK platforms, samples
documentation and more. These are all plugins to the SDK that you can add to expand the functionality
of the SDK. (This way you can download and install the SDK once and keep adding new functionality to it
as new version comes)
· To create a new AVD go to window—>AVD manager —>new
The process of updating the SDK and creating new AVD is as shown below.
7. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 6RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Fig3(a): Updating the SDK Manager
Fig-3(b): Creating the AVD
8. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 7RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Creating your First App
· Using Eclipse, create a new project by selecting File->Project (see Figure 4).
· Expand android folder and select android app. project (see Figure 5).
· A new dialog window will open give the application name and what is the minimum version of OS your
app should support and then press next (see Figure 6).
· Select the type of icon you want to give for your app and press next (See in Figure 7)
· Give name of the activity and press finish see Figure 8.
In the Package Explorer expand the project by clicking on arrows displayed to the left of each item in the
project. In the res/layout folder, double-click the main.xml file
Figure 4: Selecting project
9. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 8RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 5: Create android application project
Figure 6: give the app name and API
10. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 9RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 7: select the icon
Figure 8: Set the name of Activity
11. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 10RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 9: Layout when app is created
Figure 10: Graphical Layout & XML Layout
The .xml file in res/layout defines the user interface (UI) of your application. The default view is the
Layout view, which lays out the activity graphically. To modify the UI, click the .xml tab located at the
bottom.
· Drag and drop the items which you need from palette on to your layout file
12. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 11RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Application Folders
We have created our basic app successfully. Now we check about different types of folders or files
supporting the app. Once you expand the app folder in package explorer it contains different folders.
1. Src
2. Assets
3. Res
4. Gen
5. Android versions
6. Bin
7. Libs
8. Android manifest
Src
It is the source folder which contains all the java files which are used in your project.
Assets
By default it is an empty folder. It is used to store raw data
Res (Resource folder)
The res folder contains the various resources that your application can use. Different types of
folders present in the res folder include layout files which are front end of an app. Drawable which
contains the images. Values which contains he strings, color, styles and dimensions for designing the
front end of your app. The resource folder contains the above files as shown in Figure 11.
Gen
The gen folder contains Java files generated by ADT. The ADT creates an R.java file. When you
write Java code in Android, you will come to a point when you need to reference the items in the res
folder. You do this by using the R class. The R.java file is an index to all the resources defined in your res
folder.
13. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 12RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Android Versions
This item includes the android.jar file that your application builds against. The version of this file
was determined by the build target that you chose the New Android Project . Expanding the item in
the project displays the android.jar file and the path to where it’s installed.
Libs
The libs/ directory contain private libraries.
Figure 11: Resource Folder
Adding Behavior
Drag and drop a button from palette into your layout file. Once you have added the button the layout
file looks like as shown in the Figure 12.
In the xml file add a · click event for the button as highlighted in the figure 13.
Now open your source folder and open the java file. Create a method called as insert and writhe
following code in that method as shown in Figure 14 and when you run the app you will get the output
as shown in Figure 15.(The output is a Toast message which will give a message for a 30 seconds)
14. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 13RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 15: Click event in xml
Figure 13
Figure 12: layout after adding a button
Figure 14: Insert Method
15. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 14RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 15: o/p showing toast message after a button click
16. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 15RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Radio Buttons
A radio button or option button is a graphical control element that allows the user to choose only
one of a predefined set of options, an exclusive or. Drag and drop the radio buttons from the
palette .the XML and graphical layout are as shown in Figures 16 & 17.
Initialize the radio
· Button in java code as shown in the Figure 18.
· Add the click event for radio button as shown in Figure 19.
· And the output of the app is as shown in the Figure 20.
Run the application
Figure 16: Graphical Layout of radio Buttons Figure 17: Xml file for Radio Buttons
17. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 16RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 18: Initializing RadioButton
Figure 19: Click event for Radio button
18. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 17RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 20: O/P for radio button view on Emulator
Figure 21: O/P when radio button click event
19. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 18RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Alert Dialog
We will be using the alert dialog box whenever we want the permission for an action to take place
An alert dialog can have two options they are to ask user to perform an action or not to perform an
action
The code for creating an alert dialog box is as shown in Figure 22 which is written in a button
click event.
The output of the application is as shown in Figures 23 for positive and negative buttons in alert dialog
box.
Figure 22: Code for Alert Dialog Box
20. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 19RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 23: Alert Dialog Box
Spinners
Spinners are similar to "combo boxes' in some GUI frameworks.
Spinners provide a quick way to select one value from a set. In the default state, spinner shows
its currently selected value. Touching the spinner displays a dropdown menu with all other available
values, from which user can select a new one.
You can add a spinner to your layout with the Spinner object shown in Figure 24.or you can add the
code in xml as shown in Figure 25. Now go to strings.xml file in the res—>values and add the following
code in the string.xml file as in Figure 26
Now add the following code in your java file to initialize the spinner and get the values from strings.xml
file to the spinner in front end .the final o/p of the app is as shown in the figures 30 &31
21. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 20RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 25: Spinner added to xml file
Figure 24: Spinner added to layout from Pallete
Figure 26: Code for Spinner
22. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 21RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 27: Spinner
Figure 28: Final Spinner Output
23. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 22RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Android Manifest
The AndroidManifest.xml file contains information about your package, including components of the
application such as activities, services etc. It performs some other tasks also:
It is responsible to protect the application to access any protected parts by providing the permissions
It is responsible to protect the application to access any protected parts by providing permissions
It also declares the android API that the application going to use.
It lists the instrumentation classes the instrumentation classes provide profiling and other
informations.these information’s are removed just before the application is published etc.
This is the required xml file for all the android application and located inside the root directory.
The elements used in the above xml file are described below.
<Manifest>
Manifest is the root element of the AndroidManifest.xml file. It has package attribute that
describes the package name of the activity class.
<Application>
Application is the sub-element of the manifest. It includes the namespace declaration. This
element contains several sub elements that declares the application component such as activity etc.
The commonly used attributes are of this elements are icons, label, theme etc.
Android: icon
It represents the icon for all the android application components.
Android: label
It works as the default label for all the application components.
24. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 23RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Android: theme
It represents a common theme for all the android activities.
<Activity>
Activity is the sub element of application and represents an activity that must be defined in
the Manifest file.
Android: label
It represents a label i.e. displayed on the screen.
Android: name
It represents a name for the activity class. It is required attribute.
<Intent-filter>
Intent-filter is the sub-element of activity that describes the type of intent to which activity,
service or broadcast receiver can respond to.
<Action>
25. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 24RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
It adds an action for the intent-filter. The intent-filter must have at least one action element.
<Category>
It adds a category name to an intent-filter.
Toggle Button
A toggle button allows the user to change a setting between two states.
You can add a basic toggle button to your layout with the Toggle Button object as shown in Figure 29.
When the user selects a Toggle Button and Switch, the object receives an on-click
Event. To define the click event handler, add the android:onClick attribute to
the <ToggleButton> element in your XML layout. The value for this attribute must be the name of the
method you want to call in response to a click event. The Activity hosting the layout must then
implement the corresponding method.
For example, here's a Toggle Button with the android:onClick attribute in the Figure 30
The final o/p can be seen in figure 31 & 32
Figure29: Toggle Button
26. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 25RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 30(a): Toggle Button XML Code
Figure 30(b): Toggle Button Click Event
27. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 26RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 31: Toggle button off
Figure 32: Toggle Button on
28. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 27RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Seek bar
The seek bar is same like a progress bar but with added functionality .it can be easily dragged .The
layout and xml files of seek bar are as shown in the Figures 33 &34For getting the value from seek bar
first we need to initialize the seek bar. The initialization and the seek bar value changed are shown in the
figure 35. The final o/p is as shown in the figure 36.
Figure 33: Layout
Figure 34: xml with seek
Figure 35:CodeSeek
29. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 28RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 36: O/p when seek bar value is changed
Bluetooth Communication
Android offers APIs to manage and monitor your Bluetooth settings. Bluetooth is a communications
protocol designed for short-range, low-bandwidth peer-to-peer communications. Using the Bluetooth
APIs, you can search for, and connect to, other Bluetooth devices within range. By initiating a
communications link using Bluetooth Sockets, you can then transmit and receive streams of data
between devices from within your applications.
Using the Bluetooth APIs, an Android application can perform the following:
· Scan for other Bluetooth devices
· Query the local Bluetooth adapter for paired Bluetooth devices
· Establish RFCOMM channels
· Connect to other devices through service discovery
30. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 29RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
· Transfer data to and from other devices Manage multiple connection.
Bluetooth Adapter Represents the local Bluetooth adapter. Bluetooth Adapter is the entry-point
for all Bluetooth interaction. Using this, you can discover other Bluetooth devices, query a list of bonded
(paired) devices, instantiate a Bluetooth Device using a known MAC address, and create a Bluetooth
Server Socket to listen for communications from other devices. To access the Bluetooth adapter we
need to call the getdefaultadapter() as shown in the Figure 37
We need to give the required permissions in the manifest file to instantiate any process using
Bluetooth. The permissions which needed to be given are shown in the figure 38
Once the permissions are given in the manifest file check whether is turned on by calling is enabled () if
it is not turned on then it will take the user to settings menu to turn on the Bluetooth. The code for that
is as shown in the Figure 39.
Searching for Bluetooth Devices
You can check if the local Bluetooth Adapter is already performing a discovery scan by using the
Discovering method.
To initiate the discovery process, call start Discovery on the Bluetooth Adapter
Bluetooth.start discovery()
Figure 37: Initializing the Bluetooth adapter
Figure 38: Permission to be given in the manifest file
31. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 30RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 39: Check the Bluetooth state and enable it
The discovery process is asynchronous so Android uses broadcast Intents to notify you of the start and
end of discovery as well as remote devices discovered during the scan.
You can monitor changes in the discovery process by creating Broadcast Receivers as shown in
the Figure 40,41.
Each broad cast intent includes name and address of the devices. So each name has to be
received and must be placed in the array list. Once the values are completely received they must be
placed in the List view using the list adapter. As shown in the figure 42.
The output after searching for the devices and using the Bluetooth and displaying the values in a list
view is as shown in the figure 43.
Figure 40: Discovery receiver for Bluetooth
32. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 31RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 41: Receiver when the discovery finished be called
Figure 42: getting the values to a list view
33. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 32RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 43: list view with name & Mac address
Connecting to a remote Device
You can establish an RFCOMM communication channel for bidirectional communications using the
following classes.
BluetoothServerSocketUsed to establish a listening socket for initiating a link between devices. To
establish a handshake, one device acts as a server to listen for, and accept, incoming connection
requests.
Bluetooth Socket — used to create a new client to connect to a listening Bluetooth Server Socket. Also
returned by the Bluetooth Server Socket after a connection is established. Once a connection is
established, Bluetooth Sockets are used by both the server and client to transfer data streams.
Connecting the devices
In order for a Bluetooth Socket to establish a connection to a remote Bluetooth Device, the following
conditions must be true:
· The remote device must be discoverable.
34. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 33RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 44: Code for Connecting between the devices
· The remote device must be accepting connections through a Bluetooth Server Socket.
· The local and remote devices must be paired (bonded). If the devices are not paired, the users of each
device will be prompted to pair them when the connection request is initiated.
The code for creating a socket connection between the Bluetooth devices is as shown in figure 44
Transmitting & receiving the data from Sockets through Bluetooth is as shown in the figure45
35. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 34RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Figure 45: code for data Transfer or receive
App for Bluetooth Communication
In this example application we’ll see how to transfer and receive the data from the Bluetooth
Devices.
36. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 35RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
publicclassMainActivityextends Activity {
privatestaticfinal String TAG = "bluetooth2";
finalintRECIEVE_MESSAGE = 1; // Status for Handler
privateBluetoothAdapterbtAdapter = null;
privateBluetoothSocketbtSocket = null;
privateStringBuildersb = newStringBuilder ();
privateConnectedThreadmConnectedThread ;
// SPP UUID service
privatestaticfinal UUID MY_UUID = UUID.fromString ("00001101-0000-1000-8000-
00805F9B34FB");
// MAC-address of Bluetooth module which you want to connect(you must edit this line)
privatestatic String address = "00:12:09:29:42:57";
//this is like a main activity in java
@Override
protectedvoidonCreate (Bundle savedInstanceState ) {
super.onCreate (savedInstanceState );
setContentView (R.layout.terminal );// front end xml file which has to be displayed
h= newHandler () {
publicvoidhandleMessage (android.os.Messagemsg ) {
switch (msg.what ) {
caseRECIEVE_MESSAGE :// if receive massage
byte[] readBuf = (byte[]) msg.obj;
38. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 37RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
@Override
publicvoidonPause() {
super.onPause();
SharedPreferences preferences = getSharedPreferences("pref", 0);
SharedPreferences.Editor editor = preferences.edit();
//"savedData" is the key that we will use in onCreate to get the saved data
//mDataString is the string we want to save
editor.putString("savedDatasd", sa);
editor.putString("savedDatad", sakom);
// commit the edits
editor.commit();
Log.d(TAG, "...In onPause()...");
try{
btSocket.close();
} catch (IOException e2) {
errorExit("Fatal Error", "In onPause() and failed to close socket." + e2.getMessage() + ".");
}
}
privatevoidcheckBTState() {
// Check for Bluetooth support and then check to make sure it is turned on
// Emulator doesn't support Bluetooth and will return null
if(btAdapter==null) {
errorExit("Fatal Error", "Bluetooth not support");
} else {
if (btAdapter.isEnabled()) {
Log.d(TAG, "...Bluetooth ON...");
39. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 38RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
privatevoiderrorExit(String title, String message){
Toast.makeText(getBaseContext(), message, Toast.LENGTH_LONG).show();
finish();
} // writing a thread for read and write the data
privateclassConnectedThreadextends Thread {
privatefinalInputStreammmInStream;//initialising I/P Stream
privatefinalOutputStreammmOutStream;// initializing the o/p Stream
publicConnectedThread(BluetoothSocket socket) {
InputStreamtmpIn = null;
OutputStreamtmpOut = null;
// Get the input and output streams, using temp objects because
// member streams are final
try {tmpIn = socket.getInputStream();//get values to i/p stream from socket
tmpOut = socket.getOutputStream();//get values to i/p stream from socket
} catch (IOException e) { }
mmInStream = tmpIn;
mmOutStream = tmpOut;
}
publicvoid run() {
byte[] buffer = newbyte[256]; // buffer store for the stream
int bytes; // bytes returned from read()
// Keep listening to the InputStream until an exception occurs
while (true) {
try {
// Read from the Input Stream
bytes = mmInStream.read(buffer);// Get number of bytes and message in
40. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 39RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Log.d(TAG, "...Data to send: " + message + "...");
byte[] msgBuffer = message.getBytes();//get the data bytes
try {
mmOutStream.write(msgBuffer);//getting the data to o/p stream
} catch (IOException e) {
Log.d(TAG, "...Error data send: " + e.getMessage() + "...");
}
}
}
//click events for buttons
publicvoid b1(View v)
{ r1.setChecked(true);//Setting radio button to be checked
mConnectedThread.write("1N");//Sending the data via bluetooth
}
publicvoid b2(View v)
{
r1.setChecked(false);//Setting radio button to be unchecked
mConnectedThread.write("1F");//Sending the data via bluetooth
}
publicvoid b3(View v)
{
r2.setChecked(true);//Setting radio button to be checked
mConnectedThread.write("2N");//Sending the data via bluetooth
}
publicvoid b4(View v)
{r2.setChecked(false);//Setting radio button to be unchecked
45. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 44RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Bluetooth and Relays interfacing using 8051 Microcontroller and Keil–
AT89S52
Circuit and Working:
Fig.6 shows the circuit of simple 8051 Microcontroller interfaced with Bluetooth and 4 relays. The
following interface could be used along with an android app to turn ON/OFF appliances connected to
relays.
Program 6 demonstrates how to receive data through Bluetooth.
Components/modules required :
1) 8051 project board (assembled/non assembled kit).
2) 5V and 12V DC source.
3) Bluetooth Module.
4) 12V 4 Relay board.
5) IC AT89S52.
6)8051 IC burner
7) Connectors and cables.
The android APK file could be downloaded from here
46. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 45RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Fig6: Circuit Diagram for Bluetooth and 4 Relay interfacing
47. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 46RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Program 6:
#include<reg52.h>//special function register declarations
//for the intended 8051 derivative
void delay(); //Function prototype declaration
// Relay Connections
sbit Relay1=P2^3; //Relay 1 is connected to Port 2 pin 3
sbit Relay2=P2^2; //Relay 2 is connected to Port 2 pin 2
sbit Relay3=P2^1; //Relay 3 is connected to Port 2 pin 1
sbit Relay4=P2^0; //Relay 4 is connected to Port 2 pin 0
unsigned char byte1,byte2;// Variable declarations
// MAIN CODE
void main()
{
//Serial Initialization
TMOD=0X20; //use Timer 1, mode 2
SCON=0X50; //indicating serial mode 1,where an 8-bit data
//is framed with start and stop bits
TH1=0XFD; //9600 baud rate
TR1=1; //Start timer
delay(); //Wait for some time for serial initialization to finish
// Transmit 'S' to check whether the setup is ready
TI=0; //Forcibly change the Transmit
//Interrupt Flag of 8051 to 0
SBUF='S'; //Move 'S' to serial buffer memory
48. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 47RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
TI=0; //Forcibly change the Transmit
//Interrupt Flag of 8051 to 0
SBUF='S'; //Move 'S' to serial buffer memory
While (TI==0); //Wait until TI flag is set by hardware
//when an entire byte has been transmitted
TI=0; // forcibly clear TI flag
delay (); //A small delay for relaxation
P2=0x00; //Set Port 2 all bits to 0
while(1) // continuous loop
{
RI=0; //Forcibly clear the Receive
//Interrupt Flag of 8051 to 0
while(RI==0); //Wait until RI flag is set by hardware
//when an entire byte has been received
byte1=SBUF; //Move the received byte of data into variable 'byte1'
RI=0; //Forcibly clear RI flag
while(RI==0); //Wait until RI flag is set by hardware
//when an entire byte has been received
byte2=SBUF; //Move the received byte of data into variable 'byte2'
RI=0; //Forcibly clear RI flag
if(byte1=='1') //Check whether the 1st byte of data is 'A'
{
if(byte2=='N') //Check whether the 2nd byte of data is '1'
49. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 48RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
{
Relay1=1; //Turn ON Relay1
}
else if(byte2=='F') //Check whether the 2nd byte of data is '0'
{
Relay1=0; //Turn OFF Relay1
}
}
else if(byte1=='2') //Check whether the 1st byte of data is 'B'
{
if(byte2=='N') //Check whether the 2nd byte of data is '1'
{
Relay2=1; //Turn ON Relay2
}
else if(byte2=='F') //Check whether the 2nd byte of data is '0'
{
Relay2=0; //Turn OFF Relay2
}
}
else if(byte1=='3') //Check whether the 1st byte of data is 'C'
{
if(byte2=='N') //Check whether the 2nd byte of data is '1'
{
Relay3=1; //Turn ON Relay3
}
50. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 49RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
else if(byte2=='F') //Check whether the 2nd byte of data is '0'
{
Relay3=0; //Turn OFF Relay3
}
}
}
else if(byte1=='4') //Check whether the 1st byte of data is 'D'
{
if(byte2=='N') //Check whether the 2nd byte of data is '1'
{
Relay4=1; //Turn ON Relay4
}
else if(byte2=='F') //Check whether the 2nd byte of data is '0'
{
Relay4=0; //Turn OFF Relay4
}
}
else if(byte1=='X') //Check whether the 1st byte of data is 'D'
{
if(byte2=='N') //Check whether the 2nd byte of data is '1'
{
P2=0xFF; //Turn ON all the Relays
}
else if(byte2=='F') //Check whether the 2nd byte of data is '0'
{
51. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 50RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
P2=0x00; //Turn OFF all the Relays
}
}
else
{
P2=0x00; //Clear Port 2 all bits to 0 if any other variable has been received
}
}
//Function for delay routine
void delay() //Delay Routine
{
unsignedint x=60000; // larger the value of x the more is the delay.
while (x--); // executes this statement until x decrements to 0
}
52. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 51RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
BLUETOOTH RELAY SHIELD
OVERVIEW
Bluetooth technology is a short distance communication technology used by almost all phones
including smart phones and al laptops. This technology find very wide uses including that of
Home &
Industrial automation.
The Relay shield is capable of controlling 4 relays. The max switching power could be
12A/250VAC or 15A/24VDC. It could be directly controlled by Arduino through digital IOs.
OBJECTIVE OF THE EXPERIMENT
Controlling relay shield from Bluetooth enabled device (Android APK)
EXPERIMENTAL SETUP
53. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 52RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Note: remove USB after uploading the code, DC 12V 1A must be plugged in
RELAY SHIELD ARDUINO CODE
/*
Software serial multiple serial test
Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.
The circuit:
* RX is digital pin 10 (connect o TX of other device)
* TX is digital pin 1 (connect o RX of other device)
Note:
Not all pins on the Mega and Mega 2560 support change interrupts,
so only the following can be used for RX:
10, 1, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 6, 67, 68, 69
Not all pins on the Leonardo support change interrupts,
so only the following can be used for RX:
8, 9, 10, 1, 14 (MISO), 15 (SCK), 16 (MOSI).
Software serial multiple serial test
Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.
The circuit:
* RX is digital pin 2 (connect o TX of other device)
* TX is digital pin 3 (connect o RX of other device)
SENDING DATA FORMAT
1N TO ON RELAY1
1F TO OF RELAY1
2N TO ON RELAY2
54. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 53RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
2F TO OF RELAY2
3N TO ON RELAY3
3F TO OF RELAY3
4N TO ON RELAY4
4F TO OF RELAY4
This example code is in the public domain.
*/
#include <SoftwareSerial.h>
Software Serial my Serial(2, 3); / RX, TX
int rec;
void setup()
{
pin Mode(4, OUTPUT);
pin Mode(5, OUTPUT);
pin Mode(6, OUTPUT);
pin Mode(7, OUTPUT);
mySerial.begin(960);
}
void lop() / run over and over
{
while(!mySerial.available();
rec=mySerial.read();
if(rec='1')
{
while(!mySerial.available();
rec=mySerial.read();
58. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 57RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
8 channel Relay Bluetooth
OVERVIEW
This is Eight Chanel relay board controlled by Bluetooth Module. The Bluetooth relay board is with 8
SPDT relays rated up to 7A each. You can control devices 230V / 120V (up to 8) directly with one such
relay unit. Suitable for home automation applications, hobby projects, industrial
Automation. Bluetooth module enables you to wireless transmit & receive serial data.
FEATURES
Brand: RDL
Order No: RDL/8RB/14/001/V1.0
Product Datasheet: 8 Channel Relay Board
8 SPDT Relay channels (7A 250V,12A 120V,10A
125VAC, 10A 28VDC).
Power suply:12VDC 1AMP
Current consumption: 40 mA.
59. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 58RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
LED indication for relay & power supply.
Design based on highly proven IC ULN2803 as
Driver.
TL output.
Status LEDs
Android apk file will be given
High quality PCB FR4 Grade with FPT Certified.
60. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 59RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
APPLICATION DIAGRAM
INTERFACE
61. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 60RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Circuit Diagram
RELAY SWITCHBOARD SOFTWARE
AndroidAPP link
https://play.google.com/store/apps/details?id=rdl.relayswitchboard
62. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 61RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
SERIAL 8 CHANNEL AC 230V SR AND DIMMER WITH BLUETOOTH
INTERFACE
Brand: RDL
Order No: RDL/8SD/13/001/V1.0
Product Datasheet: 8-Channel Bluetooth Dimmer Datasheet
The board can be used in application where dimming of 10-20v AC power is required like dimming of
bulb or fan. The board can be control with Serial data from any microcontroller 0- 10% dimming or
ON/OF control Main power(230v) completely isolated from microcontroller.
FEATURES
Works on AC power supply 230V.
Load Capacity 12 Amp AC(Up to 200 Watt)
Isolated from mains power
Works from any microcontroller.
Serial Control (TTL)
Simultaneous 8 load control with 0-10% dimming.
Act as 8 channel solid state relay with ON/OF and dimming.
Optional input for Microcontroller or Bluetooth, XBEE, and USB interface pin TX, RX, 5V, GND.
63. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 62RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Electrical Characteristics
Average Power Dissipation of 0.5W
Operating Temperature +120 dregs
Holding Current (maximum)-30mA
Latching Current(maximum)-60mA
It is a 6pin Random Phase opt isolators TRIAC driver output
64. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 63RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
TRIAC
From Triode for Alternating Current, is a generic zed trade name for an electronic component hat
Can conduct current in either direction when it is triggered (turned on), and is formally called a
Bidirectional triode thyristor or bilateral triode thyristor.
Applications:
• Solenoid/Valve Controls
• Static ac Power Switch
• Lamp Ballasts
• Solid State Relays
• Interfacing Microprocessors to 15 Vac Peripherals
• Incandescent Lamp Dimmer
• Motor Controls
Electrical Characteristics
Total Power Dissipation @ TA is 25°is 4.4mW
Storage Temperature Range is -40 to +150 dregs
65. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 64RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
FIRING ANGLE
Phase angle of applied voltage at which the Thyristor conduct
66. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 65RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
CONNECTING 230V AC 8 CHANNELDIMMERWITH
ELECTRONIC GADGETS
UART INPUT FOR LOADS
A=load1 E=load5
B=load2 F=load6
C=load3 G=load7
D=load4 H=load8
S=ALL OF (LOAD1=OF, LOAD2=OF, LOAD3=OF, LOAD4=OF, LOAD5=OF
LOAD6=OF, LOAD7=OF, LOAD8=OF)
N=ALL ON (LOAD1=10%, LOAD2=10%, LOAD3=10%, LOAD4=10%, LOAD5=10%,
LOAD6=10%, LOAD7=10%, LOAD8=10%)
Example
A10= load1 at 10% dimmer level.
A026=load1 at 26% dimmer level.
B065=load2 at 65% dimmer level.
67. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 66RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
C089=load3 at 89% dimmer level.
LOAD1
68. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 67RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
BLOCK DIAGRAM
69. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 68RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
BLUETOOTH
Brand: RDL
Order No: RDL/BLT/13/001/V1.0
Bluetooth Module HC 05 Specifications:
Bluetooth protocol: Bluetooth Specification v2.0+ED
Frequency: 2.4GHz ISM band
Modulation: GFSK(Gaussian Frequency Shift Keying)
Emission power: =4dBm, Class 2
Sensitivity: =-84dBm at 0.1% BER
Sped: Asynchronous: 2.1Mbps(Max) /160 kbps, Synchronous: 1Mbps/1Mbps
Security: Authentication and encryption
Profiles: Bluetooth serial port
Power supply: +3.3VDC 50mA
Working temperature: -20 ~ +75 Centigrade
Dimension: 26.9mm x 13mm x 2.2 mm
Bluetooth Module HC 05 Application:
Computer and peripheral devices
GPS receiver
Industrial control
MCU projects
70. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 69RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
PROCEDURE TO OPERATE
Download the Bluetooth SP app of Research design lab from play store
71. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 70RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
72. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 71RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
73. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 72RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
74. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 73RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
NOTE: Since this module working with live 230V AC, while experimenting user has to take
Proper safety precautions.
75. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 74RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
RDL Wi-Fi Robo
Use your Android phone to control a robot via Wi-Fi and drives it like an RC car. It controls the direction
of a Robot, and also allows rotating clockwise and counter-clockwise. The Robot Control app works like a
joystick. Press the buttons FORWARD, BACKWARD for acceleration and moving forward and backward.
Left and Right buttons to move left and right, and a Mid button to stop the robot. The quit button exits
you from the app successfully. The app will be able to run on android devices with Ice-cream Sandwich
and higher versions.
The following data will be transmitted via Wi-Fi while performing below given Button press event.
Forward ->>> 1
Backward ->>> 2
Left ->>> 3
Right ->>> 4
Stop ->>> 5
76. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 75RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
77. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 76RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Brand: RDL
78. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 77RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
RDL Wi-Fi Relay
This app acts as a remote controller for controlling the appliance via Wi-Fi enabled Android devices. It
enables to control eight appliances (ON / OFF)
Features:
1. Support TCP/IP connection
2. It can control max eight devices.
3. The minimum version of Android OS required for this app is Ice-cream Sandwich (4.0 API).
4. When the button is pressed on it sends value: 1N, when button is pressed OFF it sends value: 1F
SW1 -> ON ………> 1N
SW1 -> OFF ………> 1F
SW2 -> ON ………> 2N
SW2 -> OFF ………> 2F
………. ………
SW8 -> ON ………> 8N
SW8 -> OFF ………> 8F
79. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 78RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Brand: RDL
Order No: RDL/WiFi-R/14/001/v1.0
80. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 79RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
81. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 80RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
82. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 81RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
83. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 82RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
84. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 83RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
85. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 84RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
XBee Wi-Fi Configuration
XBee is very easy and popular wireless device. It is a transceiver, it can transmit and it receives data
wirelessly. There are several types of XBee module. The very popular XBee is Series 1 (802.15.4), comes
with the firmware to create connection for point to point or star network. But bear in mind, many
people actually thought it is using ZigBee protocol, but it is not compliance to ZigBee because it uses the
low layer of ZigBee protocol only
SOFTWARE
XCTU V6.1.0.
86. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 85RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Click on add devices
Choose your corresponding comport
Click on finish
87. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 86RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
88. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 87RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
Click on update firmware
89. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 88RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
90. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 89RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
91. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 90RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
92. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 91RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
93. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 92RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
94. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 93RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM
In order to make sure the Soft AP mode working on the Xbee WiFi module. First, I search the WiFi with
“RDL WIFI” SSID using my Android phone, and connect to it.
Click on connect
95. INTERFACING ANDROID WITH EMBEDDED SYSTEMS
Page 94RESEARCH DESIGN LAB | VOLUME 1, ISSUE 1 WWW.RESEARCHDESIGNLAB.COM