[{"data":1,"prerenderedAt":240},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fboards\u002Fnodemcu-v2":3},{"id":4,"title":5,"body":6,"description":232,"extension":233,"meta":234,"navigation":235,"path":236,"seo":237,"stem":238,"__hash__":239},"content\u002Fdocs\u002Fboards\u002Fnodemcu-v2.md","NodeMCU v2 (ESP8266)",{"type":7,"value":8,"toc":226},"minimark",[9,13,17,22,141,145,159,163,183,187,222],[10,11,5],"h1",{"id":12},"nodemcu-v2-esp8266",[14,15,16],"p",{},"The NodeMCU v2 is the ESP8266 dev-kit that put WiFi on every project: cheap, ubiquitous, WiFi-only (no BLE), with enough GPIO and I2C for most CONDUYT module use cases. The protocol works the same as on the ESP32, just without BLE\u002FMQTT-bridge transports.",[18,19,21],"h2",{"id":20},"specs","Specs",[23,24,25,38],"table",{},[26,27,28],"thead",{},[29,30,31,35],"tr",{},[32,33,34],"th",{},"Property",[32,36,37],{},"Value",[39,40,41,50,58,66,74,82,90,98,106,114,122,133],"tbody",{},[29,42,43,47],{},[44,45,46],"td",{},"MCU",[44,48,49],{},"Tensilica L106, 80 MHz (160 MHz overclock supported)",[29,51,52,55],{},[44,53,54],{},"Flash",[44,56,57],{},"4 MB",[29,59,60,63],{},[44,61,62],{},"RAM",[44,64,65],{},"80 KB",[29,67,68,71],{},[44,69,70],{},"GPIO",[44,72,73],{},"11 usable pins (D0–D10 on the board, with caveats)",[29,75,76,79],{},[44,77,78],{},"ADC",[44,80,81],{},"1 channel (A0, 10-bit, max ~1V or 3.3V depending on resistor divider)",[29,83,84,87],{},[44,85,86],{},"PWM",[44,88,89],{},"Software PWM on any output pin (no hardware PWM peripheral)",[29,91,92,95],{},[44,93,94],{},"I2C",[44,96,97],{},"Software-bit-banged (Wire library) — typically D1 (SCL) \u002F D2 (SDA)",[29,99,100,103],{},[44,101,102],{},"SPI",[44,104,105],{},"1 user-accessible HSPI bus",[29,107,108,111],{},[44,109,110],{},"UART",[44,112,113],{},"1 hardware UART (Serial); Serial1 is TX-only",[29,115,116,119],{},[44,117,118],{},"WiFi",[44,120,121],{},"802.11 b\u002Fg\u002Fn",[29,123,124,127],{},[44,125,126],{},"BLE",[44,128,129],{},[130,131,132],"strong",{},"No",[29,134,135,138],{},[44,136,137],{},"OTA",[44,139,140],{},"Supported (via ArduinoOTA library)",[18,142,144],{"id":143},"flashing","Flashing",[14,146,147,148,153,154,158],{},"USB-serial via the on-board CP2102. The ",[149,150,152],"a",{"href":151},"\u002Fplayground","Playground"," flashes via ",[155,156,157],"code",{},"esp-web-tools",". First flash needs the bootloader to enter; after that, OTA over WiFi is the easy path.",[18,160,162],{"id":161},"notes","Notes",[164,165,166,170,173,176],"ul",{},[167,168,169],"li",{},"Only one ADC, max 1V at the chip — most boards include a resistor divider so the visible A0 pin tolerates 3.3V.",[167,171,172],{},"D8 \u002F GPIO15 must be LOW at boot; D3 \u002F GPIO0 must be HIGH at boot. If you wire those pins to active-driven peripherals, the board may not boot.",[167,174,175],{},"\"Software\" PWM means PWM frequency tops out around a few kHz before timing jitters — fine for LEDs and servos, not great for motor speed control.",[167,177,178,179,182],{},"ESP8266 has tighter RAM than ESP32. Watch your dynamic allocations and prefer ",[155,180,181],{},"PROGMEM"," for large constants.",[18,184,186],{"id":185},"compile-flag","Compile flag",[188,189,194],"pre",{"className":190,"code":191,"language":192,"meta":193,"style":193},"language-ini shiki shiki-themes github-light github-dark","[env:nodemcuv2]\nplatform = espressif8266\nboard = nodemcuv2\nframework = arduino\n","ini","",[155,195,196,204,210,216],{"__ignoreMap":193},[197,198,201],"span",{"class":199,"line":200},"line",1,[197,202,203],{},"[env:nodemcuv2]\n",[197,205,207],{"class":199,"line":206},2,[197,208,209],{},"platform = espressif8266\n",[197,211,213],{"class":199,"line":212},3,[197,214,215],{},"board = nodemcuv2\n",[197,217,219],{"class":199,"line":218},4,[197,220,221],{},"framework = arduino\n",[223,224,225],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":193,"searchDepth":206,"depth":206,"links":227},[228,229,230,231],{"id":20,"depth":206,"text":21},{"id":143,"depth":206,"text":144},{"id":161,"depth":206,"text":162},{"id":185,"depth":206,"text":186},"NodeMCU v2 board guide — ESP8266, WiFi-only, classic Lua\u002FArduino dev-kit on a budget.","md",{},true,"\u002Fdocs\u002Fboards\u002Fnodemcu-v2",{"title":5,"description":232},"docs\u002Fboards\u002Fnodemcu-v2","YnaDkegw8WaAikXHO0W9gW1mbu6FyNlXy6Ye_9d56BQ",1777412314782]