0% found this document useful (0 votes)
56 views66 pages

CS3691 Emb & Iot Manual PDF

Lab manual

Uploaded by

harishvaran64
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)
56 views66 pages

CS3691 Emb & Iot Manual PDF

Lab manual

Uploaded by

harishvaran64
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/ 66

CS3691 EMBEDDED SYSYTEM AND IOT LAB

EX.NO DATE PRACTICAL PAGE MARKS SIGN


EXERCISES NO

8051 Assmebly
1
LanguageExperiments
Using Keil
Software
Data Transfer
2
BetweenRegisters
And Memory
3 Perform Alu Operations

BinaryArithmetic
4A.
ProgramsUsing Embedded
C
Binary Arithmetic
4B ProgramsUsing Embedded
C
Introduction to Arduino
5 platform and
programming
Interfacing Arduino
6 toZigbeemodule

Interfacing Arduino toGSM


7
module
Interfacing Arduino to
8
Bluetooth Module
9 Introduction to Raspberry PI
platformand python
programming
10 Interfacing sensors to
Raspberry PI
11 Communicate between
Arduino and RaspberryPI
using any wireless
medium
12 Setup a cloud platformto log
the data
13 Log Data using Raspberry
PIand upload to the cloud
platform
14 Design an IOT basedsystem
EX.NO:01 8051 Assmebly 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
executionand verify the output inregister 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:05I60: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,#40HMOV

@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,BMOV

A,R2 MOV

B,R3 MUL AB

DEC R0 ADD

A,@R0 MOV

@R0,AINC 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,AEND

OUTPUT:

I40:1F I41:E7 I42:AA

I43:08VALUE: 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 nameof 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 inregister 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],
#4SUBS 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-USINGLDM
and STMINSTRUCTIONS(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
performlogical 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
exactname 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
stepexecution and verify the output inregister window/Memory window/xPSR.

ADDITION OF TWO 16-BIT NUMBERS.

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


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

Result:
Input: Output:
SUBTRACTION OFTWO 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 OFTWO 16-BIT NUMBERS.

mov r0,#34h
/5678*1234mov r1,#12h
mov
r2,#78hmo
v
r3,#56hmo
va,r0 mov
b,r2 mul ab
mov
33h,amov
r4,b mov
a,r0 mov
b,r3 mul
ab
add a,r4
mov r5,a
mov a,b
addc
a,#00hmo
vr6,a mov
a,r1 mov
b,r2 mul
abadd a,r5
mov
32h,a
mov a,b
addc
a,r6 mov
00h,cmo
vr7,a
mov a,r3
mov b,r1
mul ab
add a,r7
mov
31h,amo
va,b
addc
a,20hmo
v
30h,aend

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 beaccessedanl a, 22h //logical and operation
mov 30h, a //and operation result stored in
30hmov a, 21h
orl a,22h //logical or operation
mov 31h, a //or operation result
stored in31hmov a,21h
xrl a,22h //logical xor operation
mov 32h,a // xor operation result
stored in32hend

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 toperform 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 nameof 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 inregister 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
theywork. 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
BinaryArithmetic 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

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


operand.

* Multiplicatio Multiply two operands. x*y


n

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

Calculate the remainder when the first operand


% Modulus x%y
isdivided 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; //
multiplicationprintf("a * b
is %d\n", res);

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

res = a % b; // modulus
Output
a is 10 and b is

4a + b is 14

a - b is 6

a * b is

40a / b is

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 nameof 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 inregister window/Memory window/xPSR.

THEORY

Unary Arithmetic Operators in C


The unary arithmetic operators operate or work with a single operand. In C, we
havetwo unary arithmetic operators which are as follows:

Operator Symbol Operation Implementatio


n

Decreases the integer value of the


Decrement Operator — –h or h–
variableby one.

Increases the integer value of the


Increment Operator ++ ++h or h++
variable byone.

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

Unary Returns the negative of the value


– -h
Minus of itsoperand.
Operator
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 isincremented 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 ispreserved 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
toa = x;
x = x + 1;

Decrement Operator in C
The ‘–‘ operator is used to decrement the value of an integer. Just like the
incrementoperator, 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 valueis decremented instantly. For example, – – x.

2. Post Decrement
When it is placed after the variable name (also called post-decrement operator),
its valueis 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>intmain()
{
inta = 10, b = 4, res;
printf("Post Increment and Decrement\n");
// post-increment example:
// res is assigned 10 only, a is not updated yetres = 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 yetres = 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 itselfres = ++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);

return0;
}

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

Pre Increment and


Decrementa 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
breadboardPin 6  35
Pin 7  40
Pin 8  45
STEP 3: 3 Resistor are connected in
breadboard3 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 = 0pinMode(led 2,
OUTPUT);pinMode(led 3, OUTPUT);
}
void loop()
{
digitalWrite(led1, 1); // HIGH = 1 means 5 voltsdigitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);delay(delayvalue);
digitalWrite(6, 0); // LOW = 0 means 0 voltdigitalWrite(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
connectedwith 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 addyour XBee module to XCTU dashboard.

Step 5:- Now, you can configure your XBee module in this window. Use either AT commands
or putthe 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 1234 5678 2244
coordinator
XBee 2 end 5678 1234 2244
device

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 GNDArduino pin 9GSM Module TXD Arduino pin
10GSM Module RXD
Step 4: Power supply to connect Arduino and ModuleStep 5: Wait until network LED
startbuilding 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);
// Settingthe 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
numberdelay(1000);
mySerial.println("Technolab creation");// The SMS text you want to senddelay(100);
mySerial.println((char)26);// ASCII code of CTRL+Z for saying the end of sms to
themoduledelay(1000);break;
case 'r':
mySerial.println("AT+CNMI=2,2,0,0,0"); // AT Command to receive a live
SMSdelay(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
sendorreceive 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
ofusingthe 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
LEDblinkon , and if we press 0 LED blink off
PROGRAM
#include <SoftwareSerial.h>// import the serial librarySoftwareSerial Genotronex(10, 11);
// RX,TX
int ledpin=13; // led on D13 will show blink on / offint BluetoothData; // the data given
fromComputer 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
throughthe1KΩ 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
featuresofVim)
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 nowimport
timeledPin = 22 # pin22def 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 Ontime.sleep(1.0) # wait 1
secprint 'LED off'
GPIO.output(ledPin, GPIO.LOW) # LED Offtime.sleep(1.0) # wait 1 sec
def endprogram():
GPIO.output(ledPin, GPIO.LOW) # LED OffGPIO.cleanup() # Release
resourcesif name== ' main ':# Program starts from
heresetup()
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 PiOUT
pin 8GND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 pi
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 usingLoRa 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
clickon
‘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 shellwindow.

PROGRAM:

from time import sleep


from SX127x.LoRa import *
from SX127x.board_config import BOARDimport paho.mqtt.client as
mqttusername = "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
typeDHT dht(DHTPIN, DHTTYPE);
int hum; //Stores humidity value int temp; //Stores temperature valueRH_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 StringString temperature =
String(temp);String data = temperature + humidity;Serial.print(data);
char d[5];
data.toCharArray(d, 5); //String to char arraySerial.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 thelogs 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
(base) $conda create --name gcp_logging python=3.10
KEY” => “Create new key” => “JSON” to create a
(base) $ conda activate gcp_logging
key.
(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!"#
Withcolon:
jsonPayload.message : "This is"# A more explict one with logical
operators:jsonPayload.message = "This is a warning!"
logName: "python"
Step 8: use the log_structmethod:
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
environmentvariable. 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 CloudLoggingHandlerlog_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
LogsExplorer.
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:

1. Raspberry Pi
2. Power Cable

Software Requirements:

1. Raspberry pi
2. Thingspeak IOT platform

Procedure:

Steps for building Raspberry Pi Data Logger on


CloudStep 1: Signup for ThingSpeak
For creating your channel on ThingSpeak you first need to sign up on ThingSpeak.
Forcreating 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
“NewChannel” 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 Inamed it asCPU 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
httplibsudo apt-get
install urllib
After installing libraries run your python code (python /path/filename.py)

Program:

import httplibimport urllib import time


key = "ABCD" # Put your API Key heredef thermometer():
while True:
#Calculate CPU temperature of Raspberry Pi in Degrees C
temp = int(open('/sys/class/thermal/thermal_zone0/temp').read()) / 1e3 # Get
RaspberryPi CPUtemp
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.reasondata = 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
cloudplatform.
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 thesensor as
3.3VVCC 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 applicationGoogle 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
BlynkApp.char ssid[] = "***********************"; // Your WiFi credentials.char pass[]
= "***********************";
// Helper functions declarations void checkIaqSensorStatus(void);void errLeds(void);
// Create an object of the class BsecBsec
iaqSensor;String output;
// Entry point for the examplevoid 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 forevervoid loop(void)
{
unsigned long time_trigger = millis();
if (iaqSensor.run()) { // If new data is availableoutput = 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("CO2Equivalent: ");

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


VOCEquivalent: ");
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
QualityBlynk.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
andsoftware.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,andeven 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
realtime controlsystem 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 atexteditor 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
computermonitor orTV, 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
computermonitor orTV, 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
inlanguageslike 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
orplay videos i.e.; at high-definition resolution to building systems such as
prototyping embeddedsystems. 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
mainprogramminglanguage 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 anyinput 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
theRaspberry 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
desktopcan 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
searchtoolsto 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-
topboxes, satellite transceivers and home gateways to provide home monitoring and
energy managementproducts 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, thetwo
devices - even if they're from different manufacturers - speak a common language, so
there's no barrier tocommunication.

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
controllingand sensing the network. As we know that ZigBee is the Personal Area
Network of task group 4 so it is based onIEEE 802.15.
17) What 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 designedfor
wirelessradiation 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 transmitthe 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 userdata, 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
andreceive SMS, and make voice calls using the GSM library. The shield will work with
the Arduino Unoout 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
aSIM (Subscriber Identity Module) and Radio Waves. The common radio
frequencies in which atypical 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
mobilephone 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.
Itimprovesspectrum 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
withintegrated 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 rateof the data can vary up to 1Mbps and is in range of 10 meters. The HC-05
module can be operated within 4-6V of power supply.
26) What is Arduino Bluetooth module?
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
compatiblewith 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,
RS232: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
BluetoothSerial 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),whichenables 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
otherenvironmental phenomena.

32) What is sensor How it works?


A sensor converts the physical action to be measured into an electrical equivalent
andprocesses itso 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 andsafety and security for people; sensors for exploring space and the known
university; and improved environmental monitoring.
34) What are the types of sensing?
As discussed above there are many varieties of position sensor; linear, rotary,
contacting, non- contacting and use a variety of different technologies. Position
sensors areused to measure andmonitor 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.
Thisincludes the underlying infrastructure, servers and storage, needed for real-time
operationsand processing.

36) How cloud platform is used in IoT system?


Cloud computing enables companies to store, manage and process data over
cloud-enabledplatforms 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 cloudby 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 usedby
thoselooking for the best IoT cloud platform. AWS consistently holds the top place
in thescale andscope 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 postedby 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 fromyour 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 IDparameter.
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, fourdifferent annual license types are offered: Standard, Academic,
Student andHome.

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
oncepersecond 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
servicesthrough the Internet. On the other hand, the Internet of Things (IoT)
connectsadjacent smart devices to the network to share and evaluate data.

You might also like