#include <U8g2lib.h>

U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);

static const unsigned char image_Warning_30x23_bits[] U8X8_PROGMEM = {0x00,0xc0,0x00,0x00,0x00,0xe0,0x01,0x00,0x00,0xf0,0x03,0x00,0x00,0xf0,0x03,0x00,0x00,0xf8,0x07,0x00,0x00,0x3c,0x0f,0x00,0x00,0x3c,0x0f,0x00,0x00,0x3e,0x1f,0x00,0x00,0x3f,0x3f,0x00,0x00,0x3f,0x3f,0x00,0x80,0x3f,0x7f,0x00,0xc0,0x3f,0xff,0x00,0xc0,0x3f,0xff,0x00,0xe0,0x3f,0xff,0x01,0xf0,0x3f,0xff,0x03,0xf0,0x3f,0xff,0x03,0xf8,0x3f,0xff,0x07,0xfc,0xff,0xff,0x0f,0xfc,0xff,0xff,0x0f,0xfe,0x3f,0xff,0x1f,0xff,0x3f,0xff,0x3f,0xff,0xff,0xff,0x3f,0xfe,0xff,0xff,0x1f};
static const unsigned char image_ir_10px_bits[] U8X8_PROGMEM = {0xfc,0x00,0x02,0x01,0x79,0x02,0x84,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x58,0x00,0x78,0x00,0xff,0x03};

static const unsigned char image_FaceNormal_29x14_bits[] U8X8_PROGMEM = {0x00,0x00,0x00,0x00,0x3c,0x00,0x80,0x07,0x5e,0x00,0xc0,0x0b,0x7e,0x00,0xc0,0x0f,0x7e,0x00,0xc0,0x0f,0x7e,0x00,0xc0,0x0f,0x3c,0x00,0x80,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x02,0x00,0x00,0x08,0x02,0x00,0x00,0x08,0x02,0x00,0x00,0x10,0x01,0x00,0x00,0xe0,0x00,0x00};
static const unsigned char image_ir_10px_bits2[] U8X8_PROGMEM = {0xfc,0x00,0x02,0x01,0x79,0x02,0x84,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x58,0x00,0x78,0x00,0xff,0x03};

int led = 4;

//NUR TEST:

int Button = 14;


void setup(void) {
  u8g2.begin();
  pinMode(led, OUTPUT);
  //TEST:
  pinMode(Button, INPUT_PULLUP);
}

void loop(void) {
  u8g2.clearBuffer();					// clear the internal memory
  u8g2.setBitmapMode(1);
  u8g2.setFontMode(1);
  u8g2.drawXBMP( 50, 9, 29, 14, image_FaceNormal_29x14_bits);
  u8g2.drawXBMP( 60, 37, 10, 10, image_ir_10px_bits2);
  u8g2.sendBuffer();					// transfer internal memory to the display
  
  int buttonstate = digitalRead(Button);

  if(buttonstate == LOW) {
    digitalWrite(led, HIGH);
  u8g2.clearBuffer();
  u8g2.setFontMode(1);
  u8g2.drawXBMP( 49, 14, 30, 23, image_Warning_30x23_bits);
  u8g2.drawXBMP( 59, 46, 10, 10, image_ir_10px_bits);
  u8g2.sendBuffer();
  delay(2000);
  digitalWrite(led, LOW);
  }
}
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
oled1:GND
oled1:VCC
oled1:SCL
oled1:SDA
led1:A
led1:C
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r