0% found this document useful (0 votes)
13 views60 pages

Iot Lab Manual-1

Sure! Here's a paragraph with approximately 100 words: Technology has transformed the way we live, work, and connect with others. From smartphones to smart homes, it continues to reshape daily life. The internet has made information more accessible than ever, allowing people to learn, communicate, and collaborate across the globe. Social media platforms have changed how we interact, share experiences, and build communities. In the workplace, automation and artificial intelligence are increasing

Uploaded by

sujinfl84
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views60 pages

Iot Lab Manual-1

Sure! Here's a paragraph with approximately 100 words: Technology has transformed the way we live, work, and connect with others. From smartphones to smart homes, it continues to reshape daily life. The internet has made information more accessible than ever, allowing people to learn, communicate, and collaborate across the globe. Social media platforms have changed how we interact, share experiences, and build communities. In the workplace, automation and artificial intelligence are increasing

Uploaded by

sujinfl84
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 60

CS3691 EMBEDDED SYSYTEM AND IOT LAB

EX.NO DATE PRACTICAL PAGE MARKS SIGN


EXERCISES NO
8051 Assembly Language
1 Experiments Using Keil
Software
Data Transfer Between
2 Registers And Memory
3 Perform ALU Operations

Binary Arithmetic Programs


4A. Using Embedded C

Unary Arithmetic Programs


4B Using Embedded C

Introduction to Arduino
5 platform and programming

Interfacing Arduino to Zigbee


6 module
Interfacing Arduino to GSM
7 module

Interfacing Arduino to
8 Bluetooth Module
9 Introduction to Raspberry PI
platform and python
programming
10 Interfacing sensors to
Raspberry PI
11 Communicate between
Arduino and Raspberry PI
using any wireless medium
12 Setup a cloud platform to log
the data
13 Log Data using Raspberry PI
and upload to the cloud
platform
14 Design an IOT based system
EX.NO:01
8051 Assembly Language Experiments Using Keil Software
DATE:

AIM:
To perform the following operation using assembly language in keil ide.
➢ Sum of n number
➢ Addition of two arrays
➢ Multiplication of 2 2-type number.

SOFTWARE REQUIREMENTS
➢ Keil µvision 4

SOFTWARE HANDLING PROCEDURE:

STEP 1: Double click on µvision 4 icon in the desktop.

STEP 2: Select “New µvision Project” from project in the menu bar.
STEP 3: Browse and create a new project in the required location.

STEP 4: Select the target device(here,LPC1768 from NXP) from the list or type the exact name of the device.
Press OK.

STEP 5: Copy start up to Project folder and add to project file”?- Press NO.
STEP 6: In the project window, right click on source and select Add new item to group “source group 1”

STEP 7: Select Asm file and give name of the file with .s extension and press ADD.

STEP 8: Type the program in the editor space and save.


STEP 9: Translate the program by select the icon from tool bar or from menu bar.

STEP 10: Check for errors and warnings in the bottom window.

STEP 11: If no error,Select “Build” icon from tool bar or from menu bar.
STEP 12: Start the debug session from Menu bar.

STEP 13: Press OK

STEP 14: Press function key F11 or select “step” option under Debug menu for single step execution and
verify the output in register window/Memory window/xPSR.

1. SUM OF N NUMBERS:
ALGORITHM:
➢ Take 5 number & store in internal memory.
➢ Add it in accumulator.
➢ Store the result in register.
➢ View the result.

ASSEMBLY CODE:
ORG 000H
MOV A,#00H
MOV R0,#40H
MOV R1,#05
LABEL: ADD A,@R0 INC
R0
DJNZ R1,LABEL
MOV R2,A
END

INPUT:
I40:01 I41:02 I42:03
I43:04 I44:05
OUTPUT:
R2:0F

2. ADDITION OF TWO ARRAYS:


ALGORITHM:
➢ Take two arrays and store it in internal memory.
➢ Add the two arrays and store it in the internal memory.
➢ View the result.

ASSEMBLY CODE:
ORG 000H
MOV RO,#50H
MOV R1,#60H MOV
R2,#05
LABEL: MOV A,@R0
ADD A,@R0
MOV @R0,A
INC R0
INC R1
DJNZ R2,LABEL END

INPUT
I50:01 I50:02 I50:03 I50:04 150:05
I60:02 I61:02 I62:03 I63:04 I64:05
OUTPUT:

I50:02 I51:04 I52:06 I53:08 I54:0


3. MULTIPLICATION OF 2-16 BIT NUMBER:
ALGORITHM:
➢ Take two 16 bit number.
➢ Store the 1st 16 bit number in R1,R3 with MSB and LSB respectively.
➢ Store the 2nd 16 bit number in R2,R4 with MSB and LSB respectively.
➢ Multiply these two number. ➢ Store the result in the internal memory ➢ View the results.
ASSEMBLY CODE:
ORG 000H
MOV R1,#3fH
MOV R2,#23H
MOV R3,#11h
MOV R4,#2fH
MOV A,R3
MOV B,R4
MUL AB MOV
R0,#40H MOV
@R0,A INC R0
MOV @R0,B MOV
A,R4
MOV B,R1
MUL AB
ADD A,@R0
MOV @R0,A
INC R0 MOV
@R0,B MOV
A,R2 MOV
B,R3 MUL AB DEC
R0 ADD
A,@R0 MOV
@R0,A INC
R0 MOV A,B
ADD ,@R0
MOV @R0,A
MOV A,R2
MOV B,R1
MUL AB
ADD A,@R0
MOV @R0,A
MOV A,B
ADDC A,#00H
INC R0
MOV @R0,A
END

OUTPUT:
I40:1F I41:E7 I42:AA I43:08

VALUE: 08AAE71F

RESULT:
Simple operation using assembly language in KEIL IDE is executed successfully.
EX.NO:02 DATA TRANSFER BETWEEN REGISTERS AND MEMORY
DATE:

AIM:
In this program explain about how to test data transfer between registers and memory

SOFTWARE REQUIREMENTS
➢ Keil µvision 4

PROCEDURE:
STEP 1: Double click on µvision 4 icon in the desktop.
STEP 2: Select “New µvision Project” from project in the menu bar.
STEP 3: Browse and create a new project in the required location
STEP 4: Select the target device(here,LPC1768 from NXP) from the list or type the exact name
of the device. Press OK.
STEP 5: Copy start up to Project folder and add to project file”?- Press NO.
STEP 6: In the project window, right click on source and select Add new item to group
“source group1”
STEP 7: Select Asm file and give name of the file with .s extension and press ADD.
STEP 8: Type the program in the editor space and save.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 10: Check for errors and warnings in the bottom window.
STEP 11: If no error,Select “Build” icon from tool bar or from menu bar.
STEP 12: Start the debug session from Menu bar.
STEP 13: Press OK
STEP 14: Press function key F11 or select “step” option under Debug menu for single step
execution and verify the output in register window/Memory window/xPSR.

CODING:

A) ALP TO MOVE A BLOCK OF DATA FROM CODE TO RAM MEMORY

AREA Reset, DATA, READONLY


EXPORT Vectors
Vectors
DCD 0X20001000
DCD Reset_Handler;
AREA writedata, CODE, READONLY
src DCD 0x11,0X22,0X33,0X44,0X55
ENTRY
EXPORT Reset_Handler
Reset_Handler
LDR r0,=src
LDR r1,=dst
MOV r2,#5
l1 LDR r3,[r0],#4
STR r3,[r1], #4
SUBS r2,
#1 BNE l1
Stop B stop
AREA data, DATA,READWRITE
dst DCD 0X0
END
A) ALP TO MOVE A BLOCK OF DATA FROM CODE TO RAM MEMORY-USING LDM
and STM INSTRUCTIONS(MULTIPLE DATA TRANSFER)

AREA Reset, DATA, READONLY


EXPORT Vectors
Vectors
DCD 0X20001000
DCD Reset_Handler;
AREA write data, CODE, READONLY src
DCD 0x11,0X22,0X33,0X44,0X55
ENTRY
EXPORT Reset_Handler
Reset_Handler
LDR r0,=src
LDR r1,=dst
MOV r2,#5
l1 LDMIA r0!,{r4-r8}
STMIA r1!,{r4-r8}
SUBS r2,#1
BNE l1
Stop B stop
AREA data, DATA,READWRITE
Dst DCD 0X0
END

Result:
INPUT: 00000011h,00000022h,00000033h,00000044h,00000055h.
OUTPUT at dst : 00000011h,00000022h,00000033h,00000044h,00000055h.
RESULT:
Successfully transfer data from registers to memory using keil ide.
EX.NO:03 PERFORM ALU OPERATIONS
DATE:

AIM:
To perform the addition, subtraction, multiplication of two 16-bit numbers and to perform
logical operations AND, OR, XOR on two eight bit numbers using keil ide.

SOFTWARE REQUIREMENTS
➢ Keil µvision 4

PROCEDURE:
STEP 1: Double click on µvision 4 icon in the desktop.
STEP 2: Select “New µvision Project” from project in the menu bar.
STEP 3: Browse and create a new project in the required location
STEP 4: Select the target device(here,LPC1768 from NXP) from the list or type the exact
name of the device. Press OK.
STEP 5: Copy start up to Project folder and add to project file”?- Press NO.
STEP 6: In the project window, right click on source and select Add new item to group
“source group1”
STEP 7: Select Asm file and give name of the file with .s extension and press ADD.
STEP 8: Type the program in the editor space and save.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 10: Check for errors and warnings in the bottom window.
STEP 11: If no error,Select “Build” icon from tool bar or from menu bar.
STEP 12: Start the debug session from Menu bar.
STEP 13: Press OK
STEP 14: Press function key F11 or select “step” option under Debug menu for single step
execution and verify the output in register window/Memory window/xPSR.

ADDITION OF TWO 16-BIT NUMBERS.

mov r0,#34h mov //lower nibble of No.1


r1,#12h mov //higher nibble of No.1
r2,#0dch mov //lower nibble of No.2
r3,#0feh //higher nibble of No.2
clr c
mov a,r0
add a,r2
mov 22h,a
mov a,r1
addc a,r3
mov 21h,a
mov 00h,c
end

Result:
Input: Output:
SUBTRACTION OF TWO 16-BIT NUMBERS.

mov r0,#0dch //lower nibble of No.1


mov r1,#0feh //higher nibble of No.1
mov r2,#34h //lower nibble of No.2
mov r3,#12h //higher nibble of No.2
clr c //
mov a,r0
subb a,r2
mov 22h,a
mov a,r1
subb a,r3
mov 21h,a
mov 00h,c
end

Result:

Note: Try with different data. Ex: (Smaller number) – (larger number).

MULTIPLICATION OF TWO 16-BIT NUMBERS.

mov r0,#34h /5678*1234


mov r1,#12h
mov r2,#78h
mov r3,#56h
mov a,r0
mov
b,r2 mul ab mov
33h,a
mov r4,b
mov a,r0
mov b,r3
mul ab
add a,r4
mov r5,a
mov a,b
addc
a,#00h mov
r6,a mov
a,r1 mov
b,r2 mul ab
add a,r5
mov 32h,a
mov a,b
addc a,r6
mov
00h,c
mov r7,a
mov a,r3
mov b,r1
mul ab
add a,r7 mov
31h,a
mov a,b
addc
a,20h
mov
30h,a end

Result:

Note: Write the logic of the program. Try with some other logic.

LOGICAL OPERATIONS AND, OR, XOR

mov a, 21h //do not use #, as data ram 21h is to be


accessed anl a, 22h //logical and operation mov 30h, a
//and operation result stored in
30h mov a, 21h
orl a,22h //logical or operation
mov 31h, a //or operation result stored in
31h mov a,21h
xrl a,22h //logical xor operation mov 32h,a
// xor operation result stored in 32h end Result:
Before Execution: D: 21H = 22H =

After Execution: D: 030H = //AND operation


D: 031H = //OR operation
D: 032H = //XOR operation

RESULT:

Successfully performed the addition, subtraction, multiplication of two 16-bit numbers and to
perform logical operations AND, OR, XOR on two eight bit numbers using keil ide.
EX.NO:04(A) BINARY ARITHMETIC PROGRAMS USING EMBEDDED C
DATE:
AIM:
To write a program in basic arithmetic programs using embedded C.

SOFTWARE REQUIREMENTS
➢ Keil µvision 4

PROCEDURE:
STEP 1: Double click on µvision 4 icon in the desktop.
STEP 2: Select “New µvision Project” from project in the menu bar.
STEP 3: Browse and create a new project in the required location
STEP 4: Select the target device(here,LPC1768 from NXP) from the list or type the exact name
of the device. Press OK.
STEP 5: Copy start up to Project folder and add to project file”?- Press NO.
STEP 6: In the project window, right click on source and select Add new item to group
“source group1”
STEP 7: Select Asm file and give name of the file with .s extension and press ADD.
STEP 8: Type the program in the editor space and save.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 10: Check for errors and warnings in the bottom window.
STEP 11: If no error,Select “Build” icon from tool bar or from menu bar.
STEP 12: Start the debug session from Menu bar.
STEP 13: Press OK
STEP 14: Press function key F11 or select “step” option under Debug menu for single step
execution and verify the output in register window/Memory window/xPSR.

THEORY :
Arithmetic Operators are the type of operators in C that are used to perform
mathematical operations in a C program. They can be used in programs to define expressions and
mathematical formulas. The C arithmetic operators are the symbols that are used to perform
mathematical operations on operands. There are a total of 9 arithmetic operators in C to provide the
basic arithmetic operations such as addition, subtraction, multiplication, etc.

Types of Arithmetic Operators in C


The C Arithmetic Operators are of two types based on the number of operands they
work. These are as follows:
1. Binary Arithmetic Operators 2. Unary Arithmetic Operators

1. Binary Arithmetic Operators in C


The C binary arithmetic operators operate or work on two operands. C provides 5 Binary Arithmetic
Operators for performing arithmetic functions which are as follows:

Operator Name of the Arithmetic Operation


Operator
Syntax
+ Addition Add two operands. x+y

Operator Name of the Arithmetic Operation


Operator
Syntax

x–y
– Subtraction Subtract the second operand from the first operand.

* Multiplication Multiply two operands. x*y

/ Division Divide the first operand by the second operand. x/y

% Modulus Calculate the remainder when the first operand is x % y


divided by the second operand.
Binary Arithmetic Operator in C
CODING:

C
// C program to demonstrate syntax of binary arithmetic
// operators
#include <stdio.h>

int main()
{
int a = 10, b = 4, res;

// printing a and b
printf("a is %d and b is %d\n", a, b);

res = a + b; // addition
printf("a + b is %d\n", res);

res = a - b; // subtraction
printf("a - b is %d\n", res);

res = a * b; // multiplication
printf("a * b is %d\n", res);

res = a / b; // division
printf("a / b is %d\n", res);

res = a % b; // modulus
printf("a %% b is %d\n", res);

return 0;
}

Output
a is 10 and b is 4
a + b is 14 a - b
is 6 a * b is 40 a
/ b is 2 a % b is 2

Result:

Successfully write a program to performed basic arithmetic operation using embedded c


EX.NO:04(B) UNARY BINARY ARITHMETIC PROGRAMS USING EMBEDDED C
DATE:

AIM:
To write a program in basic arithmetic programs using embedded C.

SOFTWARE REQUIREMENTS
➢ Keil µvision 4

PROCEDURE:
STEP 1: Double click on µvision 4 icon in the desktop.
STEP 2: Select “New µvision Project” from project in the menu bar.
STEP 3: Browse and create a new project in the required location
STEP 4: Select the target device(here,LPC1768 from NXP) from the list or type the exact name
of the device. Press OK.
STEP 5: Copy start up to Project folder and add to project file”?- Press NO.
STEP 6: In the project window, right click on source and select Add new item to group
“source group1”
STEP 7: Select Asm file and give name of the file with .s extension and press ADD.
STEP 8: Type the program in the editor space and save.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 9: Translate the program by select the icon from tool bar or from menu bar.
STEP 10: Check for errors and warnings in the bottom window.
STEP 11: If no error,Select “Build” icon from tool bar or from menu bar.
STEP 12: Start the debug session from Menu bar.
STEP 13: Press OK
STEP 14: Press function key F11 or select “step” option under Debug menu for single step
execution and verify the output in register window/Memory window/xPSR.

THEORY

Unary Arithmetic Operators in C


The unary arithmetic operators operate or work with a single operand. In C, we have two
unary arithmetic operators which are as follows:
Operator Symbol Operation Implementation

Decreases the integer value of the variable by


Decrement Operator — –h or h–
one.

Increases the integer value of the variable by


Increment Operator ++ ++h or h++
one.

Unary Plus Operator + Returns the value of its operand. +h

Unary Minus Returns the negative of the value of its


– -h
Operator operand.
Increment Operator in C
The ‘++’ operator is used to increment the value of an integer. It can be used in two ways:

1. Pre-Increment
When placed before the variable name (also called the pre-increment operator), its value is
incremented instantly. Consider the example: a = ++x;
This example can be expanded to a = (x = x + 1);

2. Post Increment
When it is placed after the variable name (also called post-increment operator), its value is
preserved temporarily until the execution of this statement and it gets updated before the execution
of the next statement. For example: a = x++;
It can be expanded to
a = x;
x = x + 1;

Decrement Operator in C
The ‘–‘ operator is used to decrement the value of an integer. Just like the increment operator,
the decrement operator can also be used in two ways:

1. Pre-Decrement
When placed before the variable name (also called the pre-decrement operator), its value is
decremented instantly. For example, – – x.

2. Post Decrement
When it is placed after the variable name (also called post-decrement operator), its value is
preserved temporarily until the execution of this statement and it gets updated before the execution
of the next statement. For example, x – –.
Coding of Unary Operators in C
C
// C program to demonstrate working
// of Unary arithmetic
// operators
#include <stdio.h>
int main()
{
int a = 10, b = 4, res;
printf("Post Increment and Decrement\n");
// post-increment example:
// res is assigned 10 only, a is not updated yet
res = a++;
printf("a is %d and result is %d\n", a,
res); // a becomes 11 now
// post-decrement example:
// res is assigned 11 only, a is not updated yet
res = a--;
printf("a is %d and result is %d\n", a,
res); // a becomes 10 now

printf("\nPre Increment and Decrement\n");


// pre-increment example:
// res is assigned 11 now since
// a is updated here itself
res = ++a;
// a and res have same values = 11

printf("a is %d and result is %d\n", a, res);


// pre-decrement example:
// res is assigned 10 only since a is updated here
// itself
res = --a;
// a and res have same values = 10
printf("a is %d and result is %d\n", a, res);

return 0;
}

Output
Post Increment and Decrement
a is 11 and result is 10 a is 10
and result is 11

Pre Increment and Decrement


a is 11 and result is 11
a is 10 and result is 10

Result:

Successfully write a program to perform basic arithmetic operation using embedded c.


EX.NO:05 Introduction to Arduino platform and programming
DATE:

AIM:
In this program explain about how to develop an embedded application using arduino.

SOFTWARE REQUIREMENTS
➢ Arduino IDE software

HARDWARE REQUIREMENTS
➢ Arduino UNO
➢ Breadboard
➢ Jumper wires
➢ Resistor
➢ LED lights
➢ USB cable

PROCEDURE:
STEP 1: Download and install Arduino IDE software
STEP 2: Connect arduino UNO to breadboard
Pin 6 → 35
Pin 7 → 40
Pin 8 → 45
STEP 3: 3 Resistor are connected in breadboard
3 LED lights are connected in breadboard
STEP 4: Write a program
STEP 5: Debug the program. You will see all LED lights are on

CODING:

const int led1 = 6, led = 7, led = 8; int delayalue = 1000; void


setup()
{
pinMode(led, 1); // HIGH = 1 and INPUT = 0 pinMode(led 2, OUTPUT); pinMode(led
3, OUTPUT);
} void
loop()
{
digitalWrite(led1, 1); // HIGH = 1 means 5 volts digitalWrite(led2, HIGH); digitalWrite(led3,
HIGH); delay(delayvalue);
digitalWrite(6, 0); // LOW = 0 means 0 volt digitalWrite(7,
LOW); digitalWrite(8, LOW); delay(delayvalue); delayvalue ==
50; if(delayvalue == 0) delayvalue = 1000;
}
OUTPUT:
RESULT:
Successfully installed arduino IDE software and we will see all LED lights are on

.
EX.NO:06 Interfacing Arduino to Zigbee module
DATE:

AIM:
To write a program in interface XBee module with Arduino Uno board.

HARDWARE REQUIREMENTS
➢ 1 x Arduino Uno
➢ 2 x XBee Pro S2C modules (any other model can be used)
➢ 1 x Xbee explorer board (optional)
➢ 1 x Xbee Breakout board (optional)
➢ USB cables
➢ LEDs

SOFTWARE REQUIREMENTS
➢ Arduino IDE
➢ XCTUSoftware

PROCEDURE:
Connections:

1. Tx (pin2)of XBee -> Rx of Arduino board


2. Rx(pin3) of Xbee -> Tx of Arduino board
3. Gnd(pin10) of Xbee -> GND of Arduino board
4. Vcc (Pin1) of Xbee -> 3.3v of Arduino board
If you are using the Arduino board to connect the transmitter ZigBee with the laptop, connections
will be same as for the programming the ZigBee.

Step 1:- Now, click on the search button. This will show you all the RF devices connected with
your laptop. In our case, it will show only one XBee module.

Step 2:- Select the Serial port of the Explorer board/Arduino board and click on Next.
Step 3:- In the next window, set the USB port parameters as shown below and click on Finish.

Step 4:- Select the Discovered device and click on Add selected device. This process will add your
XBee module to XCTU dashboard.

Step 5:- Now, you can configure your XBee module in this window. Use either AT commands or put
the data manually. As you can see, there is R showing on the left panel which means Xbee is in router
mode. We have to make it Coordinator for the transmitter part. First, update the Firmware by clicking on
the Update firmware
.
Step 6:- Choose the Product family of your device which is available on back of XBee module. Select
function set and firmware version as highlighted below and click on Update.

Step 7:- Now, you have to give ID, MY and DL data to make connection with other XBee. ID
remain same for both the modules. Only MY and DL data interchange i.e. MY for the receiver
XBee becomes DL of the transmitter XBee (coordinator) and DL for the receiver XBee
becomes MY of the transmitter XBee. Make CE as Coordinator and then hit the Write
button. As shown below.

ATDL ATMY ATID


XBee 1 coordinator 1234 5678 2244
XBee 2 end device 5678 1234 2244
Step 8:- After writing the above data to the transmitter part, plug out it from the explorer board
and plug it in the second XBee module. Repeat the same process as above only changes are the
DL, MY, and CE. As we will make the second XBee as End device so in CE drop down menu,
select the End device and hit the Write button.

Step 9:- Now, our XBee modules are ready to interface with the Arduino board. We will connect
the transmitter XBee to the laptop and receiver XBee with the Arduino board.
Then give commands to the receiver part using laptop.
PROGRAM:

int led = 13; int


received = 0; int i;
void setup() { Serial.begin(9600); pinMode(led, OUTPUT);
} void loop()
{
if (Serial.available() > 0) { received = Serial.read();
if (received == 'a'){ digitalWrite(led, HIGH); delay(2000); digitalWrite(led, LOW);
}
else if (received == 'b'){ for(i=0;i<5;i++){ digitalWrite(led, HIGH); delay(1000); digitalWrite(led,
LOW); delay(1000);
}
}
}
}
Output:

RESULT:
Successfully write a program in interface XBee module with Arduino Uno board.
EX.NO:07 Interfacing Arduino to GSM module
DATE:
AIM
To write a program in interface arduino to GSM module.

HARDWARE REQUIREMENTS
➢ Arduino UNO
➢ 2G SIM
➢ 12V Power supply
➢ 900 GSM module
➢ Jumper wires

SOFTWARE REQUIREMENTS

➢ Arduino IDE

PROCEDURE:

Step 1: Insert sim in GSM module


Step 2: Connect antenna to GSM module
Step 3: Arduino GND→ GSM Module GND Arduino pin 9→GSM Module TXD Arduino pin
10→GSM Module RXD
Step 4: Power supply to connect Arduino and Module Step 5: Wait until network LED start
building slowly Step 6: Connect arduino and system
Step 7: Upload the code. And open the serial monitor
Step 8: Type ‘s’ the message will send your mobile. And reply the message also applicable.

PROGRAM

#include <SoftwareSerial.h> SoftwareSerial mySerial(9, 10); void setup()


{
mySerial.begin(9600); // Setting the baud rate of GSM Module Serial.begin(9600); // Setting the
baud rate of Serial Monitor (Arduino) delay(100);
}
void loop()
{
if (Serial.available()>0) switch(Serial.read())
{ case
's':
mySerial.println("AT+CMGF=1"); //Sets the GSM Module in Text Mode delay(1000); // Delay
of 1 second mySerial.println("AT+CMGS=\"+919616288208\"\r"); // Replace x with mobile
number delay(1000);
mySerial.println("Technolab creation");// The SMS text you want to send delay(100);
mySerial.println((char)26);// ASCII code of CTRL+Z for saying the end of sms to the module
delay(1000); break; case 'r':
mySerial.println("AT+CNMI=2,2,0,0,0"); // AT Command to receive a live SMS
delay(1000); break; }
if (mySerial.available()>0) Serial.write(mySerial.read()); }

Output
Result

Successfully connect arduino and GSM Module.


EX.NO:08 Interfacing Arduino to Bluetooth Module
DATE:
AIM:
To write a program to interfacing arduino and Bluetooth module.

HARDWARE REQUIREMENTS

➢ Arduino Board " I used Arduino Uno ".


➢ Bluetooth module HC-05.
➢ Solderless jumper.
➢ Bread Board .
➢ Battery 9V "Optional".

SOFTWARE REQUIREMENTS

➢ Arduino IDE

➢ Tera Term or any terminal emulator software

PROCEDURE

Step 1: Connection

Step 2:Connect arduino with pc


Step 3:Download tera term software
Step 4: To make a link between your Arduino and bluetooth
Step 5: Go to the bluetooth icon , right click and select Add a Device
Step 6: Search for new device , Our bluetooth module will appear as HC-05 , and add it Step
7: The pairing code will be 1234 .
Step 8:After make a pairing , we can now program the arduino and upload a sketch to send
or receive data from Computer. Step 9: upload the code
Step 10:We will use software serial library to make pin D10 & D11 As Tx & Rx instead of using
the default Rx and tx " D0 &D1 On most arduino Board " .
Step 11: LED connected to D13 To blink on/off , by press # 1 from PC Keyboard the LED blink
on , and if we press 0 LED blink off
PROGRAM
#include <SoftwareSerial.h>// import the serial library SoftwareSerial Genotronex(10, 11); // RX,
TX
int ledpin=13; // led on D13 will show blink on / off int BluetoothData; // the data given from
Computer void setup() {
// put your setup code here, to run once: Genotronex.begin(9600);
Genotronex.println("Bluetooth On please press 1 or 0 blink LED ..");
pinMode(ledpin,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly: if (Genotronex.available()){
BluetoothData=Genotronex.read(); if(BluetoothData=='1'){ // if number 1 pressed ....
digitalWrite(ledpin,1); Genotronex.println("LED On D13 ON ! ");
} if (BluetoothData=='0'){// if number 0 pressed ....
digitalWrite(ledpin,0); Genotronex.println("LED On D13 Off ! ");
} } delay(100);// prepare for next
data ...
}

Output

Result

Successfully connect Arduino and Bluetooth Module.


EX.NO:9 Introduction to Raspberry PI platform and python programming
DATE:

AIM:
To write a program to implement LED blinking application using Raspberry Pi.

HARDWARE REQUIREMENTS:
➢ Raspberry Pi 3 Model B
➢ 5mm LED x 1
➢ 1KΩ Resistor (1/4 Watt) x 1
➢ Mini Breadboard x 1
➢ Connecting wires
➢ Miscellaneous (Computer, Ethernet cable, Power Supply for Raspberry Pi etc.)

SOFTWARE REQUIREMENTS:
➢ Vim Editor(Command Line Editor) Login in to your Raspberry Pi using SSH

PROCEDURE:
Step 1: Connect the LED to the Raspberry Pi.
Step 2: Anode of the LED is connected to the 3.3V supply pin of the Raspberry Pi through the
1KΩ resistor.
Step 3: The cathode of the LED is connected to GPIO25 (Physical Pin 22).
Step 4: To install the Vim Editor (by default, Raspbian has Vi editor and to get full features of
Vim)
Step 5: Enter the following code in the SSH Terminal
sudo apt-get install vim
Step 6: Now open a blank Python file using Vim editor with the file name being blinkLed.py. Step
7: Use the following command
sudo vim blinkLed.py
Step 8: Save the blinkLed.py file and close the Vim Editor. To check the code, use the following
command in the SSH Terminal (Putty).
sudo python blinkLed.py
Step 9: Finally LED should blink at an interval of 1 second

CODING:

#!/usr/bin/env python import RPi.GPIO as GPIO # RPi.GPIO can be referred as GPIO


from now import time ledPin = 22 # pin22 def setup():
GPIO.setmode(GPIO.BOARD) # GPIO Numbering of Pins GPIO.setup(ledPin, GPIO.OUT) #
Set ledPin as output GPIO.output(ledPin, GPIO.LOW) # Set ledPin to LOW to turn Off the LED
def loop():
while True:
print 'LED on'
GPIO.output(ledPin, GPIO.HIGH) # LED On time.sleep(1.0) # wait 1 sec print
'LED off'
GPIO.output(ledPin, GPIO.LOW) # LED Off time.sleep(1.0) # wait 1 sec
def endprogram():
GPIO.output(ledPin, GPIO.LOW) # LED Off GPIO.cleanup() # Release resources if name
== ' main ': # Program starts from here setup() try: loop() except KeyboardInterrupt: #
When 'Ctrl+C' is pressed, the destroy() will be executed.
endprogram()

OUTPUT:

RESULT:
Successfully implemented LED blinking application using Raspberry Pi.
EX.NO:10 Interfacing sensors to Raspberry PI
DATE:
AIM:
To write a program how to interface IR sensor with Raspberry Pi.

HARDWARE REQUIREMENTS
➢ Raspberry Pi
➢ Breadboard
➢ IR sensor
➢ Jumper wires

SOFTWARE REQUIREMENTS
➢ Raspberry pi VNC viewer

PROCEDURE
Step 1: To place the IR sensor in to breadboard
Step 2: IR sensor→ Raspberry Pi OUT→ pin 8
GND→pin 39
VCC→pin 2
Step 3:To connect Raspberry pi and system Step 4: Write a program and run the script Step 5:
You will see the output in shell monitor

PROGRAM

import RPI.GPIO as GPIO import


time
GPIO.setmode(GPIO.BOARD
) GPIO.setup(8,GPIO.IN)
while True:
if GPIO.input(8)==0;
print(“IR sensor detect the object”)
time.sleep(0.1)
else:
print(“IR sensor not detect the object”) time.sleep(0.1)

Output
RESULT
Successfully implement to IR sensor with Raspberry
EX.NO:11 Communicate between Arduino and Raspberry PI using any wireless
DATE: medium
AIM:
To Write a program to wireless Communication between Arduino & Raspberry Pi using
LoRa Module SX1278.

HARDWARE REQUIREMENTS:
➢ Raspberry Pi 4
➢ Arduino Uno
➢ SX1278 433MHz LoRa Transmitter- Receiver Module
➢ DHT11

SOFTWARE REQUIREMENTS:
➢ Cayene IoT platform Raspberry pi

PROCEDURE:

Step 1: Connect Arduino and Module

LoRa SX1278 Module Arduino Uno

3.3V 3.3V

GND GND

NSS D10

DIO0 D2

SCK D13

MISO D12

MOSI D11

RST D9

DHT 11 Sensor Arduino Uno

VCC 3.3V

GND GND

DATA A0

Step 2: Connect Raspberry pi and Module

Raspberry Pi Lora – SX1278 Module

3.3V 3.3V
Ground Ground

GPIO 10 MOSI

GPIO 9 MISO

GPIO 11 SCK

GPIO 8 Nss / Enable

GPIO 4 DIO 0

GPIO 17 DIO 1

GPIO 18 DIO 2

GPIO 27 DIO 3

GPIO 22 RST

Step 3: Cayenne Setup for LoRa Communication


sign-in/Signup into your Cayenne account and then go to the Cayenne dashboard and click on
‘Add new’ and then click on ‘Device/Widget.’

Step 4: click on ‘Bring Your Own Thing.’

Step 5: Connect your device


Step 6: Upload the Arduino code to the Arduino board and launch the python code in Pi.

Step 7: You should see the temperature and humidity values received in pi though the shell
window.

PROGRAM:

from time import sleep from


SX127x.LoRa import *
from SX127x.board_config import BOARD import paho.mqtt.client as mqtt username
= "20f70690-4976-11ea-84bb-8f71124cfdfb" password =
"3d7eaaf9a7c9e28626fcab4ec5a61108cfbb8be0" clientid = "cccb41b0-4977-11ea-b73d-
1be39589c6b2"
mqttc = mqtt.Client(client_id=clientid) mqttc.username_pw_set(username, password=password)
mqttc.connect("mqtt.mydevices.com", port=1883, keepalive=60) mqttc.loop_start()
topic_dht11_temp = "v1/" + username + "/things/" + clientid + "/data/1" topic_dht11_humidity
= "v1/" + username + "/things/" + clientid + "/data/2" BOARD.setup() class
LoRaRcvCont(LoRa):
def init (self, verbose=False): super(LoRaRcvCont, self). init (verbose)
self.set_mode(MODE.SLEEP) self.set_dio_mapping([0] * 6)
def start(self): self.reset_ptr_rx()
self.set_mode(MODE.RXCONT) while True: sleep(.5)
rssi_value = self.get_rssi_value() status = self.get_modem_status()
sys.stdout.flush() def on_rx_done(self): print ("\nReceived: ")
self.clear_irq_flags(RxDone=1)
payload = self.read_payload(nocheck=True) #print (bytes(payload).decode("utf-
8",'ignore')) data = bytes(payload).decode("utf-8",'ignore') print (data) temp
= (data[0:4]) humidity = (data[4:6]) print ("Temperature:") print (temp) print
("Humidity:") print (humidity)
mqttc.publish(topic_dht11_temp, payload=temp, retain=True)
mqttc.publish(topic_dht11_humidity, payload=humidity, retain=True) print ("Sent to Cayenne")
self.set_mode(MODE.SLEEP) self.reset_ptr_rx() self.set_mode(MODE.RXCONT) lora
= LoRaRcvCont(verbose=False) lora.set_mode(MODE.STDBY)
# Medium Range Defaults after init are 434.0MHz, Bw = 125 kHz, Cr = 4/5, Sf =
128chips/symbol, CRC on 13 dBm lora.set_pa_config(pa_select=1)
try:
lora.start()
except KeyboardInterrupt: sys.stdout.flush() print
("") sys.stderr.write("KeyboardInterrupt\n")
finally: sys.stdout.flush() print ("")
lora.set_mode(MODE.SLEEP) BOARD.teardown()

Arduino Code:
#include <SPI.h> #include <RH_RF95.h> #include "DHT.h"
#define DHTPIN A0 // what pin we're connected to #define DHTTYPE DHT11 // DHT type
DHT dht(DHTPIN, DHTTYPE);
int hum; //Stores humidity value int temp; //Stores temperature value RH_RF95 rf95; void
setup()
{
Serial.begin(9600); dht.begin();
if (!rf95.init()) Serial.println("init failed");
// Defaults after init are 434.0MHz, 13dBm, Bw = 125 kHz, Cr = 4/5, Sf = 128chips/symbol, CRC
on

}
void loop()
{
temp = dht.readTemperature(); hum = dht.readHumidity();
String humidity = String(hum); //int to String String temperature = String(temp);
String data = temperature + humidity; Serial.print(data); char
d[5];
data.toCharArray(d, 5); //String to char array Serial.println("Sending to rf95_server");
rf95.send(d, sizeof(d)); rf95.waitPacketSent();

delay(400);
}

Output:
Result:

Successfully connect and communicate between arduino and raspberry pi.


EX.NO:12 Setup a cloud platform to log the data
DATE:
Aim:
To write a program how logs to Google Cloud Logging and how to check the logs
in the Logs Explorer.

Software Requirements:
Google cloud platform

Procedure:

Step 1: Open a Google cloud platform

Step 2: Create an account


Step 3: Enter “logging” in the Filter and choose “Logging Admin”.

Step 4: Click the name of the service account to open the settings. Then click “KEYS” => “ADD
KEY” => “Create new key” => “JSON” to create a key.

Step 5: install iPython:


(base) $ conda create --name gcp_logging python=3.10
(base) $ conda activate gcp_logging (gcp_logging)
$ pip install -U google-cloud-logging (gcp_logging)
$ pip install ipython

Step 6: To check Logs Explorer

Step 7: the following query expressions will all find our log:
# No equal sign or colon:
"This is a warning!"# with equal sign: jsonPayload.message
= "This is a warning!"# with colon:
jsonPayload.message : "This is"# A more explicit one with logical operators:
jsonPayload.message = "This is a warning!"
logName: "python"
Step 8: use the log_struct method:
json_payload = {"message": "This is a warning from
'python_application_name'!"}
logger.log_struct(json_payload, severity=severity.WARNING)
Step 9: To delete the temporary project after you have finished.

Program:

*setup_logging*

import logging

import google.cloud.logging

client = google.cloud.logging.Client()

# Alternatively, but not recommended. It's helpful when you can't set an environment variable.
service_key_path = "/home/lynn/Downloads/temp-project-for-logging-ff33f97cf72f.json" client
= google.cloud.logging.Client.from_service_account_json(service_key_path)
client.setup_logging()
logging.warning("This is a warning!")

*built-in logging module and add the handlers to a logger create from it*
import logging import
google.cloud.logging
from google.cloud.logging.handlers import CloudLoggingHandler log_name =
"python_application_name"
# Create a handler for Google Cloud Logging. gcloud_logging_client =
google.cloud.logging.Client() gcloud_logging_handler =
CloudLoggingHandler( gcloud_logging_client, name=log_name
)
# Create a stream handler to log messages to the console. stream_handler =
logging.StreamHandler() stream_handler.setLevel(logging.WARNING) # Now
create a logger and add the handlers: logger = logging.getLogger(log_name)
logger.setLevel(logging.DEBUG) logger.addHandler(gcloud_logging_handler)
logger.addHandler(stream_handler) *Google Logging:*
In [1]: logger.info("This is DEBUG.") In [2]: logger.info("This is INFO.")
In [3]: logger.warning("This is WARNING.") # This is WARNING. In [4]:
logger.error("This is ERROR.") # This is ERROR.
Output:

All messages were sent to Google Logging, but only some are printed in the console.

Result:
Successfully write a program Google Cloud Logging and to check the logs in the Logs Explorer.
EX.NO:13 Log Data using Raspberry PI and upload to the cloud platform
DATE:
Aim:

To write a program to log data using Raspberry pi and upload to the cloud platform.

Hardware Requirements:

➢ Raspberry Pi
➢ Power Cable

Software Requirements:

➢ Raspberry pi
➢ Thingspeak IOT platform

Procedure:

Steps for building Raspberry Pi Data Logger on Cloud


Step 1: Signup for ThingSpeak
For creating your channel on ThingSpeak you first need to sign up on ThingSpeak. For
creating your account go to www.thinspeak.com

After clicking on signup fill your details.

After this verify your E-mail id and click on continue.

Step 2: Create a Channel for Your Data


Once you Sign in after your account verification, Create a new channel by clicking “New Channel”
button

Step 3: After clicking on “New Channel”, enter the Name and Description of the data you want
to upload on this channel. For example I am sending my CPU data (temperature), so I named it
as CPU data.
After this click on save channel button to save your details.

Step 4: Getting API Key in ThingSpeak


Click on “API Keys” button to get your unique API key for uploading your CPU data.

Now copy your “Write API Key”. We will use this API key in our code.

Step 5: Python Code for Raspberry Pi run the


python file any time using below command:
python /path/filename.py

Assuming you already installed python in Raspberry pi using this command


sudo apt-get install python
Step 6: If you are using monitor screen then just use the given code. Now install all libraries:
sudo apt-get install httplib
sudo apt-get install urllib
After installing libraries run your python code (python /path/filename.py)
Program:

import httplib import urllib import time key = "ABCD" # Put


your API Key here def thermometer(): while True:
#Calculate CPU temperature of Raspberry Pi in Degrees C
temp = int(open('/sys/class/thermal/thermal_zone0/temp').read()) / 1e3 # Get Raspberry Pi CPU
temp
params = urllib.urlencode({'field1': temp, 'key':key }) headers = {"Content-typZZe":
"application/x-www-form-urlencoded","Accept": "text/plain"} conn =
httplib.HTTPConnection("api.thingspeak.com:80") try:
conn.request("POST", "/update", params, headers) response = conn.getresponse() print
temp
print response.status, response.reason data = response.read() conn.close()
except:

print "connection failed" break if


name == " main ": while True:
thermometer()

Output:

See the CPU temperature data is updating into ThingSpeak website.


Result:
Successfully write a program to log data using Raspberry pi and upload to the cloud platform.
EX.NO:14 Design an IOT based system
DATE:

AIM:
To write a program to develop a commercial IOT application.

HARDWARE REQUIREMENTS:
➢ NodeMCU ESP8266 Board or Wemos D1 Mini
➢ BME680 Sensor
➢ Connecting Wires
➢ Breadboard
➢ Micro-USB Cable

SOFTWARE REQUIREMENTS:
➢ Arduino IDE tool

PROCEDURE:
Step 1: Connect Wemos D1 Mini or ESP8266 & BME680 Sensor.
Connect the BME680 SCL & SDA Pin to D4 & D3 of Wemos Board. Supply the sensor as 3.3V
VCC through 3.3V Pin of Wemos Board.

Step 2: Connect the SDO to GND. Connecting the SDO pin from the BME680 to the GND is
important because the original code was programmed to use the alternative I2C address (0x77).
Access this I2C address from the BME680 sensor by connecting the SDO pin to the Ground.

Step 3:

Step 4: Write a code in Arduino IDE tool.

Step 5: Goto Tools→”Board: NodeMCU 1.0(ESP-12E Module)”→ESP8266 Boards


(3.0.0)→NodeMCU 1.0(ESP-12E Module)

Step 6: Tools→Port “COM10”→COM 10

Step 7: Upload your code see the output in serial monitor.

Step 8: Setting to Blynk application Google play store→ Blynk


Step 9: Create new project

Step 10: See the output in IAQ Monitor in your phone.

CODING:
#include "bsec.h" #include <Blynk.h>
#include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> char auth[] =
"***********************"; // You should get Auth Token in the Blynk App. char ssid[]
= "***********************"; // Your WiFi credentials. char pass[] =
"***********************";
// Helper functions declarations void checkIaqSensorStatus(void); void errLeds(void); //
Create an object of the class Bsec Bsec iaqSensor;
String output;
// Entry point for the example void setup(void)
{
Serial.begin(115200); Wire.begin(0, 2);
iaqSensor.begin(BME680_I2C_ADDR_PRIMARY, Wire);
output = "\nBSEC library version " + String(iaqSensor.version.major) + "." +
String(iaqSensor.version.minor) + "." + String(iaqSensor.version.major_bugfix) + "." +
String(iaqSensor.version.minor_bugfix);
Serial.println(output); checkIaqSensorStatus(); bsec_virtual_sensor_t sensorList[10] = {
BSEC_OUTPUT_RAW_TEMPERATURE,

BSEC_OUTPUT_RAW_PRESSURE, BSEC_OUTPUT_RAW_HUMIDITY,
BSEC_OUTPUT_RAW_GAS, BSEC_OUTPUT_IAQ, BSEC_OUTPUT_STATIC_IAQ,
BSEC_OUTPUT_CO2_EQUIVALENT, BSEC_OUTPUT_BREATH_VOC_EQUIVALENT,
BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_TEMPERATURE,
BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_HUMIDITY,
};
iaqSensor.updateSubscription(sensorList, 10, BSEC_SAMPLE_RATE_LP);
checkIaqSensorStatus(); // Print the header
output = "Timestamp [ms], raw temperature [°C], pressure [hPa], raw relative humidity [%], gas
[Ohm], IAQ, IAQ accuracy, temperature [°C], relative humidity [%], Static IAQ, CO2
equivalent, breath VOC equivalent";
Serial.println(output);
}
// Function that is looped forever void loop(void)
{
unsigned long time_trigger = millis();
if (iaqSensor.run()) { // If new data is available output = String(time_trigger);
output += ", " + String(iaqSensor.rawTemperature); output += ", " + String(iaqSensor.pressure);
output += ", " + String(iaqSensor.rawHumidity); output += ", " +
String(iaqSensor.gasResistance); output += ", " + String(iaqSensor.iaq);
output += ", " + String(iaqSensor.iaqAccuracy); output += ", " + String(iaqSensor.temperature);
output += ", " + String(iaqSensor.humidity); output += ", " + String(iaqSensor.staticIaq); output
+= ", " + String(iaqSensor.co2Equivalent);
output += ", " + String(iaqSensor.breathVocEquivalent); Serial.println(output);

Serial.print("Pressure: "); Serial.print(iaqSensor.pressure); Serial.println(" Pa");


Serial.print("Temperature: "); Serial.print(iaqSensor.temperature); Serial.println(" *C");
Serial.print("Humidity: "); Serial.print(iaqSensor.humidity); Serial.println(" %");
Serial.print("IAQ: "); Serial.print(iaqSensor.iaq); Serial.println(" PPM"); Serial.print("CO2
Equivalent: ");

Serial.print(iaqSensor.co2Equivalent); Serial.println(" PPM"); Serial.print("Breath VOC


Equivalent: ");
Serial.print(iaqSensor.breathVocEquivalent); Serial.println(" PPM"); Serial.println();
Blynk.run(); // Initiates Blynk
Blynk.virtualWrite(V1, (iaqSensor.pressure)/1000); // For Pressure
Blynk.virtualWrite(V2, iaqSensor.temperature); // For Temperature
Blynk.virtualWrite(V3, iaqSensor.humidity); // For Humidity
Blynk.virtualWrite(V4, iaqSensor.iaq); //For Index of Air Quality Blynk.virtualWrite(V5,
iaqSensor.co2Equivalent);
// For CO2 Blynk.virtualWrite(V6, iaqSensor.breathVocEquivalent); // For Breath VoC
} else
{
checkIaqSensorStatus();
}
}
// Helper function definitions void checkIaqSensorStatus(void)
{ if (iaqSensor.status !=
BSEC_OK)
{
if (iaqSensor.status < BSEC_OK)
{
output = "BSEC error code : " + String(iaqSensor.status); Serial.println(output); for
(;;)
errLeds(); /* Halt in case of failure */
} else
{
output = "BSEC warning code : " + String(iaqSensor.status); Serial.println(output);
}
}

if (iaqSensor.bme680Status != BME680_OK)
{
if (iaqSensor.bme680Status < BME680_OK)
{
output = "BME680 error code : " + String(iaqSensor.bme680Status); Serial.println(output); for
(;;)
errLeds(); /* Halt in case of failure */
} else
{
output = "BME680 warning code : " + String(iaqSensor.bme680Status);

Serial.println(output);
}
}
}

void errLeds(void)
{
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, HIGH); delay(100); digitalWrite(LED_BUILTIN, LOW);
delay(100);
}

OUTPUT:

RESULT:
Successfully create a IOT application.
VIVA QUESTIONS

1) What is Arduino?
Arduino is an open-source electronics platform based on easy-to-use hardware and software.
Arduino boards are able to read inputs - light on.

2) What is an Arduino used for?


The Arduino hardware and software was designed for artists, designers, hobbyists, hackers,
newbies, and anyone interested in creating interactive objects or environments.
Arduino can interact with buttons, LEDs, motors, speakers, GPS units, cameras, the internet, and
even your smart-phone or your TV!

3) Where is Arduino used in real life?


Today Arduino is used for the control of traffic lights, it can also be used for the real time control
system with programmable timings, pedestrian lighting etc.

4) What are the types of Arduino?


• Arduino UNO.
• Arduino NANO.
• Arduino Leonardo.
• Arduino Micro.
• Arduino NANO Every.
• Arduino NANO 33 BLE.
• Arduino NANO 33 BLE Sense.
• Arduino MKR Zero.

5) Which software is used in Arduino?


Arduino Integrated Development Environment
The Arduino Integrated Development Environment - or Arduino Software (IDE) - contains a text
editor for writing code, a message area, a text console, a toolbar with buttons for common
functions and a series of menus. It connects to the Arduino hardware to upload programs and
communicate with them.

6) What is a Raspberry Pi?


The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or
TV, and uses a standard keyboard and mouse.

7) What is Raspberry Pi used for?


The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or
TV, and uses a standard keyboard and mouse. It is a capable little device
that enables people of all ages to explore computing, and to learn how to program in languages
like Scratch and Python.

8) What are two advantages of using Raspberry Pi?


The Raspberry Pi is perfect for adaptive technology and it is able to display images or play videos i.e.; at
highdefinition resolution to building systems such as prototyping embedded systems. This product makes it
possible to build complex and effective at a cheaper price.
9) Is Raspberry Pi a programming language?
The Raspberry Pi OS is built on Linux which mostly uses the Python language to perform different
activities. The Raspberry Pi foundation also includes Python as their main programming language
because of its versatility and easy-to-use syntax.
10) What is Raspberry Pi in IOT?
Raspberry Pi is defined as a minicomputer the size of a credit card that is interoperable with any
input and output hardware device like a monitor, a television, a mouse, or a keyboard –
effectively converting the set-up into a full-fledged PC at a low cost.

11) What is the main language of Raspberry Pi?


C or C++ are generally one of the three languages that's most widely used on the Raspberry Pi,
the other being Python.

12) What are the most common uses for Raspberry Pi?
1. Desktop PC. Using Raspberry Pi, the microSD card, and a power supply, a simple desktop can be
made. ...
2. Wireless print server. ...
3. Media Usage. ...
4. Game Servers. ...
5. Retro Gaming Machine. ...
6. Robot Controller. ...
7. Stop Motion Camera. ...
8. Time-lapse CameraCCombiningge.

13) What is Zigbee module?


ZigBee Modules are devices that are used to transmit and receive radio signals.
ZigBee Modules from the leading manufacturers are listed below. Use the parametric search tools
to narrow down on products by frequency, technology, data rate, power, voltage and various other
parameters

14) What is the use of Zigbee module?


Zigbee is used by a variety of cable and telecommunication companies in their set-top boxes,
satellite transceivers and home gateways to provide home monitoring and energy management
products to their customers. Zigbee is also used by vendors that provide connected lighting
products for homes and businesses.

15) What is Zigbee example?


A typical example is when you have a Zigbee-enabled light bulb and a Zigbee- enabled light
switch and you want the light switch to control the light bulb. With Zigbee, the two devices -
even if they're from different manufacturers - speak a common language, so there's no barrier to
communication.

16) What is Zigbee and its applications?


ZigBee is a Personal Area Network task group with low rate task group 4. It is a technology of
home networking. ZigBee is a technological standard created for controlling and sensing the
network. As we know that ZigBee is the Personal Area Network of task group 4 so it is based on
IEEE 802.15.
What
17) are the features of ZigBee?
• Support for multiple network topologies such as point-to-point, ...
• Low duty cycle – provides long battery life.
• Low latency.
• Direct Sequence Spread Spectrum (DSSS) Up to 65,000 nodes per network.
• 128-bit AES encryption for secure data connections.

18) What is the use of GSM module?


A customised Global System for Mobile communication (GSM) module is designed for wireless
radiation monitoring through Short Messaging Service (SMS). This module is able to receive
serial data from radiation monitoring devices such as survey meter or area monitor and transmit
the data as text SMS to a host server.

19) What is GSM and how it works?


GSM digitizes and compresses data, then sends it down a channel with two other streams of user
data, each in its own time slot. It operates at either the 900 megahertz (MHz) or 1,800 MHz
frequency band.

20) What is the use of GSM module in Arduino?


The Arduino GSM shield allows an Arduino board to connect to the internet, send and receive
SMS, and make voice calls using the GSM library. The shield will work with the Arduino Uno
out of the box.

21) What are types of GSM modules?


A GSM/GPRS Module is an IC or chip that connects to the GSM Network using a SIM
(Subscriber Identity Module) and Radio Waves. The common radio frequencies in which a
typical GSM Module operates are 850MHz, 900MHz, 1800MHz and 1900MHz.
22) What is an example of GSM?
The GSM technology is used which uses mobile stations, base substations, and network
systems. The mobile station consists of the basic mobile access point or the mobile phone and
links the mobile phones with the GSM network for communication.

23) What are the advantages of GSM module?


With GSM technology, we can have a low-cost mobile set and base stations. It improves spectrum
efficiency. The data or voice signals are of high quality in GSM.

24) What is Bluetooth module?


Bluetooth module (Bluetooth module) refers to the basic circuit set of the chip with integrated
Bluetooth function, used for short-range 2.4G wireless communication module. For the end
user, the Bluetooth module is a semi-finished product.

25) What is the use of a Bluetooth module?


Usually, it is used to connect small devices like mobile phones using a short-range wireless
connection to exchange files. It uses the 2.45GHz frequency band. The transfer rate of the data
can vary up to 1Mbps and is in range of 10 meters. The HC-05 module can be operated within
46V of power supply.

26) is Arduino Bluetooth module?


What
The Arduino BT is a microcontroller board originally was based on the ATmega168, but now is
supplied with the 328P (datasheet) and the Bluegiga WT11 Bluetooth® module datasheet). It
supports wireless serial communication over Bluetooth® (but is not compatible with
Bluetooth® headsets or other audio devices).

27) What are the types of Bluetooth module?


The Various Bluetooth modules used in the biomedical applications are HC-05, HC-06, RS 232:
TTL, BLE link Bee, BLE mini, Blue SMiRF, Bluetooth mate, JY-MCU, ITEAD BT, etc. Among
all the Bluetooth modules the HC-05 is commonly used modules. It is used as Bluetooth Serial
port prototype module.

28) Which is best Bluetooth module?


Popular and top Bluetooth USB adapters:
• TP-Link USB Bluetooth Adapter for PC.
• Avantree DG45 Bluetooth 5.0 USB Dongle.
• ZEXMTE Bluetooth Adapter for PC.
• Logitech USB Unifying Receiver.
• Plugable USB Bluetooth 4.0 Low Energy Micro Adapter.
• Techkey Bluetooth Adapter for PC.
• ASUS USB-BT400 USB Adapter w/Bluetooth Dongle Receiver.

29) What is the range of Bluetooth module?


The range of the Bluetooth® connection is approximately 30 feet (10 meters).
However, maximum communication range will vary depending on obstacles (person, metal, wall,
etc.) or electromagnetic environment.
30) What frequency is Bluetooth?
Bluetooth® technology uses the 2.4 GHz ISM spectrum band (2400 to 2483.5 MHz), which
enables a good balance between range and throughput. In addition, the 2.4 GHz band is
available worldwide, making it a true standard for low-power wireless connectivity.

31) What is sensor and types?


A sensor is a device that detects and responds to some type of input from the physical
environment. The input can be light, heat, motion, moisture, pressure or any number of other
environmental phenomena.

32) What is sensor How it works?


A sensor converts the physical action to be measured into an electrical equivalent and processes
it so that the electrical signals can be easily sent and further processed. The sensor can output
whether an object is present or not present (binary) or what measurement value has been reached
(analog or digital).

33) Why sensors are important?


Sensors can improve the world through diagnostics in medical applications; improved performance of
energy sources like fuel cells and batteries and solar power; improved health and safety and security for
people; sensors for exploring space and the known university; and improved environmental monitoring

34) are the types of sensing?


What
As discussed above there are many varieties of position sensor; linear, rotary, contacting,
noncontacting and use a variety of different technologies. Position sensors are used to measure
and monitor the position or displacement of an object.

35) What is IOT cloud platform?


An IoT cloud is a massive network that supports IoT devices and applications. This includes the
underlying infrastructure, servers and storage, needed for real-time operations and processing.

36) How cloud platform is used in IoT system?


Cloud computing enables companies to store, manage and process data over cloud- enabled
platforms providing flexibility, scalability and connectivity.

37) What is IoT cloud example?


Cloud for IoT can be employed in three ways: Infrastructure-as-a-Service ( IaaS ), Platform-
as-a-Service ( PaaS ) or Software-as-a-Service ( SaaS ). Examples of PaaS include GE's
Predix, Honeywell's Sentience, Siemens's MindSphere, Cumulocity, Bosch IoT , and
Carriots.

38) What is the benefit of cloud platform in IoT?


It helps to minimize risk, reduce operational and development costs. An IoT cloud platform
facilitates communication, device management, data flow, and the functionality of applications.
However, diverse your IOT cloud platform, it integrates hardware to the cloud by using options
of flexibility connectivity.

39) Which cloud is good for IoT?


Amazon Web Services. Like Azure, Amazon Web Services (or AWS) is not just used by those
looking for the best IoT cloud platform. AWS consistently holds the top place in the scale and
scope of its cloud service offerings.

40) What is ThingSpeak used for?


ThingSpeak™ is an IoT analytics platform service that allows you to aggregate, visualize and
analyze live data streams in the cloud. ThingSpeak provides instant visualizations of data posted
by your devices to ThingSpeak.

41) What is ThingSpeak and how it works?


ThingSpeak is an IoT analytics platform service that allows you to aggregate, visualize, and
analyze live data streams in the cloud. You can send data to ThingSpeak from your devices,
create instant visualization of live data, and send alerts.

42) How do you collect data from ThingSpeak? Parameters


1. Sign in to ThingSpeak using your MATLAB account.
2. Select Channels > My Channels.
3. Select the channel from which to read data.
4. Click the Channel Settings tab and copy the channel ID from the Channel ID parameter.
5. Open the ThingSpeak Read block in your model and paste the copied ID to the Channel ID
parameter.
43) Is ThingSpeak cloud free?
ThingSpeak is available as a free service for non-commercial small projects (<3 million
messages/year or ~8,200 messages/day). For larger projects or commercial applications, four
different annual license types are offered: Standard, Academic, Student and Home.

44) How long does ThingSpeak store data? one year


As a reference, one unit provides the ability for a device sending data to ThingSpeak at once per
second to send data to ThingSpeak for one year.

45) What is the difference between IoT and cloud?


Cloud Computing differs from the Internet of Things. Cloud computing provides hosted services
through the Internet. On the other hand, the Internet of Things (IoT) connects adjacent smart
devices to the network to share and evaluate data.

You might also like