Что я делаю не так?
Использование неправильного языка программирования.
NodeMCU хочет запустить Lua код, а вы его C вместо этого код, который просто не может работать.
Как мне это исправить? (подразумевается)
Вы можете использовать IDE arduino для написания кода C ++ для ESP8266, но, поскольку вы уже, кажется, уже настроили все для запуска Lua кода, я предлагаю просто используйте это вместо этого.
Код C, который вы предоставили, можно переписать в Lua, используя NodeMCU API, например:
local pin = 2 -- The number of the I/O Pin
local type = "down" -- Trigger on falling edge
-- https://nodemcu.readthedocs.io/en/master/modules/gpio/#gpiotrig
gpio.trig(pin, type, function()
print("Movement detected, proceding to exterminate!")
end)