본문 바로가기
  • 재미있는 펌웨어와 코딩

분류 전체보기24

ESP32 시간설정 NTP ESP32 내부에 시계 기능이 있지만 값을 기억하지는 못합니다. 와이파이를 통하여 인터넷 시간을 가져와서 설정 하면 현재 시간을 알 수 있습니다. NTP(Network Time Protocol) 인터넷 곳곳에 NTP 서버를 운영중인곳이 많이 있는데 그 중에 한 곳에서 현재 시간을 가져 옵니다. 영국 런던 남동쪽에 위치한 그리니치 천문대로 부터 시간을 가져 옵니다. 전체 소스코드 입니다. #include #include "time.h" const char* ssid = "YOUR_SSID"; const char* password = "YOUR_PASSWORD"; const char* ntpServer = "pool.ntp.org"; // NTP 서버 주소 uint8_t timeZone = 9; // 한국은.. 2023. 10. 11.
아두이노 JSON 사용하기 JSON( JavaScript Object Notation )은 Javascript 객체 문법으로 주로 Web 통신을 할 때 사용하는 너무나 편리한 구조로 되어 있습니다. 주로 서버와 클라이언트간의 데이터 방식으로 사용하지만 일반적인 소켓통신이나 환경설정 저장 방식에도 많이 사용합니다. 아두이노 라이브러리에도 여러가지가 있는데 그중에서 Arduino_JSON 을 사용하려고 합니다. 먼저, 헤더파일을 선언합니다. Arduino_JSON 라이브러리를 설치합니다. 이전 강좌 참고 https://jooduino.tistory.com/4 아두이노 라이브러리 추가 방법 아두이노 IDE에 라이브러리 등록 방법 입니다. 라이브러리 등록 방법은 두 가지 입니다. 1. 라이브러리 매니저를 이용하는 방법. 2. 다운로드 받.. 2023. 10. 9.
ESP32 공유기 없이 통신 (1:1, 1:N) ESP-NOW IP 공유기 없이 ESP32 모듈간 peer to peer 통신을 합니다. 1:1 또는 1:N 통신이 가능합니다. ESP-NOW 통신을 기본으로 제공하므로 별도의 라이브러리는 필요치 않습니다. 통신 하려는 모듈의 MAC 어드레스만 알면 됩니다. 샘플소스 #include #include #define LED 2 // 통신 장치 정보 (반드시 전역 변수로 선언) esp_now_peer_info_t peerInfo; // 통신할 ESP32 MAC 주소 uint8_t broadcastAddress[] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; // 데이터 전송 시 콜백 void OnDataSent( const uint8_t *mac_addr, esp_now_send_status_t .. 2023. 10. 8.
ESP32 Captive Portal 사용하기 ESP32 모듈을 와이파이에 접속 하려면 하드코딩을 하거나 WiFiManager와 같은 라이브러리를 이용합니다. 방법은 여러가지가 있을 수 있지만 이번에 소개할 방법은 Captive Portal를 이용 하는겁니다. Captive Portal은 Wi-Fi 또는 유선 네트워크에 새로 연결된 사용자에게 네트워크 리소스에 대한 광범위한 액세스 권한이 부여되기 전에 웹 브라우저에서 액세스하는 웹 페이지입니다. 버스 정류장 또는 버스 안에서 무료 와이파이에 연결하려면 연결되기 전에 로그인 화면이 나오는것을 보셨을 것입니다. 바로 그런 화면을 띄워서, 연결하고자 하는 공유기의 SSID와 패스워드를 입력하게 하여 와이파이를 사용 하고자 합니다. 소스가 다소 길고 어려울 수 있습니다. 하지만 Captive Portal에.. 2023. 10. 6.
ESP32 네트워크 채널 문제 ESP32 모듈로 디지털 시계를 만들었습니다. 인터넷에 접속하여 현재 시간을 알아와서 표시해주는 기능이 있기에 시간 설정 버튼도 만들지 않았습니다. 저희 집에서 너무도 잘 사용하고 있었는데 다른집에가서 해보니 동작이 안되더군요... 사무실에 가서 해보면 또 잘되구요... 무엇이 문제인지 몇일을 해매다가 겨우 찾아냈습니다. 바로, ESP32 모듈은 네트워크 채널이 10 이상 올라가면 안된다는 것입니다. 안되는곳의 무선공유기 채널를 낮게 잡았더니 됩니다. 이것 때문에 고생하시는 분들 참고 바랍니다. 2023. 10. 6.
티스토리 소스코드 변환 - Syntaxhighter 전용 프로그램 코드를 붙여넣기 하세요.(syntaxhighlighter 전용) cpp, c++ JavaScript PHP Java Python C# Delphi xml, html css 지우기 변환 복사 제가 소스코드를 블로그용으로 변환을 자주 하는데 편하게 작업하려고 만들었습니다. 2023. 10. 5.