728x90
이번 프로젝트로 제일 고생했던 건 다름아닌
아두이노에서 firebase 값을 전송하고 보내는 것인데,,
일단 보드를 esp32 client -> NodeMUC-325로 변경해요
( 물론 포트도 확인해줘야 합니다)
esp32 client가 없다면 보드매니저에서 추가하셔야 합니다!
파이어베이스에 디비를 만듭니다.
이런식으로 만들었다고 치고 a의 값을 이용합니다.
먼저 데이터 값을 보내는 코드입니다.
- https://을 제거한 후 파이어베이스 링크를 붙여줘야 합니다. -> 아두이노가 자동으로 붙여주기 때문
- firebase 데이터베이스 비밀번호는 '프로젝트 설정 -> 서비스 계정 -> 데이터베이스 비밀번호'에서 복사하면 됩니다.
- setInt()로 한 건 int 값을 보내니깐 사용
#if defined(ESP32)
#include <WiFi.h>
#include <FirebaseESP32.h>
#elif defined(ESP8266)
#include <ESP8266WiFi.h>
#include <FirebaseESP8266.h>
#endif
/* 2. If work with RTDB, define the RTDB URL and database secret */
#define DATABASE_URL "your_firebase_link" // http 제거!!!!
#define DATABASE_SECRET "your_firebase_password"
/* 1 wifi */
#define WIFI_SSID "your_wifi"
#define WIFI_PASSWORD "password"
/* 3. Define the Firebase Data object */
FirebaseData fbdo;
void setup() {
Serial.begin(115200);
// connect to wifi.
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Firebase.reconnectWiFi(true);
Firebase.begin(DATABASE_URL,DATABASE_SECRET);
Serial.println("ESP ready.");
}
void loop() {
int a = 1;
Firebase.setInt(fbdo,"/aa/a",a);
a++;
delay(1000);
}
(주의 : 원래 코드와 다르기 때문에 실행이 안될 수 도 있음.)
< esp32 에서 실행시 주의 사항 >
- esp32를 보면 버튼이 2개 있는데, 실행 후 connect...하면서 점이 생기기 시작할 때 왼쪽 버튼을 눌러줘야 실행이 됩니다.
- 100%까지 되면 그제서야 esp32가 실행됩니다.
- 왼쪽 버튼을 몇초만 눌러줘야 하는데, 눌러도 안 될 수도 있으니 될 때까지 눌러줘야 합니다.
- 시간이 지나 오류가 나면 다시 실행해서 왼쪽 버튼을 눌러줘야 합니다.
다음에는 데이터 값 보내는 걸 설명하겠습니다!
프로젝트로 배운 게 정말 많네요..
궁금한 게 있다면 최대한 알려드리겠습니다!!
(늦게 볼 수 있다는 점,,,)
728x90
반응형
'IoT > Arduino' 카테고리의 다른 글
[Capstone] UWB module에서 주소값이 변하지 않도록 설정하기 (Set address values to remain unchanged in UWB modules) (0) | 2023.10.14 |
---|---|
푸시버튼을 사용할 때 단자에 대한 실수 [Arduino/아두이노] (0) | 2022.01.29 |
동기랑 IoT 스터디! [Do it 키드없이 만드는 아두이노] (0) | 2022.01.29 |