David Rabinovitch - Ум, Честь и Совесть Нашей Эпохи

Пацак с планеты Земля


Previous Entry Share Next Entry
ESP8266 E12 убилсибяапстену PIR
FOCAL БК-0010 Готовность к работе
robinbobin
вот на живом сервере срубить rm -rf /
и через пару секунд нажать ctrl-c

полуживая система, в которой уже нет cp и пр.

состояние - боишься перднуть.

тут на ардуине ESP8266 примерно такое вышло

присобачиваю PIR

присобачиваю interrupt

PIRPIN 2
в setup()
// init PIR
pinMode(PIRPIN, INPUT);
attachInterrupt(PIRPIN, pir_int, CHANGE); //make crash

вот
// PIR interrupt handler
void pir_int(){

int statusPIR = digitalRead(PIRPIN);
lastMotionTS = millis();

lcd.setCursor(0,0);
lcd.print("\nINTERRUPT: status ");
lcd.print (statusPIR);
delay(10000);
Serial.write ("\nINTERRUPT: status ");
Serial.print (statusPIR);


Serial.write (" millis ");
Serial.print(lastMotionTS / 1000);
Serial.println(" sec ========================================");
}

да, в фоне бегает скрирт, который если .bin, uploadit прошивку на ESP

@echo off
:wait

IF EXIST "ESP_LCD_METEO_DHT22.ino.nodemcu.bin" (
echo "UPLOAD!"

curl -i -X POST -H "Content-Type: multipart/form-data" -F "update=@ESP_LCD_METEO_DHT22.ino.nodemcu.bin" http://192.168.0.109/update
del ESP_LCD_METEO_DHT22.ino.nodemcu.bin
GOTO :WAIT

) ELSE (
echo wait
sleep 3
goto :wait
)

карочи
не знаю почему но этот обработчкик крушит ESP, и оно перегружается

т.е. ты дернулся
датчик сработал
ардуина крешется и ребутится.

новая прошивка с без интеррапта не может загрузиться.

а батник убивает .bin

надо Ctrl-Alt-S нажать, для построения новой.

а это движение, датчик ловит движение и прерывается
и креш с ребутом.

вот как-та угадал,
нажать C-A-S
и не шевелиться,
ощущение как слабительное от кашля.

?

Log in