Chat with us, powered by LiveChat Combine both codes or make it work with 2 separate tabs. I am using Arduino Ethernet Shield W5100 with Arduino UNO trying to send a notification to PushSafer. Each code works individually - Writeden

  

Combine both codes or make it work with 2 separate tabs. I am using Arduino Ethernet Shield W5100 with Arduino UNO trying to send a notification to PushSafer. Each code works individually but I cannot get to work together.

Combine both codes or make it work with 2 separate tabs. I am using Arduino Ethernet Shield W5100 with Arduino UNO trying to send a notification to PushSafer. Each code works individually but I cannot get to work together.

Pushsafer.ino

#include <SPI.h>

#include <Ethernet.h>

// Network settings

byte mac[] = { XXXXXXXXXXXXXXXXXXXXXX}; // Modify with your Ethernet shield's MAC address

IPAddress ip(XXXXXXXXXX); // IP address for the Arduino (modify according to your network settings)

// PushSafer private or alias key

String privateKey = "XXXXXXXXXXXXXXXXX";

String deviceID = "XXXX"; // Device ID for targeting a specific device

// Ethernet client

EthernetClient client;

void setup() {

// Initialize serial communication

Serial.begin(9600);

while (!Serial) {

; // wait for serial port to connect.

}

// Initialize Ethernet connection

if (Ethernet.begin(mac) == 0) {

Serial.println("Failed to configure Ethernet using DHCP");

// Try to configure using IP address instead of DHCP:

Ethernet.begin(mac, ip);

}

delay(1000); // Give the Ethernet shield a second to initialize

}

void sendPushSaferMessage(String message) {

if (client.connect("www.pushsafer.com", 80)) {

Serial.println("Connected to PushSafer");

// Make a HTTP request:

client.println("POST /api HTTP/1.1");

client.println("Host: www.pushsafer.com");

client.println("Content-Type: application/x-www-form-urlencoded");

String postData = "k=" + privateKey + "&d=" + deviceID + "&m=" + message;

client.print("Content-Length: ");

client.println(postData.length());

client.println();

client.print(postData);

Serial.println("Message sent");

} else {

Serial.println("Connection failed");

}

// Give the web server time to respond, then disconnect

delay(500);

if (client.connected()) {

client.stop();

}

}

void loop() {

// Send a test message

sendPushSaferMessage("Hello from Arduino!");

delay(60000); // Wait a minute before sending the next message

}

Second Part

Alarm_System.ino

#include <LiquidCrystal_I2C.h>

#include <Keypad.h>

#include <Wire.h>

#define alarmPin A1

#define pirPin 11

#define greenLED 12 // Green LED pin

#define redLED 13 // Red LED pin

int offMsg = 0;

String passwd = "1234";

String inpswd;

bool activated = false;

bool activateAlarm = false;

bool activeAlarm = false;

bool passwdEntered;

const byte rows = 4;

const byte cols = 4;

char keypress;

char keys[rows][cols] = {

{'1','2','3','A'},

{'4','5','6','B'},

{'7','8','9','C'},

{'*','0','#','D'}

};

byte rowPins[rows] = {10, 9, 8, 7};

byte colPins[cols] = {3,2,1,0};

Keypad kp = Keypad(makeKeymap(keys), rowPins, colPins, rows, cols);

// Initialize the LCD. The I2C address is 0x27 and it has 16 columns and 2 rows.

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {

lcd.init(); // Initialize the LCD

lcd.backlight(); // Turn on the backlight

pinMode(alarmPin, OUTPUT);

pinMode(pirPin, INPUT);

pinMode(greenLED, OUTPUT);

pinMode(redLED, OUTPUT);

}

void loop() {

if (activateAlarm) {

lcd.clear();

lcd.setCursor(0,0);

delay(500);

lcd.print("System Online");

digitalWrite(greenLED, HIGH);

activateAlarm = false;

activeAlarm = true;

}

if (activeAlarm == true) {

if (digitalRead(pirPin) == HIGH) {

tone(alarmPin, 1000);

digitalWrite(greenLED, LOW);

digitalWrite(redLED, HIGH);

lcd.clear();

password();

} else {

digitalWrite(redLED, LOW);

digitalWrite(greenLED, HIGH);

}

}

if (activeAlarm == false) {

digitalWrite(greenLED, LOW);

if (offMsg == 0) {

lcd.clear();

lcd.setCursor(1,0);

lcd.print("Press 'A' To");

lcd.setCursor(3,1);

lcd.print("Activate");

offMsg = 1;

}

keypress = kp.getKey();

if (keypress == 'A') {

tone(alarmPin, 1000, 200);

activateAlarm = true;

}

}

}

void password() {

int cursor = 5;

inpswd = "";

activated = true;

lcd.clear();

lcd.setCursor(1,0);

lcd.print("Enter Password");

lcd.setCursor(0,1);

while (activated) {

keypress = kp.getKey();

if (keypress != NO_KEY) {

if (keypress == '1' || keypress == '2' || keypress == '3' || keypress == '4' ||

keypress == '5' || keypress == '6' || keypress == '7' || keypress == '8' ||

keypress == '9' || keypress == '0') {

inpswd += keypress;

lcd.setCursor(cursor,1);

lcd.print(keypress);

cursor++;

}

}

if (cursor > 9 || keypress == '#') {

inpswd = "";

cursor = 5;

lcd.clear();

lcd.setCursor(1,0);

lcd.print("Enter Password");

lcd.setCursor(0,1);

}

if (keypress == '*') {

if (inpswd == passwd) {

activated = false;

activeAlarm = false;

noTone(alarmPin);

digitalWrite(redLED, LOW);

offMsg = 0;

} else {

lcd.setCursor(2,1);

lcd.print("Incorrect");

delay(1000);

lcd.clear();

lcd.setCursor(1,0);

lcd.print("Enter Password");

lcd.setCursor(0,1);

}

}

}

}