{"schema":"https://ver.cy/schemas/card/1.0.0","id":"vr.tr.nodemcu","code":"thing-q19729219","url":"https://ver.cy/models/thing/q19729219/","name":"NodeMCU","alternateNames":[],"kind":"thing","status":"published","version":"0.1.0-research.1","language":"en","classifiers":{"family":"Thing Registry","category":"Physical world and living systems","entryKind":"thing","plane":"PHY","domain":["PHY.OBJ"],"industry":[],"navPath":"","tags":[],"facets":{}},"whatItIs":"NodeMCU is an open-source IoT platform using the Lua scripting language, comprising firmware for supported microcontrollers and associated development hardware.","purpose":"Enable an agent to recognise the NodeMCU platform, distinguish its firmware and hardware components, and assess compatibility, operating state and authorised use.","scope":{"in":["Platform identity includes its open-source firmware and associated development hardware.","Firmware versions, Lua capabilities and supported interfaces determine application compatibility.","Hardware support and board-specific constraints govern platform deployment.","Boot, programming, execution and recovery capabilities depend on the firmware and hardware combination.","Security, wireless operation and readiness are assessed for the proposed application."],"out":["Processor families as standalone semiconductor kinds are outside this model.","Generic development boards without an established relationship to the platform are outside this model.","Application logic, cloud services and network infrastructure are separate models.","External sensors, actuators, power supplies and finished IoT products are separate entities.","Ownership and maintenance history of individual devices are included only where needed to assess platform deployment."],"boundaries":[]},"distinguishingFeatures":["Lua scripting is a defining capability of the platform's firmware.","The platform includes firmware and associated development hardware, so a board alone does not define its identity.","Firmware identity and hardware compatibility require separate evidence.","A Wi-Fi-capable microcontroller or a NodeMCU-labelled board does not by itself establish that NodeMCU firmware is installed.","Supported capabilities depend on the firmware version, build and hardware configuration."],"structure":{"bundles":[{"id":"board-identity-and-lineage","name":"Board identity and lineage","description":"Establish which physical hardware the NodeMCU name denotes.","layers":[{"id":"registry-boundary","name":"Registry boundary","description":"Separate the physical board kind from related software and platform concepts.","findings":[{"id":"hardware-sense","name":"Hardware sense","description":"Record evidence supporting the provisional development-board interpretation.","questions":[{"text":"Does the registry's originating record denote development boards, firmware or the combined project?","id":"hardware-sense-q01","kind":"boundary"},{"text":"Which existing Vercy model, if any, already owns this same concept?","id":"hardware-sense-q02","kind":"boundary"}]}]},{"id":"variant-resolution","name":"Variant resolution","description":"Resolve the board to a supported hardware reference.","findings":[{"id":"design-evidence","name":"Design evidence","description":"Associate observed markings and components with a specific design rather than trusting a sales name.","questions":[{"text":"Which revision markings, module identifier and board-layout features are observable?","id":"design-evidence-q01","kind":"measurement"},{"text":"Which schematic or manufacturer record supports the claimed revision and compatibility?","id":"design-evidence-q02","kind":"provenance"}]}]}]},{"id":"power-and-electrical-envelope","name":"Power and electrical envelope","description":"Determine how the identified board may be powered and connected.","layers":[{"id":"supply-paths","name":"Supply paths","description":"Identify input paths, regulation and interactions between supplies.","findings":[{"id":"input-path-compatibility","name":"Input-path compatibility","description":"Establish allowable supply conditions from the actual power circuit.","questions":[{"text":"What voltage and current envelope applies to USB and each exposed power pin on this revision?","id":"input-path-compatibility-q01","kind":"measurement"},{"text":"Does the circuit permit simultaneous USB and external power without backfeeding?","id":"input-path-compatibility-q02","kind":"action"},{"text":"What protection or isolation components are present in the documented supply paths?","id":"input-path-compatibility-q03","kind":"provenance"}]}]},{"id":"signal-limits","name":"Signal limits","description":"Resolve permissible voltages and loads at the exposed headers.","findings":[{"id":"header-electrical-limits","name":"Header electrical limits","description":"Distinguish processor limits from limits modified by board circuitry.","questions":[{"text":"What input-voltage and output-current limits apply to each intended digital connection?","id":"header-electrical-limits-q01","kind":"measurement"},{"text":"Does the analogue input include a divider, and what verified header-voltage range follows from it?","id":"header-electrical-limits-q02","kind":"measurement"},{"text":"Which proposed peripherals require level conversion or a separate load driver?","id":"header-electrical-limits-q03","kind":"action"}]}]}]},{"id":"headers-and-physical-integration","name":"Headers and physical integration","description":"Relate software-visible pins to physical connections and installation constraints.","layers":[{"id":"pin-resolution","name":"Pin resolution","description":"Translate printed labels into usable processor functions.","findings":[{"id":"label-function-and-boot-mapping","name":"Label, function and boot mapping","description":"Record pin aliases together with startup constraints and on-board sharing.","questions":[{"text":"Which processor GPIO corresponds to each printed header label in the selected software environment?","id":"label-function-and-boot-mapping-q01","kind":"definition"},{"text":"Which exposed pins affect boot selection or share connections with flash, LEDs or programming circuitry?","id":"label-function-and-boot-mapping-q02","kind":"boundary"},{"text":"Will the proposed peripheral hold any startup-sensitive pin at an incompatible level during reset?","id":"label-function-and-boot-mapping-q03","kind":"action"}]}]},{"id":"mechanical-fit","name":"Mechanical fit","description":"Determine whether a board can be installed without obstructing connections or the antenna.","findings":[{"id":"carrier-and-enclosure-fit","name":"Carrier and enclosure fit","description":"Assess the actual footprint and required access.","questions":[{"text":"What are the measured board dimensions, header spacing and connector overhang?","id":"carrier-and-enclosure-fit-q01","kind":"measurement"},{"text":"Does the proposed carrier or enclosure preserve access to USB, reset controls and required header contacts?","id":"carrier-and-enclosure-fit-q02","kind":"action"},{"text":"What antenna-clearance requirements does the identified module documentation specify?","id":"carrier-and-enclosure-fit-q03","kind":"provenance"}]}]}]},{"id":"firmware-boot-and-recovery","name":"Firmware, boot and recovery","description":"Determine what runs on the board and how execution can be changed or restored.","layers":[{"id":"image-compatibility","name":"Image compatibility","description":"Relate firmware requirements to detected hardware resources.","findings":[{"id":"firmware-target-and-storage","name":"Firmware target and storage","description":"Establish a compatible image and preserve data that a reflash would overwrite.","questions":[{"text":"What firmware and build are installed, and what evidence identifies them?","id":"firmware-target-and-storage-q01","kind":"provenance"},{"text":"What processor target, detected flash capacity and storage layout must a replacement image match?","id":"firmware-target-and-storage-q02","kind":"measurement"},{"text":"Which firmware regions or configuration data should be backed up before programming?","id":"firmware-target-and-storage-q03","kind":"action"}]}]},{"id":"loader-and-reset-control","name":"Loader and reset control","description":"Establish the variant-specific route into normal execution and firmware loading.","findings":[{"id":"programming-path","name":"Programming path","description":"Use verified USB, serial and reset arrangements to diagnose or recover execution.","questions":[{"text":"Which USB-to-serial device, host driver and serial settings apply to this board?","id":"programming-path-q01","kind":"definition"},{"text":"What button sequence or host-controlled reset sequence enters the loader on this revision?","id":"programming-path-q02","kind":"action"},{"text":"What observed output distinguishes successful boot, loader entry and repeated reset?","id":"programming-path-q03","kind":"measurement"}]}]}]},{"id":"wireless-operation-and-serviceability","name":"Wireless operation and serviceability","description":"Assess network readiness and practical fault recovery in the intended installation.","layers":[{"id":"radio-and-network-readiness","name":"Radio and network readiness","description":"Establish usable wireless capabilities for the identified module and installed firmware.","findings":[{"id":"supported-wireless-operation","name":"Supported wireless operation","description":"Keep hardware capability, firmware support and observed connectivity distinct.","questions":[{"text":"Which bands, network modes and authentication methods are documented for this module and firmware combination?","id":"supported-wireless-operation-q01","kind":"provenance"},{"text":"What signal level, connection stability and reconnection behavior are observed at the intended location?","id":"supported-wireless-operation-q02","kind":"measurement"},{"text":"Which radio approval identifiers and integration conditions are documented, and which issuing bodies or authorities do they reference?","id":"supported-wireless-operation-q03","kind":"provenance"}]}]},{"id":"fault-isolation-and-return-to-service","name":"Fault isolation and return to service","description":"Separate board faults from supply, cable, wiring and firmware faults.","findings":[{"id":"recoverability-evidence","name":"Recoverability evidence","description":"Base repair, reflash or replacement decisions on repeatable observations.","questions":[{"text":"Do resets coincide with supply-voltage dips, peripheral attachment or radio activity?","id":"recoverability-evidence-q01","kind":"measurement"},{"text":"Which checks isolate a data-cable or USB-interface problem from processor boot failure?","id":"recoverability-evidence-q02","kind":"action"},{"text":"What successful programming, execution, I/O and connectivity checks are required before returning this board to its intended role?","id":"recoverability-evidence-q03","kind":"action"}]}]}]},{"id":"evidence-and-external-alignment","name":"Evidence and external alignment","description":"What the world already says about this thing, gathered so the model can be checked against it.","layers":[{"id":"reported-evidence","name":"Reported evidence","description":"Findings from the breadth pass, kept separate from the structural claims.","findings":[{"id":"evidence-confidence-notes","name":"Check these first","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these check these first hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-confidence-notes-q01","kind":"provenance"}]},{"id":"evidence-kinds","name":"Kinds and varieties","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these kinds and varieties hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-kinds-q01","kind":"provenance"}]},{"id":"evidence-identifiers","name":"Identifiers and schemes","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these identifiers and schemes hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-identifiers-q01","kind":"provenance"}]},{"id":"evidence-standards-and-regulation","name":"Standards and regulation","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these standards and regulation hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-standards-and-regulation-q01","kind":"provenance"}]},{"id":"evidence-real-world-use","name":"Real-world use","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these real-world use hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-real-world-use-q01","kind":"provenance"}]},{"id":"evidence-measurements","name":"Typical measurements","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these typical measurements hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-measurements-q01","kind":"provenance"}]},{"id":"evidence-failure-modes-and-hazards","name":"Failure modes and hazards","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these failure modes and hazards hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-failure-modes-and-hazards-q01","kind":"provenance"}]},{"id":"evidence-regional-variation","name":"Regional variation","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these regional variation hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-regional-variation-q01","kind":"provenance"}]},{"id":"evidence-neighbours","name":"Neighbouring kinds and how to tell them apart","description":"Recalled without web access and unsourced; every item is a lead to verify.","questions":[{"text":"Which of these neighbouring kinds and how to tell them apart hold for the sense of NodeMCU this model covers, and on what evidence?","id":"evidence-neighbours-q01","kind":"provenance"}]}]}]}]},"agentConduct":{"may":["Identify NodeMCU firmware and associated development hardware from documented evidence.","Flash firmware the owner has approved onto a board the agent is authorized to manage.","Report firmware versions and known vulnerabilities to the owner."],"mustNot":["Deploy it to connect to networks or devices without the owner's permission.","Use it to capture, jam or interfere with other people's wireless traffic.","Ship devices with default credentials or unpatched firmware.","Control mains-voltage loads from it without proper isolation and protection."],"requiresHuman":["Connecting a platform deployment to equipment that affects safety or people's homes requires human approval.","Deploying the platform on networks shared with others requires human approval."]},"ethics":{"considerations":["Insecure platform deployments can expose connected devices and other network users to misuse.","Home sensors built with the platform can collect private data about occupants."],"affectedParties":["Owners and users are affected by platform security.","Occupants of monitored spaces are affected by data collection.","Other network users can be affected by insecure deployments."]},"owners":{"steward":"Project maintainers steward platform development, while deployment owners are responsible for their installations.","roles":[],"masterSystems":[]},"relations":[{"target":"Q17157301","type":"parent","note":"registry parent class"}],"interaction":{"identity":{"applicability":"required","items":["Vercy registry: vr.tr.nodemcu","Wikidata: Q19729219 (https://www.wikidata.org/wiki/Q19729219)"]},"properties":{"applicability":"required","items":["Hardware identity: Documented design, revision, manufacturer and compatibility evidence; unresolved permitted","Processor and radio module: Link to identified SoC and module part numbers","Flash capacity and layout: Bytes of detected flash; byte offsets and sizes of firmware regions","Power-input envelope: V and mA for each verified input path and operating condition","Signal and analogue-input limits: V and mA by header pin, including any verified input divider","Header-to-processor mapping: Printed pin label to processor GPIO, alternate function and boot constraint","Programming interface: Identified USB bridge or serial interface, connector and reset-control arrangement","Execution state: Unpowered, booting, loader, running, sleeping, reset loop or unknown","Installed firmware: Firmware project, build identifier, target and image digest where available","Integration geometry: Board dimensions, header pitch, row spacing and clearance in mm"]},"recognition":{"applicability":"required","items":["Physical appearance alone cannot establish platform or installed firmware identity.","Board markings and layouts can support identification of associated development hardware.","Firmware records and version information provide evidence beyond the board's appearance."]},"capabilities":{"applicability":"required","items":["Identify a board variant and select its corresponding schematic, pinout and programming target.","Assess a proposed power source and peripheral wiring against verified board limits.","Read diagnostic output and distinguish loader, application, sleep and fault states.","Back up recoverable contents, select a compatible firmware image and execute a supported flashing procedure.","Configure exposed interfaces and wireless operation within the identified hardware and firmware capabilities.","Diagnose power, connection, boot or radio faults and determine whether recovery or replacement is appropriate."]},"hazards":{"applicability":"required","items":["Insecure firmware turning devices into entry points for attacks.","Overheating or shorts from wiring errors.","Shock and fire risk when used to switch mains power improperly."]},"interfaces":{"applicability":"required","items":["Radio Equipment Directive 2014/53/EU, European Union."]},"context":{"applicability":"required","items":["These development boards are used in embedded prototyping to connect sensors, actuators and other circuits to wireless networks.","They are encountered in teaching laboratories, hobby projects and experimental monitoring systems where scripts control input and output."]}},"sources":[{"title":"Wikidata item Q19729219: NodeMCU","url":"https://www.wikidata.org/wiki/Q19729219","note":"identity and sense of the item"},{"title":"Wikipedia: NodeMCU","url":"https://en.wikipedia.org/wiki/NodeMCU","note":"general description of the item"}],"openQuestions":["Does the originating registry record intend NodeMCU firmware, its development-board family or the combined project, and is the current PHY placement authoritative?","Which official revisions and third-party NodeMCU-labelled boards belong within this entry, particularly products using different processor families?","Does an existing world model already cover the intended NodeMCU concept and therefore require linking instead of a separate publication?","What revision-specific evidence establishes power-input limits, analogue-input scaling, pin mappings, dimensions and protection circuitry?","Which manufacturer records substantiate radio approvals, integration conditions and recovery procedures for the variants admitted to scope?"],"resources":{"spec":"/models/things/publications/thing-q19729219/spec.json"},"provenance":{"origin":"thing registry research (pass 2)","builtFrom":["models/things/publications/thing-q19729219/spec.json"],"providers":["Codex"],"researchStatus":"unreviewed","generatedAt":"2026-09-12T11:37:06Z","builder":"tools/build_cards.py@1.0.0"},"completeness":{"sections":{"classifiers":"filled","whatItIs":"filled","purpose":"filled","distinguishingFeatures":"filled","structure":"filled","agentConduct":"filled","ethics":"filled","owners":"filled","relations":"filled","interaction.identity":"filled","interaction.properties":"filled","interaction.recognition":"filled","interaction.capabilities":"filled","interaction.hazards":"filled","interaction.interfaces":"filled","interaction.context":"filled","sources":"filled"},"notes":{"_gate":"Published through the thing publication gate 1.0 on 2026-10-07T12:16:30+00:00: completeness 1.00; sense: Wikidata description; 2 live sources; review by codex: pass"},"score":1.0}}