I am connecting my Soil Moisture Temperature Sensor SHT10 with GSM Module SIM900A and GPS GY-GPS6MV2. Individually, all components work properly and give proper values. But when I interface all three components with Arduino, only Temperature sensor seems to work and GPS does not give any values. Even If I connect only SHT10 and GPS with Arduino Uno (without GSM), only SHT10 gives values but GPS doesn't.
My code is:
#include <AltSoftSerial.h>
#include <TinyGPS++.h>
#include <SHT1x.h>
AltSoftSerial gpsSerial (11,12);
TinyGPSPlus gps;
#define dataPin 6
#define clockPin 7
SHT1x sht1x(dataPin, clockPin);
float TEMP, HUMID;
void setup()
{
Serial.begin(9600);
gpsSerial.begin(9600);
}
void loop()
{
TEMP = sht1x.readTemperatureC();
HUMID = sht1x.readHumidity();
Serial.println(TEMP);
Serial.println(HUMID);
gps_value();
}
void gps_value()
{
while(gpsSerial.available())
{
gps.encode(gpsSerial.read());
}
if(gps.location.isUpdated())
{
Serial.println("Latitude: ");
Serial.println(gps.location.lat());
Serial.println("Longitude: ");
Serial.println(gps.location.lng());
Serial.println("Altitude Feet: ");
Serial.println(gps.altitude.feet());
Serial.println("Horizontal Dilution of Precision: "); //lower the better
Serial.println(gps.hdop.value());
Serial.println("");
}
}
What is happening here ?