{"title":"New Arrivals","description":"\u003cp\u003eThe latest additions to the NZN Electronics catalogue — fresh stock of switches, sensors, dev boards and more, dispatched within one business day from New Zealand.\u003c\/p\u003e","products":[{"product_id":"lj12a3-2-z-bx-proximity-sensor-npn-no-3-wire","title":"LJ12A3-2-Z\/BX Inductive Proximity Sensor – NPN NO 12mm IP65 3-Wire","description":"\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600;700\u0026display=swap');\n  .nzn-desc .tagline{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7;color:#333;border-left:3px solid #e07e2c;padding-left:16px;margin-bottom:32px}\n  .nzn-desc .section-title{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e07e2c;margin-bottom:14px}\n  .nzn-desc .specs-table{width:100%;border-collapse:collapse;margin-bottom:32px;font-family:'DM Sans',sans-serif;font-size:14px}\n  .nzn-desc .specs-table tr{border-bottom:1px solid #ebebeb}\n  .nzn-desc .specs-table tr:last-child{border-bottom:none}\n  .nzn-desc .specs-table td{padding:10px 8px}\n  .nzn-desc .specs-table td:first-child{color:#888;width:42%;font-size:14px}\n  .nzn-desc .specs-table td:last-child{font-weight:600;color:#1a1a1a}\n  .nzn-desc .uses-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:32px}\n  .nzn-desc .use-item{background:#f7f7f7;border-left:3px solid #e07e2c;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:13.5px;line-height:1.5;color:#2a2a2a}\n  .nzn-desc .note{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#888;line-height:1.6}\n  .nzn-desc .note strong{color:#555}\n  .nzn-desc .setup-box{background:#f0f7ff;border-left:3px solid #4a90d9;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#2c4a6e;line-height:1.7;margin-bottom:32px;border-radius:0 4px 4px 0}\n  .nzn-desc .faq-item{margin-bottom:12px}\n  .nzn-desc .faq-q{font-family:'DM Sans',sans-serif;font-size:13.5px;font-weight:700;color:#1a1a1a;margin-bottom:3px}\n  .nzn-desc .faq-a{font-family:'DM Sans',sans-serif;font-size:13.5px;color:#555;line-height:1.5;padding-left:14px;border-left:2px solid #e07e2c}\n  .nzn-desc hr.divider{border:none;border-top:1px solid #ebebeb;margin:28px 0}\n\u003c\/style\u003e\n\u003cdiv class=\"nzn-desc\" style=\"max-width:1200px;margin:0 auto;\"\u003e\n  \u003cp class=\"tagline\"\u003e12mm cylindrical inductive proximity sensor with NPN normally-open output and IP65 weather resistance. Detects ferrous and non-ferrous metals within 2mm without physical contact. 6–36V DC, 500Hz switching frequency. Standard for CNC homing, 3D printer bed levelling, conveyor systems, and robotics. Includes clamp nuts and washers.\u003c\/p\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eSpecifications\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eModel\u003c\/td\u003e\n\u003ctd\u003eLJ12A3-2-Z\/BX\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBody Diameter\u003c\/td\u003e\n\u003ctd\u003eM12 (12mm)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBody Length\u003c\/td\u003e\n\u003ctd\u003e~64mm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSensing Distance\u003c\/td\u003e\n\u003ctd\u003e2mm (±10%)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eOutput Type\u003c\/td\u003e\n\u003ctd\u003eNPN, Normally Open (NO)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSupply Voltage\u003c\/td\u003e\n\u003ctd\u003e6–36V DC\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eOutput Current\u003c\/td\u003e\n\u003ctd\u003e≤300mA (sink)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSwitching Frequency\u003c\/td\u003e\n\u003ctd\u003e500Hz\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eCable Length\u003c\/td\u003e\n\u003ctd\u003e~100cm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eIP Rating\u003c\/td\u003e\n\u003ctd\u003eIP65\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eHousing Material\u003c\/td\u003e\n\u003ctd\u003eNickel-plated brass\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eTarget Material\u003c\/td\u003e\n\u003ctd\u003eFerrous \u0026amp; non-ferrous metals\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWiring — 3-Wire NPN\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBrown wire\u003c\/td\u003e\n\u003ctd\u003eVCC — connect to positive supply (6–36V DC)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBlue wire\u003c\/td\u003e\n\u003ctd\u003eGND — connect to negative \/ ground of supply\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBlack wire\u003c\/td\u003e\n\u003ctd\u003eSignal output — pulls LOW when metal detected (NPN open collector). Connect to your input pin with a 10kΩ pull-up to VCC.\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003cdiv class=\"setup-box\"\u003e\n    \u003cstrong\u003eUsing with Arduino (5V):\u003c\/strong\u003e Power the sensor from the Arduino 5V pin (minimum operating voltage). Connect Brown → 5V, Blue → GND, Black → digital input pin. Add a 10kΩ resistor from the input pin to 5V as a pull-up. The pin reads HIGH when no metal, LOW when metal is detected.\u003cbr\u003e\u003cbr\u003e\n    \u003cstrong\u003eUsing with 12V\/24V PLC or system:\u003c\/strong\u003e Power from your 12V\/24V supply. Use a voltage divider or logic level converter on the black signal wire before connecting to a 5V or 3.3V microcontroller input.\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWhat's Included\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003e1 ×\u003c\/td\u003e\n\u003ctd\u003eLJ12A3-2-Z\/BX inductive proximity sensor with ~100cm cable\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003e2 ×\u003c\/td\u003e\n\u003ctd\u003eClamp nuts\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003e2 ×\u003c\/td\u003e\n\u003ctd\u003eLock washers\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Uses\u003c\/p\u003e\n  \u003cdiv class=\"uses-grid\"\u003e\n    \u003cdiv class=\"use-item\"\u003eCNC machine homing, end-stops \u0026amp; limit switch replacement\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003e3D printer bed levelling \u0026amp; axis limit detection\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eConveyor belt object counting \u0026amp; position sensing\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eRobotic arm \u0026amp; actuator position feedback\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eIndustrial metal part presence\/absence detection\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eDIY automation \u0026amp; maker projects\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Questions\u003c\/p\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eWill this detect aluminium or copper?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eYes, but at a reduced sensing distance — typically 40–50% of the rated 2mm. So expect reliable detection at ~1mm for non-ferrous metals. For iron\/steel, the full 2mm range applies.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eCan I use this as a filament runout sensor on my 3D printer?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eNot directly — it detects metals only, not plastic filament. It's ideal for axis limit switches and bed levelling probes on metal print beds, but not for filament runout detection.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"note\"\u003e\u003cstrong\u003ePlease note:\u003c\/strong\u003e Detects metal only. Non-ferrous metals have ~40–50% reduced effective sensing range. Do not exceed 36V supply voltage. Includes 2 clamp nuts and 2 lock washers.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42680889868384,"sku":"SEN-LJ12A3-NPN-NO","price":8.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/main-hero-lj12a3-2-zbx-orange.png?v=1777361426"},{"product_id":"electric-welding-machine-high-current-boat-type-switch-40a-high-power-rocker-power-supply-kcd4-with-lamp-boat-type-four-leg-red","title":"KCD4 40A High-Power Rocker Switch – DPST with Lamp","description":"\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600;700\u0026display=swap');\n  .nzn-desc .tagline{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7;color:#333;border-left:3px solid #e07e2c;padding-left:16px;margin-bottom:32px}\n  .nzn-desc .section-title{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e07e2c;margin-bottom:14px}\n  .nzn-desc .specs-table{width:100%;border-collapse:collapse;margin-bottom:32px;font-family:'DM Sans',sans-serif;font-size:14px}\n  .nzn-desc .specs-table tr{border-bottom:1px solid #ebebeb}\n  .nzn-desc .specs-table tr:last-child{border-bottom:none}\n  .nzn-desc .specs-table td{padding:10px 8px}\n  .nzn-desc .specs-table td:first-child{color:#888;width:42%;font-size:14px}\n  .nzn-desc .specs-table td:last-child{font-weight:600;color:#1a1a1a}\n  .nzn-desc .uses-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:32px}\n  .nzn-desc .use-item{background:#f7f7f7;border-left:3px solid #e07e2c;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:13.5px;line-height:1.5;color:#2a2a2a}\n  .nzn-desc .note{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#888;line-height:1.6}\n  .nzn-desc .note strong{color:#555}\n  .nzn-desc .setup-box{background:#f0f7ff;border-left:3px solid #4a90d9;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#2c4a6e;line-height:1.7;margin-bottom:32px;border-radius:0 4px 4px 0}\n  .nzn-desc .faq-item{margin-bottom:12px}\n  .nzn-desc .faq-q{font-family:'DM Sans',sans-serif;font-size:13.5px;font-weight:700;color:#1a1a1a;margin-bottom:3px}\n  .nzn-desc .faq-a{font-family:'DM Sans',sans-serif;font-size:13.5px;color:#555;line-height:1.5;padding-left:14px;border-left:2px solid #e07e2c}\n  .nzn-desc hr.divider{border:none;border-top:1px solid #ebebeb;margin:28px 0}\n\u003c\/style\u003e\n\u003cdiv class=\"nzn-desc\" style=\"max-width:1200px;margin:0 auto;\"\u003e\n  \u003cp class=\"tagline\"\u003eIndustrial-grade DPST rocker switch rated to 40A at 250VAC. Nylon 66 flame-retardant body, high-conductivity silver-alloy contacts, and integrated illuminated lamp. Designed for high-amperage power control in welding machines, workshop equipment, and heavy-duty industrial panels. Available in Red and Green.\u003c\/p\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eSpecifications\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eModel\u003c\/td\u003e\n\u003ctd\u003eKCD4-Z High Power Series\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eCurrent Rating\u003c\/td\u003e\n\u003ctd\u003e40A @ 250VAC (T125)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eConfiguration\u003c\/td\u003e\n\u003ctd\u003eDPST (Double Pole, Single Throw) — 6-pin\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePanel Cutout (W × H)\u003c\/td\u003e\n\u003ctd\u003e30.1–30.6mm × 21.9–22.0mm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSwitch Face Size\u003c\/td\u003e\n\u003ctd\u003e32.2 × 25.2mm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eTerminal Width\u003c\/td\u003e\n\u003ctd\u003e6.3mm (standard quick-connect spade)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBody Material\u003c\/td\u003e\n\u003ctd\u003eNylon 66 (UL94V-0 flame-retardant)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eContact Material\u003c\/td\u003e\n\u003ctd\u003eSilver alloy\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eOperating Temperature\u003c\/td\u003e\n\u003ctd\u003eUp to 125°C (T125)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eWithstand Voltage\u003c\/td\u003e\n\u003ctd\u003e3000VAC \/ 1 min (terminals to button)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eMechanical Life\u003c\/td\u003e\n\u003ctd\u003e≥10,000 cycles\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eCertifications\u003c\/td\u003e\n\u003ctd\u003eCQC, CB, CE\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWiring — 6-Pin DPST\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePins 1 \u0026amp; 2 (top row)\u003c\/td\u003e\n\u003ctd\u003eLine 1 IN → Line 1 OUT (one pole)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePins 3 \u0026amp; 4 (middle row)\u003c\/td\u003e\n\u003ctd\u003eLine 2 IN → Line 2 OUT (second pole)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePins 5 \u0026amp; 6 (bottom row)\u003c\/td\u003e\n\u003ctd\u003eLamp supply (connect N and L for illumination)\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003cdiv class=\"setup-box\"\u003eDPST switches two poles simultaneously — both Line 1 and Line 2 are connected and disconnected together. Use standard 6.3mm insulated spade connectors rated for the full current. For welding machines: use high-temperature insulated spades — loose connections at 40A will generate significant heat at the terminals.\u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWhat's Included\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003e1 ×\u003c\/td\u003e\n\u003ctd\u003eKCD4 40A rocker switch with integrated lamp (selected colour)\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Uses\u003c\/p\u003e\n  \u003cdiv class=\"uses-grid\"\u003e\n    \u003cdiv class=\"use-item\"\u003eWelding machines — MIG, TIG \u0026amp; inverter welder main power switches\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eIndustrial control panels \u0026amp; high-draw motor controller enclosures\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eWorkshop equipment — compressors, plasma cutters, bench power supplies\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eHeavy-duty pump controllers \u0026amp; industrial machinery power switching\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eGenerator control panels requiring high-current switching\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eAny application requiring a robust illuminated 40A panel switch\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Questions\u003c\/p\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eWhat size panel cutout do I need?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003e30.1–30.6mm wide × 21.9–22.0mm tall — a rectangular cutout, not a round hole. The switch clips in from the front and is secured by the housing clips.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eDoes the lamp need to be wired separately?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eYes — the lamp pins (pins 5 \u0026amp; 6) need to be connected to your supply to illuminate. They are separate from the switching contacts. If you don't need the lamp, simply leave pins 5 \u0026amp; 6 unconnected — the switch will still function normally.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eCan this replace my existing welding machine switch?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eVery likely yes — the KCD4 series is the standard replacement switch used in most inverter welders and MIG machines worldwide. Verify the panel cutout dimensions (30×22mm) and terminal type (6.3mm spade) match your machine before ordering.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"note\"\u003e\u003cstrong\u003ePlease note:\u003c\/strong\u003e Mains AC voltage (250VAC) — all installation must be carried out by a registered electrician in accordance with NZ wiring standards. Use high-temperature insulated 6.3mm spade connectors. Terminal strength rated ≥80N.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"Red","offer_id":42720663437408,"sku":"SW-KCD4-40A-RED","price":9.99,"currency_code":"NZD","in_stock":true},{"title":"Green","offer_id":42720663470176,"sku":"SW-KCD4-40A-GRN","price":9.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/IMG_4768.jpg?v=1777013123"},{"product_id":"kcd4-40a-high-power-rocker-switch-with-lamp-dpst-6-pin-250vac-copy","title":"16A KCD4 Heavy Duty Rocker Switch – DPST 250VAC","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  \/* Variant badge table *\/\n  .nzn-desc .nzn-variants {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 12px;\n    margin-bottom: 28px;\n  }\n\n  .nzn-desc .nzn-variant {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fafafa;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-variant strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n    margin-bottom: 5px;\n  }\n\n  .nzn-desc .nzn-variant p {\n    font-size: 13px;\n    color: #60646c;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-variants {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003eWiring\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eDPST rocker switch rated to 16A at 250VAC with copper\/silver contacts and a flame-retardant Nylon body. Built for high-current switching in workshop, industrial, and heavy appliance applications. Available in illuminated and solid-colour variants in Green, Gold, and Blue. CE and CQC certified.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003e16A @ 250VAC \/ 20A @ 125VAC rating\u003c\/li\u003e\n              \u003cli\u003eDPST — switches both poles simultaneously\u003c\/li\u003e\n              \u003cli\u003eCopper contacts with silver contact points\u003c\/li\u003e\n              \u003cli\u003eIntegrated neon illumination (illuminated variants)\u003c\/li\u003e\n              \u003cli\u003eSnap-in panel mount — no tools required\u003c\/li\u003e\n              \u003cli\u003eCE and CQC certified\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eVariant Guide\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e💡\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eIlluminated — Green \/ Gold \/ Blue\u003c\/strong\u003e\n                \u003cp\u003eIntegrated neon lamp lights up when the switch is ON. Lamp pins need separate wiring to the supply.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e■\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSolid-Colour — Green \/ Gold \/ Blue\u003c\/strong\u003e\n                \u003cp\u003eNo lamp — clean appearance. Only 4 switching pins active, no lamp wiring needed.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e✂\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePanel Cutout Size\u003c\/strong\u003e\n                \u003cp\u003e29.5mm × 22.4mm rectangular cutout. Switch snaps in from the front and clips into place.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e⚡\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eTerminal Type\u003c\/strong\u003e\n                \u003cp\u003e6.3mm quick-connect spade terminals. Use insulated spade connectors rated for the current load.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Mains AC voltage (250VAC) — all installation must be carried out by a registered electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eModel\u003c\/span\u003e\u003cstrong\u003eKCD4 16A Rocker Switch\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRating\u003c\/span\u003e\u003cstrong\u003e16A @ 250VAC \/ 20A @ 125VAC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eConfiguration\u003c\/span\u003e\u003cstrong\u003eDPST (Double Pole, Single Throw) — 4-pin\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSwitch Face (Bezel)\u003c\/span\u003e\u003cstrong\u003e31.1 × 25.0mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePanel Cutout (L × W)\u003c\/span\u003e\u003cstrong\u003e29.5mm × 22.4mm (rectangular)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBody Depth\u003c\/span\u003e\u003cstrong\u003e27.5mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTerminal Size\u003c\/span\u003e\u003cstrong\u003e6.3mm quick-connect spade\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eContact Material\u003c\/span\u003e\u003cstrong\u003eCopper with silver contact points\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eHousing Material\u003c\/span\u003e\u003cstrong\u003eFlame-retardant Nylon (industrial grade)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eIllumination\u003c\/span\u003e\u003cstrong\u003eNeon lamp (illuminated variants only)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCertifications\u003c\/span\u003e\u003cstrong\u003eCE, CQC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAvailable Colours\u003c\/span\u003e\u003cstrong\u003eGreen, Gold, Blue\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Mains AC voltage (250VAC) — all installation must be carried out by a registered electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- WIRING --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWiring — 4-Pin DPST\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 1 (top left)\u003c\/span\u003e\u003cstrong\u003eLine 1 IN — Active (L)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 2 (top right)\u003c\/span\u003e\u003cstrong\u003eLine 1 OUT — Switched Active to load\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 3 (bottom left)\u003c\/span\u003e\u003cstrong\u003eLine 2 IN — Active (L)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 4 (bottom right)\u003c\/span\u003e\u003cstrong\u003eLine 2 OUT — Switched Active to load\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-started\" style=\"margin-top: 28px;\"\u003e\n          \u003ch3\u003eWiring Instructions\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eSingle-phase AC wiring\u003c\/strong\u003e\n              \u003cp\u003eConnect Active (L) to pins 1 and 3. Connect Active out to pins 2 and 4. Neutral connects directly to the load — it is not switched.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eIlluminated variants — lamp wiring\u003c\/strong\u003e\n              \u003cp\u003eConnect the lamp terminals to Active and Neutral for the neon indicator to illuminate when the switch is ON.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eSolid-colour variants\u003c\/strong\u003e\n              \u003cp\u003eNo lamp terminals to wire. Only the 4 switching pins are used.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eUse rated connectors\u003c\/strong\u003e\n              \u003cp\u003eUse 6.3mm insulated spade connectors rated for the current load. Do not exceed 16A at 250VAC.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Mains AC voltage (250VAC) — all installation must be carried out by a registered electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- INCLUDED --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eKCD4 16A Rocker Switch (selected colour and lamp variant)\u003c\/strong\u003e\n            \u003cp\u003eSnap-in panel mount design. No additional hardware required for installation into a compatible panel cutout.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Spade connectors and wiring are not included. Use 6.3mm insulated spade connectors rated for the current load.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eInverter welders — MIG\/ARC main power switching\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eAir compressors and bench power tools\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eCommercial kitchen equipment and industrial vacuum systems\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eHigh-output battery chargers and custom power distribution\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eIndustrial control panels requiring 16A rated switching\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eWorkshop machinery and equipment power controls\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Rated for medium to high-draw equipment. For loads above 16A at 250VAC, consider the 40A KCD4 variant instead.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- FAQs --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat size panel cutout do I need?\u003c\/strong\u003e\n            \u003cp\u003e29.5mm long × 22.4mm wide — a rectangular cutout. The switch snaps in from the front and clips into place. This is a different size to the 40A KCD4 — check your measurements before cutting.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat's the difference between the 16A and 40A KCD4?\u003c\/strong\u003e\n            \u003cp\u003eThe 16A version is a 4-pin DPST suited to medium-draw equipment like compressors and standard welders. The 40A version is a 6-pin DPST designed for heavy-draw inverter welders and high-current machinery. Both have different panel cutout sizes.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDo I need to wire the lamp terminals on illuminated variants?\u003c\/strong\u003e\n            \u003cp\u003eOnly if you want the indicator to light up. Connect the lamp terminals to Active and Neutral. If you don't need the lamp, leave those pins unconnected — the switch will still function normally.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat terminals do I need?\u003c\/strong\u003e\n            \u003cp\u003e6.3mm quick-connect insulated spade terminals rated for your current load. These are widely available at electrical wholesalers and tool shops.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Mains AC voltage (250VAC) — all installation must be carried out by a registered electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Illuminated \/ Green","offer_id":42720679100512,"sku":"SW-KCD4-16A-ILL-GRN","price":3.99,"currency_code":"NZD","in_stock":false},{"title":"Illuminated \/ Gold","offer_id":42720679133280,"sku":"SW-KCD4-16A-ILL-GLD","price":3.99,"currency_code":"NZD","in_stock":true},{"title":"Illuminated \/ Blue","offer_id":42720679166048,"sku":"SW-KCD4-16A-ILL-BLU","price":3.99,"currency_code":"NZD","in_stock":false},{"title":"Solid-Color \/ Green","offer_id":42720679198816,"sku":"SW-KCD4-16A-SOL-GRN","price":3.99,"currency_code":"NZD","in_stock":false},{"title":"Solid-Color \/ Gold","offer_id":42720679231584,"sku":"SW-KCD4-16A-SOL-GLD","price":3.99,"currency_code":"NZD","in_stock":false},{"title":"Solid-Color \/ Blue","offer_id":42720679264352,"sku":"SW-KCD4-16A-SOL-BLU","price":3.99,"currency_code":"NZD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/KCD-Multi-1-1.png?v=1780022499"},{"product_id":"mts-103-mini-toggle-switch-spdt-on-off-on-3-pin-2a-250vac","title":"MTS-103 Mini Toggle Switch – SPDT ON-OFF-ON 250VAC","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar { display: none; }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover { color: #ff7a2f; }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel { display: none; }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from { opacity: 0; transform: translateY(6px); }\n    to   { opacity: 1; transform: translateY(0); }\n  }\n\n  .nzn-desc .nzn-panel-content { flex: 1; }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child { margin-bottom: 0; }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs { border-top: 1px solid #e7e7e7; }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) { background: #fafafa; }\n  .nzn-desc .nzn-specs span { color: #60646c; }\n  .nzn-desc .nzn-specs strong { font-weight: 800; color: #101114; }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n    margin-bottom: 12px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n    font-size: 13px;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p { font-size: 14px; }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq { display: grid; gap: 12px; }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p { font-size: 14px; }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  .nzn-desc .nzn-wiring-box {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 0 12px 12px 0;\n    padding: 16px 20px;\n    font-size: 13.5px;\n    color: #2c4a6e;\n    line-height: 1.7;\n    margin-top: 20px;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc { width: 100%; max-width: 100%; padding: 0; overflow: hidden; }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active { border-bottom-color: #ff7a2f; }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active { display: block; }\n\n    .nzn-desc .nzn-overview { grid-template-columns: 1fr; gap: 26px; }\n\n    .nzn-desc .nzn-overview-copy { padding-top: 0; text-align: center; }\n\n    .nzn-desc p { font-size: 14.5px; text-align: center; }\n\n    .nzn-desc .nzn-checks { margin-top: 24px; gap: 13px; width: fit-content; max-width: 100%; }\n\n    .nzn-desc .nzn-checks li { align-items: flex-start; gap: 10px; font-size: 14px; text-align: left; }\n\n    .nzn-desc .nzn-checks li::before { margin-top: 2px; }\n\n    .nzn-desc .nzn-uses { grid-template-columns: 1fr; }\n\n    .nzn-desc .nzn-specs div { grid-template-columns: 1fr; gap: 4px; padding: 13px 10px; }\n\n    .nzn-desc .nzn-section-title { text-align: left; padding-top: 0; margin-bottom: 22px; }\n\n    .nzn-desc .nzn-started { padding: 20px 16px; }\n\n    .nzn-desc .nzn-included-card { grid-template-columns: 1fr; text-align: left; justify-items: start; }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003eWiring\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eCompact 3-position SPDT mini toggle switch with ON-OFF-ON latching action. Rated 5A at 125VAC \/ 2A at 250VAC. Fits a standard 6mm panel cutout — ideal for circuit switching, RC builds, and automotive dash panels.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eSPDT ON-OFF-ON — 3-position latching action\u003c\/li\u003e\n              \u003cli\u003eRated 5A @ 125VAC \/ 2A @ 250VAC\u003c\/li\u003e\n              \u003cli\u003e6mm panel cutout (M6 × 0.75 thread)\u003c\/li\u003e\n              \u003cli\u003e3-pin solder lug terminals\u003c\/li\u003e\n              \u003cli\u003eCompact body — 32 × 13 × 11.75mm\u003c\/li\u003e\n              \u003cli\u003eRated for 10,000 switching cycles\u003c\/li\u003e\n              \u003cli\u003eSold individually\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eHow It Works\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePosition 1 (up)\u003c\/strong\u003e\n                \u003cp\u003eCommon (centre pin) connects to Circuit A (outer pin 1). Circuit B is open.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePosition 2 (centre)\u003c\/strong\u003e\n                \u003cp\u003eOFF — common is disconnected from both outer pins. Both circuits open.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePosition 3 (down)\u003c\/strong\u003e\n                \u003cp\u003eCommon (centre pin) connects to Circuit B (outer pin 3). Circuit A is open.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eTypical use\u003c\/strong\u003e\n                \u003cp\u003eSelect between two circuits, reverse a DC motor, or switch between two signal sources — all with a safe off state in the middle.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e For mains AC applications, installation must be carried out by a licensed electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eModel\u003c\/span\u003e\u003cstrong\u003eMTS-103\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSwitch Type\u003c\/span\u003e\u003cstrong\u003eSPDT (Single Pole Double Throw)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eFunction\u003c\/span\u003e\u003cstrong\u003eON – OFF – ON (latching, 3-position)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRated Current \/ Voltage\u003c\/span\u003e\u003cstrong\u003e5A @ 125VAC \/ 2A @ 250VAC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTerminals\u003c\/span\u003e\u003cstrong\u003e3-pin solder lug\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePanel Cutout\u003c\/span\u003e\u003cstrong\u003e6mm diameter (M6 × 0.75 thread)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBody Dimensions\u003c\/span\u003e\u003cstrong\u003e32 × 13 × 11.75mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Temperature\u003c\/span\u003e\u003cstrong\u003e−25°C to +85°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eElectrical Life\u003c\/span\u003e\u003cstrong\u003e10,000 cycles\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e For mains AC applications, installation must be carried out by a licensed electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- WIRING --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWiring — 3-Pin SPDT\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 1 (outer)\u003c\/span\u003e\u003cstrong\u003eCircuit A output — active when toggle is in position 1\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 2 (centre \/ common)\u003c\/span\u003e\u003cstrong\u003eCommon — connect your power or signal input here\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 3 (outer)\u003c\/span\u003e\u003cstrong\u003eCircuit B output — active when toggle is in position 3\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-wiring-box\"\u003e\n          The centre pin (common) connects to either outer pin depending on toggle position. Centre position = OFF (common disconnected from both). Use this to select between two circuits, switch direction of a DC motor, or control two independent loads from one switch.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e 3-pin solder lug terminals. For mains AC applications, installation must be carried out by a licensed electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- INCLUDED --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eMTS-103 Mini Toggle Switch\u003c\/strong\u003e\n            \u003cp\u003eSPDT ON-OFF-ON, 3-pin solder lug, ready to panel mount. Sold individually.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Sold individually. No additional hardware included — panel cutout is 6mm diameter.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRC models \u0026amp; hobby builds — forward\/off\/reverse switching\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eAutomotive \u0026amp; dash panel switching — accessories, lighting circuits\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eDIY electronics — selecting between two signal sources or circuits\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e3D printer \u0026amp; CNC machine modifications\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eInstrument \u0026amp; test equipment switching\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eGeneral ON-OFF-ON panel switching in maker \u0026amp; industrial builds\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e The centre OFF position makes this switch ideal for any application requiring a safe disconnected state between two circuits.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- FAQS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat's the difference between ON-OFF-ON and ON-ON?\u003c\/strong\u003e\n            \u003cp\u003eON-OFF-ON (this switch) has three positions — up (circuit A active), middle (both off), and down (circuit B active). ON-ON has only two positions with no centre-off. The MTS-103 is ON-OFF-ON, making it suitable for applications where you need a safe \"off\" state between the two positions.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eHow do I wire it to reverse a DC motor?\u003c\/strong\u003e\n            \u003cp\u003eConnect motor + to pin 1, motor − to pin 3, and battery + to pin 2. Flicking the toggle reverses polarity to the motor, changing direction. Add a relay if your motor draws more than 2A.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat size hole do I need to drill?\u003c\/strong\u003e\n            \u003cp\u003e6mm diameter. The switch uses an M6 × 0.75 thread with a locking nut to secure it to the panel.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e For mains AC applications, installation must be carried out by a licensed electrician in accordance with NZ wiring standards.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n    const target = tab.getAttribute('data-tab');\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) { item.classList.remove('is-active'); });\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) { panel.classList.remove('is-active'); });\n    tab.classList.add('is-active');\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42723838984288,"sku":"SW-MTS103-SPDT-3P","price":0.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/MTS-103-Product-Hero-Single.png?v=1779573474"},{"product_id":"6x6mm-tactile-push-button-switch-smt-4pin-6x6x4-3mm-pack-10","title":"6x6mm Tactile Push Button Switch SMT 4-Pin 6x6x4.3mm – Pack of 10","description":"\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600;700\u0026display=swap');\n  .nzn-desc .tagline{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7;color:#333;border-left:3px solid #e07e2c;padding-left:16px;margin-bottom:32px}\n  .nzn-desc .section-title{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e07e2c;margin-bottom:14px}\n  .nzn-desc .specs-table{width:100%;border-collapse:collapse;margin-bottom:32px;font-family:'DM Sans',sans-serif;font-size:14px}\n  .nzn-desc .specs-table tr{border-bottom:1px solid #ebebeb}\n  .nzn-desc .specs-table tr:last-child{border-bottom:none}\n  .nzn-desc .specs-table td{padding:10px 8px}\n  .nzn-desc .specs-table td:first-child{color:#888;width:42%;font-size:14px}\n  .nzn-desc .specs-table td:last-child{font-weight:600;color:#1a1a1a}\n  .nzn-desc .uses-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:32px}\n  .nzn-desc .use-item{background:#f7f7f7;border-left:3px solid #e07e2c;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:13.5px;line-height:1.5;color:#2a2a2a}\n  .nzn-desc .note{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#888;line-height:1.6}\n  .nzn-desc .note strong{color:#555}\n  .nzn-desc .setup-box{background:#f0f7ff;border-left:3px solid #4a90d9;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#2c4a6e;line-height:1.7;margin-bottom:32px;border-radius:0 4px 4px 0}\n  .nzn-desc .faq-item{margin-bottom:12px}\n  .nzn-desc .faq-q{font-family:'DM Sans',sans-serif;font-size:13.5px;font-weight:700;color:#1a1a1a;margin-bottom:3px}\n  .nzn-desc .faq-a{font-family:'DM Sans',sans-serif;font-size:13.5px;color:#555;line-height:1.5;padding-left:14px;border-left:2px solid #e07e2c}\n  .nzn-desc hr.divider{border:none;border-top:1px solid #ebebeb;margin:28px 0}\n\u003c\/style\u003e\n\u003cdiv class=\"nzn-desc\" style=\"max-width:1200px;margin:0 auto;\"\u003e\n  \u003cp class=\"tagline\"\u003eMomentary 4-pin tactile push button switches in a 6×6×4.3mm package. Normally open, fits standard 6×6mm PCB footprints, easy to hand-solder. A staple component for Arduino prototyping, custom control panels, and PCB builds. Pack of 10.\u003c\/p\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eSpecifications\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eOperation Mode\u003c\/td\u003e\n\u003ctd\u003eMomentary (normally open)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePin Count\u003c\/td\u003e\n\u003ctd\u003e4-pin (2 pairs of internally connected contacts)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eDimensions\u003c\/td\u003e\n\u003ctd\u003e6 × 6 × 4.3mm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eMounting Type\u003c\/td\u003e\n\u003ctd\u003eSMT \/ Through-hole compatible\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePack Quantity\u003c\/td\u003e\n\u003ctd\u003e10 switches per pack\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003ePin Configuration\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePins 1 \u0026amp; 2 (one side)\u003c\/td\u003e\n\u003ctd\u003eInternally connected — use either or both as one terminal\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePins 3 \u0026amp; 4 (other side)\u003c\/td\u003e\n\u003ctd\u003eInternally connected — use either or both as other terminal\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003cdiv class=\"setup-box\"\u003eThese are simple 2-terminal switches with 4 pins for PCB stability — pins 1 \u0026amp; 2 are the same node, and pins 3 \u0026amp; 4 are the same node. When pressed, pins 1\/2 connect to pins 3\/4. In a circuit: connect one side to your signal\/power and the other side to ground or your input pin.\u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWhat's Included\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003e10 ×\u003c\/td\u003e\n\u003ctd\u003e6×6×4.3mm tactile momentary push button switches\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Uses\u003c\/p\u003e\n  \u003cdiv class=\"uses-grid\"\u003e\n    \u003cdiv class=\"use-item\"\u003eArduino \u0026amp; Raspberry Pi input, reset \u0026amp; mode-select buttons\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eCustom PCB control panels \u0026amp; prototype builds\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eConsumer electronics repair \u0026amp; replacement buttons\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eKeyboard, remote control \u0026amp; handheld device builds\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eReset switches for ESP32, Arduino Nano \u0026amp; development boards\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eGeneral purpose momentary switching in DIY electronics\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Questions\u003c\/p\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eDo I need to use all 4 pins?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eNo — pins 1 \u0026amp; 2 are the same node, and pins 3 \u0026amp; 4 are the same node. You only need one wire on each side. The extra pins are for PCB mechanical stability, not extra circuits. For a breadboard, just use pins 1 and 3 (diagonally opposite).\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eDo I need a pull-up or pull-down resistor?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eYes — when used as a digital input on Arduino, connect one side to GND and the other to your input pin, then enable the internal pull-up in your code with \u003ccode\u003epinMode(PIN, INPUT_PULLUP)\u003c\/code\u003e. The pin reads HIGH when open, LOW when pressed.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"note\"\u003e\u003cstrong\u003ePlease note:\u003c\/strong\u003e Normally open (NO) — contact closes when pressed. Fits standard 6×6mm PCB footprints. Pack of 10.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42723874013280,"sku":"SW-TACT-6X6X43-SMT-4P-10PK","price":0.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/6mmx6mmx4.5mmpcb-fronton.png?v=1777242201"},{"product_id":"voltage-detection-module-voltage-sensor-for-arduino-electronic-building-blocks","title":"DC 0–25V Voltage Detection Module — Arduino \u0026 Microcontroller Sensor","description":"\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600;700\u0026display=swap');\n  .nzn-desc .tagline { font-family:'DM Sans',sans-serif; font-size:17px; line-height:1.7; color:#333; border-left:3px solid #e07e2c; padding-left:16px; margin-bottom:32px; }\n  .nzn-desc .section-title { font-family:'DM Sans',sans-serif; font-size:15px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:#e07e2c; margin-bottom:14px; }\n  .nzn-desc .specs-table { width:100%; border-collapse:collapse; margin-bottom:32px; font-family:'DM Sans',sans-serif; font-size:14px; }\n  .nzn-desc .specs-table tr { border-bottom:1px solid #ebebeb; }\n  .nzn-desc .specs-table tr:last-child { border-bottom:none; }\n  .nzn-desc .specs-table td { padding:10px 8px; }\n  .nzn-desc .specs-table td:first-child { color:#888; width:42%; }\n  .nzn-desc .specs-table td:last-child { font-weight:600; color:#1a1a1a; }\n  .nzn-desc .uses-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:32px; }\n  .nzn-desc .use-item { background:#f7f7f7; border-left:3px solid #e07e2c; padding:12px 14px; font-family:'DM Sans',sans-serif; font-size:13.5px; line-height:1.5; color:#2a2a2a; }\n  .nzn-desc .wire-row { display:flex; align-items:center; gap:12px; padding:9px 12px; background:#f7f7f7; border-radius:4px; margin-bottom:6px; font-family:'DM Sans',sans-serif; font-size:13.5px; }\n  .nzn-desc .wire-dot { width:12px; height:12px; border-radius:50%; flex-shrink:0; }\n  .nzn-desc .wire-label { font-weight:700; color:#1a1a1a; min-width:55px; }\n  .nzn-desc .faq-item { margin-bottom:12px; padding:12px 14px; background:#f7f7f7; border-radius:4px; font-family:'DM Sans',sans-serif; }\n  .nzn-desc .faq-q { font-weight:700; color:#1a1a1a; margin-bottom:5px; font-size:13.5px; }\n  .nzn-desc .faq-a { color:#555; font-size:13.5px; line-height:1.6; }\n  .nzn-desc .note { background:#fafafa; border:1px solid #e8e8e8; border-radius:4px; padding:14px 16px; font-family:'DM Sans',sans-serif; font-size:13px; color:#888; line-height:1.6; }\n  .nzn-desc .note strong { color:#555; }\n  .nzn-desc hr.divider { border:none; border-top:1px solid #ebebeb; margin:28px 0; }\n\u003c\/style\u003e\n\u003cdiv class=\"nzn-desc\" style=\"max-width:1200px;margin:0 auto;\"\u003e\n  \u003cp class=\"tagline\"\u003eCompact DC voltage detection module that safely measures 0–25V DC through a standard Arduino or microcontroller analog input. Uses a precision 30kΩ\/7.5kΩ resistive divider to scale voltage down 5:1 — letting you monitor battery packs, solar panels, and power supplies without risk to your board. Screw terminals for secure wiring.\u003c\/p\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eSpecifications\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBrand\u003c\/td\u003e\n\u003ctd\u003eMH-Electronic\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eInput Voltage Range\u003c\/td\u003e\n\u003ctd\u003eDC 0 – 25V\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eDetection Range\u003c\/td\u003e\n\u003ctd\u003e0.02445V – 25V\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eDivider Ratio\u003c\/td\u003e\n\u003ctd\u003e5:1 (30kΩ + 7.5kΩ)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eMax Input — 5V System\u003c\/td\u003e\n\u003ctd\u003e25V\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eMax Input — 3.3V System\u003c\/td\u003e\n\u003ctd\u003e16.5V\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eADC Resolution\u003c\/td\u003e\n\u003ctd\u003e10-bit (analog resolution 0.00489V)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePCB Size\u003c\/td\u003e\n\u003ctd\u003e25 × 13mm\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eMounting Hole\u003c\/td\u003e\n\u003ctd\u003e3.0mm\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eWiring Reference\u003c\/p\u003e\n  \u003cdiv class=\"wire-row\"\u003e\n\u003cspan class=\"wire-dot\" style=\"background:#c0392b;\"\u003e\u003c\/span\u003e\u003cspan class=\"wire-label\"\u003eVCC (screw)\u003c\/span\u003e\u003cspan\u003ePositive of the voltage source being measured\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"wire-row\"\u003e\n\u003cspan class=\"wire-dot\" style=\"background:#222;\"\u003e\u003c\/span\u003e\u003cspan class=\"wire-label\"\u003eGND (screw)\u003c\/span\u003e\u003cspan\u003eNegative \/ ground of the voltage source being measured\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"wire-row\"\u003e\n\u003cspan class=\"wire-dot\" style=\"background:#e67e22;\"\u003e\u003c\/span\u003e\u003cspan class=\"wire-label\"\u003eS (header)\u003c\/span\u003e\u003cspan\u003eSignal output → connect to any analog input pin (e.g. A0) on your MCU\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"wire-row\"\u003e\n\u003cspan class=\"wire-dot\" style=\"background:#e07e2c;\"\u003e\u003c\/span\u003e\u003cspan class=\"wire-label\"\u003e+ (header)\u003c\/span\u003e\u003cspan\u003eMCU power → connect to 5V or 3.3V on your microcontroller\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003cdiv class=\"wire-row\" style=\"margin-bottom:32px;\"\u003e\n\u003cspan class=\"wire-dot\" style=\"background:#555;\"\u003e\u003c\/span\u003e\u003cspan class=\"wire-label\"\u003e– (header)\u003c\/span\u003e\u003cspan\u003eMCU ground → connect to GND on your microcontroller\u003c\/span\u003e\n\u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eGetting Started\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eArduino IDE\u003c\/td\u003e\n\u003ctd\u003eNo library needed — use \u003ccode\u003eanalogRead(A0)\u003c\/code\u003e and apply the 5:1 scale factor in your sketch\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eFormula\u003c\/td\u003e\n\u003ctd\u003eVoltage = (analogRead \/ 1023.0) × Vref × 5.0 — where Vref is 5.0V or 3.3V depending on your board\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eESPHome\u003c\/td\u003e\n\u003ctd\u003eUse \u003ccode\u003eplatform: adc\u003c\/code\u003e with \u003ccode\u003efilters: multiply: 5.0\u003c\/code\u003e to scale the reading\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003e3.3V systems\u003c\/td\u003e\n\u003ctd\u003eChange max input to 16.5V — adjust your formula accordingly\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eCommon Uses\u003c\/p\u003e\n  \u003cdiv class=\"uses-grid\"\u003e\n    \u003cdiv class=\"use-item\"\u003eBattery voltage monitoring — LiPo, Li-ion, lead-acid \u0026amp; NiMH packs\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eSolar panel \u0026amp; renewable energy output measurement\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eUnder\/over-voltage fault detection in circuits\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eDC power supply testing \u0026amp; data logging\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eDIY voltmeter with OLED or LCD display\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eMotor \u0026amp; actuator voltage monitoring in robotics\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"section-title\"\u003eFrequently Asked Questions\u003c\/p\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eCan this measure AC voltage?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eNo — DC only. The resistive divider cannot safely or accurately measure AC. For AC measurement you need a dedicated AC voltage sensor module.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eCan I measure negative voltages?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eNo — the module is designed for positive DC voltages only. Applying a negative voltage to the input will damage the module and potentially your microcontroller.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eWhat's the difference between the screw terminals and the header pins?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eThe two screw terminals (VCC and GND) connect to the voltage source you're measuring. The three header pins (+, –, S) connect to your microcontroller — power, ground, and the analog signal output pin.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003chr class=\"divider\"\u003e\n  \u003cp class=\"note\"\u003e\u003cstrong\u003ePlease note:\u003c\/strong\u003e Do not exceed 25V input on 5V systems or 16.5V on 3.3V systems. Measures DC only. The \"+\" header pin connects to MCU power — not to the voltage source. No display or microcontroller included.\u003c\/p\u003e\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42724740661344,"sku":"MH-VD25-MOD","price":1.39,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/Front-Hero-Cover-1pc_3c5e123e-ba69-4aa0-bd0e-db540febfe21.png?v=1777318750"},{"product_id":"5-8-5-8mm-6-pin-dpdt-push-button-switch-self-locking-or-momentary-10-pack","title":"5.8mm DPDT Push Button Switch – Locking or Momentary (10 Pack)","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n    font-size: 13px;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003eWiring\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003e6-pin DPDT push button switch in a compact 5.8×5.8mm DIP footprint — mounts directly to PCB. Rated DC 12V \/ 50mA with a 100,000 cycle electrical life. Available in self-locking (latching) or momentary action. Pack of 10.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003e6-pin DPDT — switch two independent circuits simultaneously\u003c\/li\u003e\n              \u003cli\u003e5.8×5.8mm body — fits standard PCB layouts\u003c\/li\u003e\n              \u003cli\u003e2mm pin pitch — DIP through-hole mounting\u003c\/li\u003e\n              \u003cli\u003e100,000 cycle electrical life\u003c\/li\u003e\n              \u003cli\u003eRated DC 12V \/ 50mA\u003c\/li\u003e\n              \u003cli\u003eAvailable in latching or momentary action\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eVariant Guide\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e🔒\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSelf-Locking (Latching)\u003c\/strong\u003e\n                \u003cp\u003ePress ON — stays ON. Press again to release. Best for power switches and persistent on\/off controls.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e⚡\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eMomentary\u003c\/strong\u003e\n                \u003cp\u003eActive only while held. Releases when you let go. Best for trigger inputs, reset buttons, and signal sending.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e⚠\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eCurrent limit — 50mA max\u003c\/strong\u003e\n                \u003cp\u003eNot suitable for driving loads directly. Use a relay or MOSFET to switch higher current loads.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Rated DC 12V \/ 50mA — not suitable for mains voltage or high-current applications. Pack of 10.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBody Size\u003c\/span\u003e\u003cstrong\u003e5.8 × 5.8mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTotal Height\u003c\/span\u003e\u003cstrong\u003e~10.2mm (including button)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin Configuration\u003c\/span\u003e\u003cstrong\u003e6-pin DPDT, 2 rows of 3, 2mm pitch\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eMounting Type\u003c\/span\u003e\u003cstrong\u003eDIP through-hole PCB\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRated Voltage\u003c\/span\u003e\u003cstrong\u003eDC 12V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRated Current\u003c\/span\u003e\u003cstrong\u003e50mA\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Temperature\u003c\/span\u003e\u003cstrong\u003e−40°C to +70°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eElectrical Life\u003c\/span\u003e\u003cstrong\u003e100,000 operations\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAvailable Actions\u003c\/span\u003e\u003cstrong\u003eSelf-locking (latching) or Momentary\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePack Quantity\u003c\/span\u003e\u003cstrong\u003e10 switches\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Rated DC 12V \/ 50mA — not suitable for mains voltage or high-current applications.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- WIRING --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003ePin Configuration — 6-Pin DPDT\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePins 1 \u0026amp; 2\u003c\/span\u003e\u003cstrong\u003eCommon A (internally connected)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePins 3 \u0026amp; 4\u003c\/span\u003e\u003cstrong\u003eCommon B (internally connected)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 5\u003c\/span\u003e\u003cstrong\u003eNO Contact A — connects to Common A when pressed\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin 6\u003c\/span\u003e\u003cstrong\u003eNO Contact B — connects to Common B when pressed\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-started\" style=\"margin-top: 28px;\"\u003e\n          \u003ch3\u003eWiring Instructions\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eSimple on\/off (single pole)\u003c\/strong\u003e\n              \u003cp\u003eWire between pin 1 (or 2) and pin 5. Use one pole only — the second pole can be left unconnected or used for a second independent circuit.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eDual-circuit switching (DPDT)\u003c\/strong\u003e\n              \u003cp\u003eUse both poles simultaneously. Pins 1+2 share the same node; pins 3+4 share the same node. Connect each common to its respective circuit.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eDriving higher loads\u003c\/strong\u003e\n              \u003cp\u003eDo not exceed 50mA through the contacts. Use these switches to trigger the gate of a MOSFET or the coil of a relay to switch full load current.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003ePCB footprint\u003c\/strong\u003e\n              \u003cp\u003e2mm pin pitch, 2 rows of 3 pins. Fits standard DIP footprints. Confirm hole spacing against your PCB layout before soldering.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Rated DC 12V \/ 50mA — not suitable for mains voltage or high-current applications.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- INCLUDED --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e10×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003e5.8×5.8mm DPDT push button switches (selected action type)\u003c\/strong\u003e\n            \u003cp\u003eSupplied as loose components ready for PCB mounting. Select latching or momentary at time of purchase.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Action type (latching or momentary) is selected at time of purchase and cannot be changed after ordering.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eArduino and ESP32 power on\/off buttons on PCB builds\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eFlashlight and LED strip power switches (self-locking)\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eAudio amplifier input and channel switching (DPDT)\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eToy and appliance controls — fans, motors, kitchen ventilators\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eReset and trigger inputs on prototype PCBs (momentary)\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRemote control and handheld device button replacement\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e DPDT configuration allows simultaneous switching of two independent circuits — useful for audio input selection, polarity reversal, and dual-rail power switching.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- FAQs --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eNot sure whether to choose latching or momentary?\u003c\/strong\u003e\n            \u003cp\u003eIf you need it to stay on after you let go — choose self-locking (latching). If you only need it active while pressing — choose momentary. Most power switches use latching; most input buttons and reset triggers use momentary.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I switch more than 50mA through this?\u003c\/strong\u003e\n            \u003cp\u003eNo — the contacts are rated 50mA max at DC 12V. For higher loads, use this switch to control the gate of a MOSFET or the coil of a relay, which can then switch the full load current safely.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDo I need to use both poles?\u003c\/strong\u003e\n            \u003cp\u003eNo. For simple on\/off use, wire just one pole (pins 1 and 5, or pins 3 and 6). The second pole can be left unconnected or used independently for a second circuit.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat is the pin pitch?\u003c\/strong\u003e\n            \u003cp\u003e2mm pitch, arranged as 2 rows of 3 pins. Confirm your PCB footprint matches before ordering — this is a smaller pitch than standard 2.54mm DIP components.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Rated DC 12V \/ 50mA — not suitable for mains voltage or high-current applications. DPDT configuration. Pack of 10.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Locking","offer_id":42728690581600,"sku":"SW-DPDT-58-6P-LK-10PK","price":1.99,"currency_code":"NZD","in_stock":false},{"title":"Momentary","offer_id":42728690614368,"sku":"SW-DPDT-58-6P-MOM-10PK","price":1.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/5.8mmx5.8mm_dpdt_buttons.png?v=1780027722"},{"product_id":"sunon-4020-12v-3-pin-cooling-fan-kde1204pkv3-40-40-20mm-ultra-quiet-15-5dba","title":"Sunon 4020 12V 3-Pin Cooling Fan — KDE1204PKV3 (40×40×20mm, Ultra-Quiet 15.5dBA)","description":"\u003cstyle\u003e\n  @import url('https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:wght@400;500;600;700\u0026display=swap');\n  .nzn-desc .tagline{font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.7;color:#333;border-left:3px solid #e07e2c;padding-left:16px;margin-bottom:32px}\n  .nzn-desc .section-title{font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e07e2c;margin-bottom:14px}\n  .nzn-desc .specs-table{width:100%;border-collapse:collapse;margin-bottom:32px;font-family:'DM Sans',sans-serif;font-size:14px}\n  .nzn-desc .specs-table tr{border-bottom:1px solid #ebebeb}\n  .nzn-desc .specs-table tr:last-child{border-bottom:none}\n  .nzn-desc .specs-table td{padding:10px 8px}\n  .nzn-desc .specs-table td:first-child{color:#888;width:42%;font-size:14px}\n  .nzn-desc .specs-table td:last-child{font-weight:600;color:#1a1a1a}\n  .nzn-desc .uses-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:32px}\n  .nzn-desc .use-item{background:#f7f7f7;border-left:3px solid #e07e2c;padding:12px 14px;font-family:'DM Sans',sans-serif;font-size:13.5px;line-height:1.5;color:#2a2a2a}\n  .nzn-desc .note{background:#fafafa;border:1px solid #e8e8e8;border-radius:4px;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#888;line-height:1.6}\n  .nzn-desc .note strong{color:#555}\n  .nzn-desc .setup-box{background:#f0f7ff;border-left:3px solid #4a90d9;padding:14px 16px;font-family:'DM Sans',sans-serif;font-size:13px;color:#2c4a6e;line-height:1.7;margin-bottom:32px;border-radius:0 4px 4px 0}\n  .nzn-desc .faq-item{margin-bottom:12px}\n  .nzn-desc .faq-q{font-family:'DM Sans',sans-serif;font-size:13.5px;font-weight:700;color:#1a1a1a;margin-bottom:3px}\n  .nzn-desc .faq-a{font-family:'DM Sans',sans-serif;font-size:13.5px;color:#555;line-height:1.5;padding-left:14px;border-left:2px solid #e07e2c}\n  .nzn-desc hr.divider{border:none;border-top:1px solid #ebebeb;margin:28px 0}\n\u003c\/style\u003e\n\u003cdiv class=\"nzn-desc\" style=\"max-width:1200px;margin:0 auto;\"\u003e\n\n  \u003cp class=\"tagline\"\u003eGenuine Sunon 40×40×20mm 12V DC cooling fan with electromagnetic MagLev bearing. Rated at 15.5dBA — near-silent in operation. 8.9 CFM airflow at 3,000 RPM and rated for 100,000 hours of continuous use. A direct OEM replacement used in routers, NAS enclosures, 3D printers, and embedded systems worldwide.\u003c\/p\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"section-title\"\u003eSpecifications\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eModel\u003c\/td\u003e\n\u003ctd\u003eKDE1204PKV3 MS.AF.GN\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSize\u003c\/td\u003e\n\u003ctd\u003e40 × 40 × 20mm (4020)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eConnector\u003c\/td\u003e\n\u003ctd\u003e3-Pin (GND \/ 12V \/ Tach)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBearing Type\u003c\/td\u003e\n\u003ctd\u003eElectromagnetic (MagLev)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eRated Voltage\u003c\/td\u003e\n\u003ctd\u003e12V DC\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eWorking Voltage Range\u003c\/td\u003e\n\u003ctd\u003e4V – 13V\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003ePower\u003c\/td\u003e\n\u003ctd\u003e0.4W\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eSpeed\u003c\/td\u003e\n\u003ctd\u003e3,000 RPM\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eAirflow\u003c\/td\u003e\n\u003ctd\u003e8.9 CFM\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eNoise Level\u003c\/td\u003e\n\u003ctd\u003e15.5 dBA\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eRated Lifespan\u003c\/td\u003e\n\u003ctd\u003e100,000 hours\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBrand\u003c\/td\u003e\n\u003ctd\u003eGenuine Sunon\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"section-title\"\u003eWiring — 3-Pin Connector\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003eBlack wire\u003c\/td\u003e\n\u003ctd\u003eGND (negative \/ ground)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eRed wire\u003c\/td\u003e\n\u003ctd\u003e+12V (positive supply)\u003c\/td\u003e\n\u003c\/tr\u003e\n    \u003ctr\u003e\n\u003ctd\u003eYellow wire\u003c\/td\u003e\n\u003ctd\u003eTach signal (speed feedback — optional, can be left unconnected)\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n  \u003cdiv class=\"setup-box\"\u003eThis is a 3-pin fan — it does \u003cstrong\u003enot\u003c\/strong\u003e support PWM speed control. Speed is fixed at 3,000 RPM when powered at 12V. The tach wire provides a pulse signal for fan speed monitoring only; it does not need to be connected for the fan to operate. Running at lower voltages (down to ~4V) will reduce speed and noise at the cost of airflow.\u003c\/div\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"section-title\"\u003eWhat's Included\u003c\/p\u003e\n  \u003ctable class=\"specs-table\"\u003e\n    \u003ctr\u003e\n\u003ctd\u003e1 ×\u003c\/td\u003e\n\u003ctd\u003eSunon KDE1204PKV3 40×40×20mm fan with pre-attached 3-pin connector\u003c\/td\u003e\n\u003c\/tr\u003e\n  \u003c\/table\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"section-title\"\u003eCommon Uses\u003c\/p\u003e\n  \u003cdiv class=\"uses-grid\"\u003e\n    \u003cdiv class=\"use-item\"\u003eRouter \u0026amp; NAS fan replacement — Ubiquiti, MikroTik, Synology \u0026amp; others\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003e3D printer hotend \u0026amp; electronics bay cooling\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eMini-PC, SBC \u0026amp; embedded system enclosure cooling\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eNetwork switches \u0026amp; rack equipment ventilation\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eIndustrial \u0026amp; medical equipment using 40mm 12V fans\u003c\/div\u003e\n    \u003cdiv class=\"use-item\"\u003eAny device requiring a 40×40×20mm 12V 3-pin replacement\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"section-title\"\u003eCommon Questions\u003c\/p\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eCan I control the speed with PWM?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eNo — this is a 3-pin fan (GND, 12V, Tach) with no PWM wire. Speed is fixed at 3,000 RPM at 12V. To reduce speed, lower the supply voltage, but note airflow and cooling performance will decrease proportionally.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eWill this fit my device — how do I check?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eMeasure your existing fan: the body should be 40mm × 40mm × 20mm deep, with mounting holes on a 32mm square pattern. Confirm your device uses a 3-pin 12V header. The connector style is standard JST-style 3-pin.\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"faq-item\"\u003e\n    \u003cdiv class=\"faq-q\"\u003eIs this a genuine Sunon fan or a clone?\u003c\/div\u003e\n    \u003cdiv class=\"faq-a\"\u003eGenuine Sunon — the model number KDE1204PKV3 MS.AF.GN is a real Sunon part. Sunon is a Taiwanese manufacturer used by OEMs worldwide. The MagLev bearing provides significantly longer lifespan than ball or sleeve bearings.\u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003chr class=\"divider\"\u003e\n\n  \u003cp class=\"note\"\u003e\u003cstrong\u003ePlease note:\u003c\/strong\u003e 3-pin connector (GND \/ 12V \/ Tach) — no PWM speed control. Verify your device uses a 3-pin header before ordering. Genuine Sunon — not a generic clone.\u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"Sunon","offers":[{"title":"Default Title","offer_id":42735877587040,"sku":"SUNON-4020-KDE1204PKV3","price":15.65,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/Sunon_Main_Fan_Angled_4020.png?v=1777800767"},{"product_id":"ds18b20-waterproof-temperature-sensor-probe-1m","title":"DS18B20 Waterproof Temperature Probe - 1m","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n    margin-bottom: 14px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"getting-started\"\u003eGetting Started\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe DS18B20 is a waterproof digital temperature probe with a 1 metre cable and bare wire ends. It provides accurate temperature readings using the Dallas 1-Wire protocol and works with Arduino, ESP32, Raspberry Pi, ESPHome, and other microcontroller platforms.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eWaterproof stainless steel probe design\u003c\/li\u003e\n              \u003cli\u003e1 metre cable with bare wire ends\u003c\/li\u003e\n              \u003cli\u003eDigital 1-Wire communication\u003c\/li\u003e\n              \u003cli\u003eCompatible with 3.3V and 5V systems\u003c\/li\u003e\n              \u003cli\u003eIdeal for liquid, outdoor, and temperature monitoring projects\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Start\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect VCC\u003c\/strong\u003e\n                \u003cp\u003eConnect the red wire to 3.3V or 5V.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect DATA\u003c\/strong\u003e\n                \u003cp\u003eConnect the yellow wire to any digital GPIO pin.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect GND\u003c\/strong\u003e\n                \u003cp\u003eConnect the black wire to GND.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eAdd pull-up resistor\u003c\/strong\u003e\n                \u003cp\u003eUse a 4.7kΩ resistor between VCC and DATA for reliable communication.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e A 4.7kΩ pull-up resistor is required between VCC and DATA for normal operation.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSensor\u003c\/span\u003e\u003cstrong\u003eDS18B20\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProtocol\u003c\/span\u003e\u003cstrong\u003eDallas 1-Wire\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSupply Voltage\u003c\/span\u003e\u003cstrong\u003e3.0V – 5.5V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Range\u003c\/span\u003e\u003cstrong\u003e−50°C to +125°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAccuracy\u003c\/span\u003e\u003cstrong\u003e±0.5°C (−10°C to +85°C)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eResolution\u003c\/span\u003e\u003cstrong\u003e9–12 bit adjustable\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCable Length\u003c\/span\u003e\u003cstrong\u003e1 metre\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWire End\u003c\/span\u003e\u003cstrong\u003eBare \/ unterminated\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProbe Housing\u003c\/span\u003e\u003cstrong\u003eStainless steel\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProbe Size\u003c\/span\u003e\u003cstrong\u003eApprox. 6mm × 50mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWaterproofing\u003c\/span\u003e\u003cstrong\u003eFully sealed\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCommunication\u003c\/span\u003e\u003cstrong\u003eDigital 1-Wire bus\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Bare wire ends require soldering, screw terminals, or another suitable connector method.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"getting-started\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-started\"\u003e\n          \u003ch3\u003eGetting Started\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire the sensor\u003c\/strong\u003e\n              \u003cp\u003eRed → VCC, Yellow → DATA, Black → GND.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eAdd pull-up resistor\u003c\/strong\u003e\n              \u003cp\u003eConnect a 4.7kΩ resistor between VCC and DATA.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eInstall Arduino libraries\u003c\/strong\u003e\n              \u003cp\u003eInstall OneWire and DallasTemperature from the Arduino Library Manager.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eUpload example code\u003c\/strong\u003e\n              \u003cp\u003eUse a DS18B20 example sketch to verify communication and temperature readings.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003eTypical wiring:\u003c\/strong\u003e Red → 5V, Yellow → D2, Black → GND, with a 4.7kΩ resistor between D2 and 5V.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eDS18B20 waterproof temperature probe\u003c\/strong\u003e\n            \u003cp\u003e1 metre cable with stainless steel waterproof probe and bare wire ends.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e 4.7kΩ pull-up resistor is required but not included.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eAquarium and fish tank temperature monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003ePool and spa temperature sensing\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eHydroponics and soil temperature measurement\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eFermentation and brewing projects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eESPHome and Home Assistant sensor nodes\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eIndustrial pipe and fluid temperature monitoring\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e The stainless steel probe is suitable for immersion applications and outdoor environments.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I connect multiple DS18B20 sensors together?\u003c\/strong\u003e\n            \u003cp\u003eYes. Multiple DS18B20 sensors can share one data line because each sensor has a unique 64-bit address.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhy does my sensor read 85°C or −127°C?\u003c\/strong\u003e\n            \u003cp\u003eThis usually means the pull-up resistor is missing or the wiring is incorrect. Make sure a 4.7kΩ resistor is connected between VCC and DATA.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eIs the probe fully waterproof?\u003c\/strong\u003e\n            \u003cp\u003eThe stainless steel probe and cable joint are waterproof and suitable for immersion. The bare wire end should still be protected from moisture.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDoes it work with ESPHome and Home Assistant?\u003c\/strong\u003e\n            \u003cp\u003eYes, the DS18B20 is fully supported in ESPHome using the built-in Dallas temperature component.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Compatible with Arduino, ESP32, Raspberry Pi, STM32, ESPHome, and other 1-Wire capable platforms.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default","offer_id":42738657853536,"sku":"NZE-DS18B20-1M","price":3.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/DS18B20_1m_Hero_Main.png?v=1777968957"},{"product_id":"ds18b20-waterproof-temperature-sensor-probe-3m","title":"DS18B20 Waterproof Temperature Probe - 3m","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n    margin-bottom: 14px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  .nzn-desc .wire-dot {\n    display: inline-block;\n    width: 10px;\n    height: 10px;\n    border-radius: 50%;\n    margin-right: 8px;\n    vertical-align: middle;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"getting-started\"\u003eGetting Started\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe DS18B20 is a waterproof digital temperature probe with a 3 metre cable and bare wire ends. It uses the Dallas 1-Wire protocol for accurate temperature readings over a single data line, making it ideal for Arduino, ESP32, Raspberry Pi, Home Assistant, and outdoor sensing projects.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eWaterproof stainless steel temperature probe\u003c\/li\u003e\n              \u003cli\u003e3 metre cable for longer sensor placement\u003c\/li\u003e\n              \u003cli\u003eDigital 1-Wire output using a single data pin\u003c\/li\u003e\n              \u003cli\u003eWorks with 3.3V and 5V microcontrollers\u003c\/li\u003e\n              \u003cli\u003eGreat for liquid, outdoor, soil, freezer, and brewing projects\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Start\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect power\u003c\/strong\u003e\n                \u003cp\u003eConnect red to 3.3V or 5V, and black to GND.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect data\u003c\/strong\u003e\n                \u003cp\u003eConnect yellow to any digital I\/O pin on your microcontroller.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eAdd pull-up resistor\u003c\/strong\u003e\n                \u003cp\u003eUse a 4.7kΩ resistor between VCC and DATA for reliable 1-Wire operation.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eInstall library\u003c\/strong\u003e\n                \u003cp\u003eFor Arduino, install the OneWire and DallasTemperature libraries.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e A 4.7kΩ pull-up resistor is required between VCC and DATA. Resistor is not included.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSensor Chip\u003c\/span\u003e\u003cstrong\u003eDS18B20\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProtocol\u003c\/span\u003e\u003cstrong\u003eDallas \/ Maxim 1-Wire\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSupply Voltage\u003c\/span\u003e\u003cstrong\u003e3.0V – 5.5V DC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Range\u003c\/span\u003e\u003cstrong\u003e-50°C to +125°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAccuracy\u003c\/span\u003e\u003cstrong\u003e±0.5°C from -10°C to +85°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eResolution\u003c\/span\u003e\u003cstrong\u003e9–12 bit adjustable\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOutput\u003c\/span\u003e\u003cstrong\u003eDigital 1-Wire\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCable Length\u003c\/span\u003e\u003cstrong\u003e3 metres\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWire End\u003c\/span\u003e\u003cstrong\u003eBare \/ unterminated\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProbe Housing\u003c\/span\u003e\u003cstrong\u003eStainless steel\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eProbe Size\u003c\/span\u003e\u003cstrong\u003eApprox. 6mm × 50mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWaterproofing\u003c\/span\u003e\u003cstrong\u003eFully sealed, suitable for immersion\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWires\u003c\/span\u003e\u003cstrong\u003eRed VCC, Yellow DATA, Black GND\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e This probe has bare wire ends, so soldering, screw terminals, or another suitable connector method is required.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"getting-started\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-started\"\u003e\n          \u003ch3\u003eGetting Started\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire VCC\u003c\/strong\u003e\n              \u003cp\u003e\u003cspan class=\"wire-dot\" style=\"background:#c0392b;\"\u003e\u003c\/span\u003eRed wire → 3.3V or 5V.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire DATA\u003c\/strong\u003e\n              \u003cp\u003e\u003cspan class=\"wire-dot\" style=\"background:#f1c40f;border:1px solid #ccc;\"\u003e\u003c\/span\u003eYellow wire → any digital I\/O pin.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire GND\u003c\/strong\u003e\n              \u003cp\u003e\u003cspan class=\"wire-dot\" style=\"background:#222;\"\u003e\u003c\/span\u003eBlack wire → GND.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eAdd 4.7kΩ pull-up resistor\u003c\/strong\u003e\n              \u003cp\u003eConnect one 4.7kΩ resistor between VCC and DATA.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e5\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eInstall libraries\u003c\/strong\u003e\n              \u003cp\u003eFor Arduino IDE, install OneWire by Paul Stoffregen and DallasTemperature by Miles Burton.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003eWiring:\u003c\/strong\u003e Red → VCC, Yellow → DATA, Black → GND. One 4.7kΩ pull-up resistor is required between VCC and DATA.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eDS18B20 waterproof temperature probe\u003c\/strong\u003e\n            \u003cp\u003e3 metre cable with stainless steel probe housing and bare wire ends.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e 4.7kΩ pull-up resistor is not included.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003ePond, tank, and aquaponics temperature monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eGreenhouse, garden bed, and soil temperature sensing\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eChest freezer and cold storage monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eHome brewing and fermentation temperature tracking\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eUnderfloor heating and HVAC temperature sensing\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eArduino, Raspberry Pi, ESP32, and Home Assistant projects\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e The 3m cable makes this probe useful when the sensor needs to be placed away from the controller.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWill the signal degrade over 3 metres?\u003c\/strong\u003e\n            \u003cp\u003eNo, the DS18B20 uses a digital 1-Wire signal. For reliable operation, use the standard 4.7kΩ pull-up resistor between VCC and DATA.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I connect multiple sensors to one data pin?\u003c\/strong\u003e\n            \u003cp\u003eYes, multiple DS18B20 sensors can share one data line. Each sensor has a unique address. Use one 4.7kΩ pull-up resistor on the data line.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eIs the probe waterproof?\u003c\/strong\u003e\n            \u003cp\u003eYes, the stainless steel probe is sealed and suitable for immersion. The bare wire end and controller connection should be kept protected from moisture.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eIs the 4.7kΩ resistor included?\u003c\/strong\u003e\n            \u003cp\u003eNo, the resistor is not included. A 4.7kΩ pull-up resistor is required for normal 1-Wire operation.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e The probe end is waterproof, but the bare wire\/controller end still needs proper protection in wet environments.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default","offer_id":42738660311136,"sku":"NZE-DS18B20-3M","price":5.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/DS18B20_3m_Hero.png?v=1777968755"},{"product_id":"arduino-nano-v3-0-supermini-atmega328p-ch340-type-c","title":"Nano SuperMini – ATmega328P Dev Board, USB-C, Compatible with Arduino","description":"\u003c!-- NZN Electronics — Nano SuperMini ATmega328P USB-C — Template v5 --\u003e\n\u003cstyle\u003e\n  .nznd{width:100%;max-width:1400px;margin:0 auto;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#101114}\n  .nznd,.nznd *{box-sizing:border-box}\n  .nznd__tabs{width:100%;display:flex;gap:0;border-bottom:2px solid #e7e7e7;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}\n  .nznd__tabs::-webkit-scrollbar{display:none}\n  .nznd__tab{flex:0 0 auto;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:13px 18px;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13.5px;font-weight:700;white-space:nowrap;color:#60646c;cursor:pointer;transition:color .16s,border-color .16s}\n  .nznd__tab:hover{color:#ff7a2f}\n  .nznd__tab.is-active{color:#ff7a2f;border-bottom-color:#ff7a2f}\n  .nznd__card{width:100%;background:#fff;border:1px solid #e7e7e7;border-top:none;border-radius:0 0 16px 16px;padding:36px 32px;box-shadow:0 8px 24px rgba(0,0,0,.04);min-height:480px}\n  .nznd__panel{display:none}\n  .nznd__panel.is-active{display:block;animation:nzndIn .22s cubic-bezier(.22,.68,0,1.2) both}\n  @keyframes nzndIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}\n  .nznd__panel h2,.nznd__panel h3,.nznd__panel p,.nznd__panel li,.nznd__panel dt,.nznd__panel dd,.nznd__panel strong,.nznd__panel span{text-align:left}\n  .nznd__stat span{text-align:center}\n  .nznd__strip{border-left:3px solid #ff7a2f;background:#fff5ef;border-radius:0 10px 10px 0;padding:18px 20px;margin-bottom:24px}\n  .nznd__strip h2{font-size:18px;font-weight:800;color:#101114;margin:0 0 7px;line-height:1.25;text-align:left}\n  .nznd__strip p{font-size:14px;line-height:1.65;color:#60646c;margin:0;text-align:left}\n  .nznd__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}\n  .nznd__stat{background:#f9fafb;border:1px solid #e7e7e7;border-top:3px solid transparent;border-radius:10px;padding:14px 12px;text-align:center;transition:border-top-color .18s,box-shadow .18s}\n  .nznd__stat:hover{border-top-color:#ff7a2f;box-shadow:0 4px 12px rgba(255,122,47,.1)}\n  .nznd__stat-val{display:block;font-size:19px;font-weight:800;color:#101114;letter-spacing:-.02em;white-space:nowrap;margin-bottom:4px;text-align:center}\n  .nznd__stat-lbl{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#60646c;text-align:center}\n  .nznd__pills{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 22px}\n  .nznd__pill{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e7e7e7;border-radius:999px;padding:6px 13px;font-size:13px;font-weight:500;color:#101114;box-shadow:0 1px 3px rgba(0,0,0,.05)}\n  .nznd__dot{width:7px;height:7px;border-radius:50%;background:#ff7a2f;flex-shrink:0;display:inline-block}\n  .nznd__dot--blue{background:#4a9af7}\n  .nznd__callout{display:flex;align-items:flex-start;gap:12px;border-radius:10px;padding:15px 18px;margin-bottom:22px}\n  .nznd__callout--orange{background:#fff5ef;border:1px solid rgba(255,122,47,.3)}\n  .nznd__callout--blue{background:#eef5ff;border:1px solid rgba(74,154,247,.3)}\n  .nznd__callout svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}\n  .nznd__callout strong{display:block;font-size:13px;font-weight:700;color:#101114;margin-bottom:4px;text-align:left}\n  .nznd__callout p{font-size:13px;line-height:1.6;color:#60646c;margin:0;text-align:left}\n  .nznd__eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ff7a2f;margin:0 0 16px;text-align:left}\n  .nznd__body{font-size:14.5px;line-height:1.7;color:#60646c;margin:0 0 22px;text-align:left}\n  .nznd__specs{border:1px solid #e7e7e7;border-radius:10px;overflow:hidden;margin-bottom:22px}\n  .nznd__spec-row{display:grid;grid-template-columns:minmax(180px,.85fr) 1.4fr;border-bottom:1px solid #e7e7e7}\n  .nznd__spec-row:last-child{border-bottom:none}\n  .nznd__spec-row:nth-child(even){background:#fafafa}\n  .nznd__spec-row dt{padding:12px 15px;font-size:13.5px;font-weight:500;color:#60646c;border-right:1px solid #e7e7e7;text-align:left}\n  .nznd__spec-row dd{padding:12px 15px;font-size:13.5px;font-weight:700;color:#101114;text-align:left}\n  .nznd__steps{list-style:none;padding:0;margin:0;display:grid;gap:9px}\n  .nznd__step{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;background:#f9fafb;border:1px solid #e7e7e7;border-radius:10px;padding:13px}\n  .nznd__step-n{width:34px;height:34px;border-radius:8px;background:#fff5ef;border:1px solid rgba(255,122,47,.3);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#ff7a2f;flex-shrink:0}\n  .nznd__step strong{display:block;font-size:13.5px;font-weight:700;color:#101114;margin-bottom:3px;text-align:left}\n  .nznd__step p{font-size:12.5px;line-height:1.55;color:#60646c;margin:0;text-align:left}\n  .nznd__step code{font-size:12px;font-family:monospace;background:#fff;border:1px solid #e7e7e7;border-radius:4px;padding:1px 5px;color:#101114}\n  .nznd__uses{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:22px}\n  .nznd__use{background:#f9fafb;border:1px solid #e7e7e7;border-left:3px solid #ff7a2f;border-radius:0 9px 9px 0;padding:14px;transition:background .15s,box-shadow .15s}\n  .nznd__use:hover{background:#fff5ef;box-shadow:0 2px 8px rgba(255,122,47,.1)}\n  .nznd__use strong{display:block;font-size:13.5px;font-weight:700;color:#101114;margin-bottom:4px;text-align:left}\n  .nznd__use p{font-size:12.5px;line-height:1.5;color:#60646c;margin:0;text-align:left}\n  .nznd__faq{display:grid;gap:8px}\n  .nznd__faq-item{border:1px solid #e7e7e7;border-radius:10px;overflow:hidden;background:#fff}\n  .nznd__faq-q{width:100%;background:#f9fafb;border:none;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13.5px;font-weight:700;color:#101114;cursor:pointer;text-align:left;transition:background .15s,color .15s}\n  .nznd__faq-q:hover{background:#fff5ef}\n  .nznd__faq-item.is-open .nznd__faq-q{background:#fff5ef;color:#ff7a2f}\n  .nznd__faq-icon{width:20px;height:20px;flex-shrink:0;border-radius:50%;background:#e7e7e7;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .25s cubic-bezier(.34,1.56,.64,1)}\n  .nznd__faq-q:hover .nznd__faq-icon{background:#ffe0cc}\n  .nznd__faq-item.is-open .nznd__faq-icon{background:#ff7a2f;transform:rotate(45deg)}\n  .nznd__faq-icon svg{width:10px;height:10px;stroke:#60646c}\n  .nznd__faq-item.is-open .nznd__faq-icon svg{stroke:#fff}\n  .nznd__faq-a{display:block;max-height:0;overflow:hidden;padding:0 17px;font-size:13.5px;line-height:1.65;color:#60646c;border-top:1px solid transparent;text-align:left;transition:max-height .32s cubic-bezier(.4,0,.2,1),padding .24s ease,border-color .24s ease}\n  .nznd__faq-item.is-open .nznd__faq-a{max-height:300px;padding:14px 17px;border-top-color:#e7e7e7}\n  .nznd__pinout-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-bottom:22px}\n  .nznd__pinout-card{background:#f9fafb;border:1px solid #e7e7e7;border-radius:10px;padding:16px}\n  .nznd__pinout-card h3{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#ff7a2f;margin:0 0 10px}\n  .nznd__pinout-card ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}\n  .nznd__pinout-card li{font-size:12.5px;color:#60646c;display:flex;gap:8px}\n  .nznd__pinout-card li strong{color:#101114;min-width:80px;flex-shrink:0}\n  @media(max-width:750px){.nznd__card{padding:22px 16px;min-height:0}.nznd__stats{grid-template-columns:repeat(2,1fr)}.nznd__uses{grid-template-columns:1fr 1fr}.nznd__pinout-grid{grid-template-columns:1fr}.nznd__spec-row{grid-template-columns:1fr}.nznd__spec-row dt{border-right:none;border-bottom:1px solid #e7e7e7;padding-bottom:5px}.nznd__spec-row dd{padding-top:5px}.nznd__tab{padding:11px 12px;font-size:12.5px}}\n  @media(max-width:480px){.nznd__uses{grid-template-columns:1fr}.nznd__tab{padding:10px 9px;font-size:11.5px}}\n  @media(prefers-reduced-motion:reduce){.nznd__panel{animation:none!important}.nznd__faq-a{transition:none!important}.nznd__faq-icon{transition:background .15s!important}.nznd *{transition-duration:.01ms!important}}\n\u003c\/style\u003e\n\n\u003carticle class=\"nznd\" itemscope itemtype=\"https:\/\/schema.org\/Product\"\u003e\n  \u003cmeta itemprop=\"name\" content=\"Nano SuperMini ATmega328P Dev Board USB-C, Compatible with Arduino\"\u003e\n  \u003cmeta itemprop=\"sku\" content=\"MCU-NANO-V3-328P\"\u003e\n  \u003cmeta itemprop=\"brand\" content=\"NZN Electronics\"\u003e\n\n  \u003cnav class=\"nznd__tabs\" role=\"tablist\" aria-label=\"Product sections\"\u003e\n    \u003cbutton class=\"nznd__tab is-active\" type=\"button\" data-tab=\"overview\" role=\"tab\" aria-selected=\"true\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"specs\" role=\"tab\" aria-selected=\"false\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"pinout\" role=\"tab\" aria-selected=\"false\"\u003ePinout Guide\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"uses\" role=\"tab\" aria-selected=\"false\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"faq\" role=\"tab\" aria-selected=\"false\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/nav\u003e\n\n  \u003cdiv class=\"nznd__card\"\u003e\n\n    \u003csection class=\"nznd__panel is-active\" data-panel=\"overview\" role=\"tabpanel\"\u003e\n      \u003cdiv class=\"nznd__strip\"\u003e\n        \u003ch2 itemprop=\"name\"\u003eNano SuperMini — ATmega328P Development Board, USB-C, Ultra-Compact\u003c\/h2\u003e\n        \u003cp itemprop=\"description\"\u003eEverything the Nano V3 offers in a drastically smaller 21.72 × 26.16 mm footprint. The SuperMini uses the same ATmega328P at 16 MHz with 14 digital I\/O pins, 6 analog inputs, and hardware UART\/SPI\/I²C — just squeezed into a board small enough for wearables, embedded enclosures, and any build where a standard Nano is too big. USB-C connector, CH340G USB-to-serial chip, and headers supplied unsoldered for flexible orientation.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__stats\" role=\"list\" aria-label=\"Key specifications\"\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e21×26\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eBoard Size (mm)\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e32 KB\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eFlash Memory\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e16 MHz\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eClock Speed\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e6\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eAnalog Inputs\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cul class=\"nznd__pills\" aria-label=\"Key features\"\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003eATmega328P @ 16 MHz\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e14 Digital I\/O (6 PWM)\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e6 Analog Inputs (A0–A5)\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e21.72 × 26.16 mm Body\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003eUnsoldered Headers Included\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eCH340G USB-to-Serial\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eUSB Type-C\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eArduino IDE Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e2.54 mm Breadboard Pitch\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e5V Logic\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--orange\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#ff7a2f\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eHeaders unsoldered — and USB-C PD compatibility note\u003c\/strong\u003e\n          \u003cp\u003eSolder headers before breadboard use. Some USB-C PD chargers and smart USB-C ports may not correctly supply power to this board. If it won't power on, use a USB-A to Type-C cable or a standard fixed 5V USB source.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eSmaller than a Nano, same processor\u003c\/strong\u003e\n          \u003cp\u003eThe SuperMini is roughly half the size of a standard Nano V3 while running the same ATmega328P at 16 MHz. Note that A6 and A7 from the standard Nano are not broken out on the SuperMini — it exposes A0–A5 only.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"specs\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eElectrical \u0026amp; Physical Specifications\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eFull specifications for the Nano SuperMini ATmega328P USB-C development board. All values at 5V supply unless stated.\u003c\/p\u003e\n      \u003cdl class=\"nznd__specs\" itemprop=\"additionalProperty\"\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eMicrocontroller\u003c\/dt\u003e\n\u003cdd\u003eATmega328P (8-bit AVR)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUSB Interface Chip\u003c\/dt\u003e\n\u003cdd\u003eCH340G USB-to-Serial\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUSB Connector\u003c\/dt\u003e\n\u003cdd\u003eType-C\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eHeader State\u003c\/dt\u003e\n\u003cdd\u003eUnsoldered — headers included loose\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eOperating Voltage\u003c\/dt\u003e\n\u003cdd\u003e5V DC (via USB)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eExternal Power Input\u003c\/dt\u003e\n\u003cdd\u003e6–12V via VIN pin\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDigital I\/O Pins\u003c\/dt\u003e\n\u003cdd\u003e14 (6 support PWM output)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eAnalog Input Pins\u003c\/dt\u003e\n\u003cdd\u003e6 (A0–A5, 10-bit ADC)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDC Current per I\/O Pin\u003c\/dt\u003e\n\u003cdd\u003e40 mA max\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eFlash Memory\u003c\/dt\u003e\n\u003cdd\u003e32 KB (2 KB used by bootloader)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eSRAM\u003c\/dt\u003e\n\u003cdd\u003e2 KB\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eEEPROM\u003c\/dt\u003e\n\u003cdd\u003e1 KB\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eClock Speed\u003c\/dt\u003e\n\u003cdd\u003e16 MHz crystal oscillator\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eCommunication Interfaces\u003c\/dt\u003e\n\u003cdd\u003eUART, SPI, I²C\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eBoard Dimensions\u003c\/dt\u003e\n\u003cdd\u003e21.72 × 26.16 mm\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003ePin Pitch\u003c\/dt\u003e\n\u003cdd\u003e2.54 mm (standard breadboard)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eIDE Compatibility\u003c\/dt\u003e\n\u003cdd\u003eArduino IDE — select \"Arduino Nano\", ATmega328P\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eBuilt-in LED\u003c\/dt\u003e\n\u003cdd\u003eD13 (user-programmable)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eReset Button\u003c\/dt\u003e\n\u003cdd\u003eYes\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eNote\u003c\/dt\u003e\n\u003cdd\u003eA6 and A7 not exposed (vs standard Nano)\u003c\/dd\u003e\n\u003c\/div\u003e\n      \u003c\/dl\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"pinout\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003ePinout \u0026amp; Getting Started\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe SuperMini uses 2.54 mm pitch headers compatible with standard breadboards. Pin function is the same as a Nano V3 except A6\/A7 are not present.\u003c\/p\u003e\n      \u003cdiv class=\"nznd__pinout-grid\"\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eDigital I\/O (D0–D13)\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD0 \/ D1\u003c\/strong\u003e Hardware UART RX\/TX\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD2 \/ D3\u003c\/strong\u003e External interrupts INT0\/INT1\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD3,5,6,9,10,11\u003c\/strong\u003e PWM outputs (6 pins)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD10–D13\u003c\/strong\u003e SPI (SS\/MOSI\/MISO\/SCK)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD13\u003c\/strong\u003e Built-in LED (LED_BUILTIN)\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eAnalog Inputs (A0–A5)\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eA0–A5\u003c\/strong\u003e 10-bit ADC inputs (0–5V)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eA4 \/ A5\u003c\/strong\u003e I²C SDA\/SCL\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eNote\u003c\/strong\u003e A6\/A7 not present on SuperMini\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eAREF\u003c\/strong\u003e External voltage reference\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003ePower Pins\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eVIN\u003c\/strong\u003e External supply (6–12V)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003e5V\u003c\/strong\u003e Regulated 5V out (USB)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003e3.3V\u003c\/strong\u003e 3.3V regulated out\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eGND\u003c\/strong\u003e Ground\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eRESET\u003c\/strong\u003e Active-low reset\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eCommunication\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eSerial\u003c\/strong\u003e D0\/D1 — USB via CH340G\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eI²C\u003c\/strong\u003e A4 SDA \/ A5 SCL\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eSPI\u003c\/strong\u003e D10–D13\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003col class=\"nznd__steps\" aria-label=\"Getting started steps\"\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e1\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSolder the headers\u003c\/strong\u003e\u003cp\u003eSolder the included pin headers before breadboard use. Right-angle or female headers are also compatible for custom builds.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e2\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eInstall CH340 driver (Windows only)\u003c\/strong\u003e\u003cp\u003emacOS and Linux detect the board automatically. Windows 10\/11 users may need to install the CH340 driver once from WCH.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e3\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eConnect via USB Type-C\u003c\/strong\u003e\u003cp\u003eUse a data-capable USB-C cable from a standard 5V USB source. Some USB-C PD chargers may not supply power correctly — use USB-A to Type-C if you encounter issues.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e4\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSelect board in Arduino IDE\u003c\/strong\u003e\u003cp\u003eGo to \u003ccode\u003eTools \u0026gt; Board \u0026gt; Arduino AVR Boards \u0026gt; Arduino Nano\u003c\/code\u003e, then set \u003ccode\u003eProcessor: ATmega328P\u003c\/code\u003e. Try Old Bootloader if upload fails.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e5\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eUpload Blink to verify\u003c\/strong\u003e\u003cp\u003eOpen \u003ccode\u003eFile \u0026gt; Examples \u0026gt; 01.Basics \u0026gt; Blink\u003c\/code\u003e and upload. The D13 LED should blink once per second.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n      \u003c\/ol\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"uses\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eApplications \u0026amp; Use Cases\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe SuperMini is the board of choice when a standard Nano is too large. Same processor, same IDE, same libraries — just a dramatically smaller package.\u003c\/p\u003e\n      \u003cdiv class=\"nznd__uses\"\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eWearables \u0026amp; E-Textiles\u003c\/strong\u003e\u003cp\u003eSmall enough to sew into garments or embed in accessories. Full Nano functionality at roughly half the footprint.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eTight Enclosure Builds\u003c\/strong\u003e\u003cp\u003eFits inside project boxes and commercial enclosures where a standard Nano won't clear. Same 2.54 mm pitch for easy wiring.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eSensors \u0026amp; IoT Nodes\u003c\/strong\u003e\u003cp\u003eDeploy as a compact sensor node for temperature, humidity, motion, or distance reading. Small enough for permanent installation.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eRobotics \u0026amp; RC\u003c\/strong\u003e\u003cp\u003eEmbed directly in small robot chassis, drones, or RC models where board size and weight are critical constraints.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003ePrototyping\u003c\/strong\u003e\u003cp\u003eSame ATmega328P and Arduino IDE profile as the full Nano — prototype code transfers directly to the SuperMini without changes.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eBattery-Powered Projects\u003c\/strong\u003e\u003cp\u003eSmaller board means lower parasitic draw potential. Pair with a LiPo or AA pack for portable standalone operation via VIN.\u003c\/p\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eSuperMini vs standard Nano — key difference\u003c\/strong\u003e\n          \u003cp\u003eThe SuperMini has 6 analog inputs (A0–A5) versus the Nano's 8 (A0–A7). If your project needs A6 or A7, use the standard Nano V3. Otherwise the SuperMini is a straight-up drop-in replacement with a smaller footprint.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"faq\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eFrequently Asked Questions\u003c\/p\u003e\n      \u003cdl class=\"nznd__faq\"\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eHow is the SuperMini different from a standard Nano V3?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eSame ATmega328P processor, same 16 MHz clock, same flash\/SRAM\/EEPROM, same IDE settings. Two differences: the SuperMini is 21.72 × 26.16 mm (roughly half the area of the standard 43 × 18 mm Nano), and it exposes A0–A5 only — A6 and A7 are not broken out.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eAre the headers pre-soldered?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eNo — headers are included loose. Solder them in your preferred orientation before breadboard use. The USB-C port works immediately for programming without soldering anything.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eMy USB-C charger won't power the board. Why?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eSome USB-C PD chargers and smart USB-C ports won't supply power unless they can negotiate voltage with the connected device. Use a USB-A to Type-C cable or a standard fixed-voltage 5V USB source (phone charger, USB hub, PC port) for reliable operation.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eDoes it work with standard Nano sketches?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eYes. Select Arduino Nano with ATmega328P in the IDE. All standard Nano sketches, libraries, and tutorials work without modification. If upload fails, try Old Bootloader mode under Tools \u0026gt; Processor.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eIs this a genuine Arduino board?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eThis is a third-party board compatible with the Arduino Nano. It is not manufactured by Arduino S.r.l. but uses the same ATmega328P, the same bootloader, and is fully compatible with the Arduino IDE and ecosystem.\u003c\/dd\u003e\n        \u003c\/div\u003e\n      \u003c\/dl\u003e\n    \u003c\/section\u003e\n\n  \u003c\/div\u003e\n\u003c\/article\u003e\n\n\u003cscript\u003e\n(function(){\n  'use strict';\n  var w=document.currentScript?(document.currentScript.closest('.nznd')||document.querySelector('.nznd')):document.querySelector('.nznd');\n  if(!w)return;\n  w.addEventListener('click',function(e){\n    var tab=e.target.closest('.nznd__tab');\n    if(tab){\n      var t=tab.getAttribute('data-tab');\n      w.querySelectorAll('.nznd__tab').forEach(function(x){x.classList.remove('is-active');x.setAttribute('aria-selected','false')});\n      w.querySelectorAll('.nznd__panel').forEach(function(x){x.classList.remove('is-active')});\n      tab.classList.add('is-active');tab.setAttribute('aria-selected','true');\n      var p=w.querySelector('[data-panel=\"'+t+'\"]');if(p)p.classList.add('is-active');\n      return;\n    }\n    var btn=e.target.closest('.nznd__faq-q');\n    if(btn){\n      var item=btn.closest('.nznd__faq-item');var open=item.classList.contains('is-open');\n      w.querySelectorAll('.nznd__faq-item').forEach(function(x){x.classList.remove('is-open');x.querySelector('.nznd__faq-q').setAttribute('aria-expanded','false')});\n      if(!open){item.classList.add('is-open');btn.setAttribute('aria-expanded','true')}\n    }\n  });\n}());\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42740731281504,"sku":"MCU-NANO-V3-328P","price":8.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/ArduinoNanoSuperminiProductHero.png?v=1778663462"},{"product_id":"bmp280-barometric-pressure-temperature-sensor-module","title":"BMP280 Barometric Pressure Temperature Sensor Module 3.3V","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n    margin-bottom: 14px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"getting-started\"\u003eGetting Started\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe BMP280 is a compact barometric pressure and temperature sensor module for Arduino, ESP32, Raspberry Pi, and other microcontroller projects. It is ideal for weather stations, altitude measurement, drones, environmental monitoring, and data logging.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eMeasures barometric pressure and temperature\u003c\/li\u003e\n              \u003cli\u003eSupports both I2C and SPI communication\u003c\/li\u003e\n              \u003cli\u003eCompact GY-BM280 breakout module\u003c\/li\u003e\n              \u003cli\u003eGreat for Arduino, ESP32, Raspberry Pi, and STM32 projects\u003c\/li\u003e\n              \u003cli\u003ePerfect for weather, altitude, and environmental sensing\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Start\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect power\u003c\/strong\u003e\n                \u003cp\u003eConnect VCC to 3.3V and GND to GND.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect I2C pins\u003c\/strong\u003e\n                \u003cp\u003eConnect SCL to A5\/SCL and SDA to A4\/SDA on an Arduino Uno.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eInstall library\u003c\/strong\u003e\n                \u003cp\u003eUse the Adafruit BMP280 library or another compatible BMP280 Arduino library.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eCheck address\u003c\/strong\u003e\n                \u003cp\u003eDefault I2C address is usually 0x76. Pull SDO high to use 0x77.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e This is the BMP280 version. It measures pressure and temperature only, not humidity.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSensor Chip\u003c\/span\u003e\u003cstrong\u003eBMP280\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBoard Type\u003c\/span\u003e\u003cstrong\u003eGY-BM280 breakout module\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Voltage\u003c\/span\u003e\u003cstrong\u003e3.3V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eInterface\u003c\/span\u003e\u003cstrong\u003eI2C \/ SPI\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eI2C Address\u003c\/span\u003e\u003cstrong\u003e0x76 default, 0x77 configurable\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePressure Range\u003c\/span\u003e\u003cstrong\u003e300–1100 hPa\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePressure Accuracy\u003c\/span\u003e\u003cstrong\u003e±1 hPa absolute\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRelative Pressure Accuracy\u003c\/span\u003e\u003cstrong\u003e±0.12 hPa\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Range\u003c\/span\u003e\u003cstrong\u003e−40°C to +85°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Accuracy\u003c\/span\u003e\u003cstrong\u003e±1.0°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePressure Resolution\u003c\/span\u003e\u003cstrong\u003e0.16 Pa\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Resolution\u003c\/span\u003e\u003cstrong\u003e0.01°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePins\u003c\/span\u003e\u003cstrong\u003eVCC, GND, SCL, SDA, CSB, SDO\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Do not connect this 3.3V module directly to 5V unless your setup uses suitable level shifting.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"getting-started\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-started\"\u003e\n          \u003ch3\u003eGetting Started\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire VCC and GND\u003c\/strong\u003e\n              \u003cp\u003eConnect VCC to 3.3V and GND to GND.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWire I2C\u003c\/strong\u003e\n              \u003cp\u003eFor Arduino Uno, connect SCL to A5 and SDA to A4.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eLeave CSB and SDO unconnected\u003c\/strong\u003e\n              \u003cp\u003eThis keeps the module in default I2C mode with address 0x76.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eInstall a BMP280 library\u003c\/strong\u003e\n              \u003cp\u003eInstall the Adafruit BMP280 library through the Arduino Library Manager.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e5\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eUpload example sketch\u003c\/strong\u003e\n              \u003cp\u003eOpen a BMP280 example sketch, select your board and port, then upload.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003eWiring:\u003c\/strong\u003e VCC → 3.3V, GND → GND, SCL → A5\/SCL, SDA → A4\/SDA.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eBMP280 3.3V sensor module\u003c\/strong\u003e\n            \u003cp\u003eCompact GY-BM280 breakout board for pressure and temperature sensing.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003e6-pin male header strip\u003c\/strong\u003e\n            \u003cp\u003eIncluded unsoldered so you can solder it in your preferred orientation.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Header pins are included but are not pre-soldered.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eWeather stations and local pressure monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eDIY altimeters and altitude measurement\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eDrone and UAV altitude sensing\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eEnvironmental monitoring and data logging\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eGPS altitude enhancement projects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eIndoor navigation and floor-level detection\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e This module is best for pressure, temperature, and altitude-based projects.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eIs this a BMP280 or BME280?\u003c\/strong\u003e\n            \u003cp\u003eThis is a BMP280. It measures pressure and temperature only. It does not measure humidity.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I use this with Arduino?\u003c\/strong\u003e\n            \u003cp\u003eYes, it works with Arduino boards using I2C or SPI. For Arduino Uno I2C, use SDA on A4 and SCL on A5.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I use this with ESP32 or Raspberry Pi?\u003c\/strong\u003e\n            \u003cp\u003eYes, it is compatible with ESP32, Raspberry Pi, STM32, and other 3.3V microcontroller platforms.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan I connect it to 5V?\u003c\/strong\u003e\n            \u003cp\u003eThis is a 3.3V module. Do not connect directly to 5V unless using proper voltage level shifting.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e If your code cannot find the sensor, check the I2C address. It may be 0x76 or 0x77.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"Bosch","offers":[{"title":"Single - ($3.69 ea)","offer_id":42757854003296,"sku":"BMP280-3V3","price":3.69,"currency_code":"NZD","in_stock":true},{"title":"3 Pack ($3.33 ea)","offer_id":42757854036064,"sku":"BMP280-3V4","price":9.99,"currency_code":"NZD","in_stock":true},{"title":"5 Pack ($3.20 ea)","offer_id":42757854068832,"sku":"BMP280-3V5","price":15.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/BMP280-3.3V-Producthero.png?v=1779047527"},{"product_id":"rainbow-dupont-jumper-wire-kit-20cm","title":"40pc Dupont Jumper Wires (20cm)","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"configurations\"\u003eConfigurations\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003ePremium 40-pin DuPont jumper wire ribbon cable designed for Arduino, Raspberry Pi, ESP32, STM32, and breadboard prototyping. The ribbon can be kept as a full 40-pin strip or easily peeled apart into individual wires or smaller groups for custom connections.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003e40-pin peelable rainbow ribbon cable\u003c\/li\u003e\n              \u003cli\u003eStandard 2.54mm pitch compatibility\u003c\/li\u003e\n              \u003cli\u003eFlexible 20cm length for prototyping\u003c\/li\u003e\n              \u003cli\u003eAvailable in M-M, F-F, and M-F variants\u003c\/li\u003e\n              \u003cli\u003eIdeal for breadboards, sensors, and GPIO projects\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Setup\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSelect your connector type\u003c\/strong\u003e\n                \u003cp\u003eChoose Male-Male, Female-Female, or Male-Female depending on your project.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePeel wires if needed\u003c\/strong\u003e\n                \u003cp\u003eSeparate the ribbon into smaller wire groups or individual jumpers.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect to your circuit\u003c\/strong\u003e\n                \u003cp\u003eCompatible with breadboards, headers, sensors, and GPIO pins.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePrototype and test\u003c\/strong\u003e\n                \u003cp\u003ePerfect for temporary solderless development and debugging.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Each order contains 1x 40-pin ribbon cable in your selected configuration.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCable Type\u003c\/span\u003e\u003cstrong\u003e40-Pin Peelable Ribbon\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eLength\u003c\/span\u003e\u003cstrong\u003e20cm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePitch\u003c\/span\u003e\u003cstrong\u003e2.54mm Standard\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWire Gauge\u003c\/span\u003e\u003cstrong\u003e26 AWG\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eInsulation\u003c\/span\u003e\u003cstrong\u003eFlexible PVC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eConfigurations\u003c\/span\u003e\u003cstrong\u003eM-M, F-F, M-F\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWire Colours\u003c\/span\u003e\u003cstrong\u003eRainbow Repeating Pattern\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCompatibility\u003c\/span\u003e\u003cstrong\u003eBreadboards, Arduino, Raspberry Pi, ESP32\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Colours may slightly vary between manufacturing batches.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"configurations\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n\n        \u003cdiv class=\"nzn-started\"\u003e\n          \u003ch3\u003eConfiguration Guide\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003eM\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eMale to Male\u003c\/strong\u003e\n              \u003cp\u003eBest for breadboard-to-breadboard or module-to-breadboard connections.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003eF\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eFemale to Female\u003c\/strong\u003e\n              \u003cp\u003eIdeal for connecting pins, headers, and sensor modules together.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003eM\/F\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eMale to Female\u003c\/strong\u003e\n              \u003cp\u003eUseful for extending headers or adapting between pin types.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e All variants use the same standard 2.54mm connector spacing.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n\n          \u003cdiv\u003e\n            \u003cstrong\u003e40-pin DuPont jumper ribbon cable\u003c\/strong\u003e\n            \u003cp\u003eYour selected connector configuration ready for prototyping and electronics projects.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Breadboards, modules, and development boards shown in photos are not included.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eArduino and ESP32 prototyping\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eBreadboard circuit development\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eSensor and module connections\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRaspberry Pi GPIO projects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRobotics and STEM education\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eTemporary test and debug wiring\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e These wires are designed primarily for signal and low-current applications.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eCan the ribbon cable be separated?\u003c\/strong\u003e\n            \u003cp\u003eYes. The ribbon is designed to peel apart into smaller groups or individual wires.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWill these fit standard breadboards?\u003c\/strong\u003e\n            \u003cp\u003eYes. They use the standard 2.54mm pitch used on breadboards and most development boards.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhich variant should I choose?\u003c\/strong\u003e\n            \u003cp\u003eMale-Male is the most common for breadboards. Female-Female works best for header pins. Male-Female is useful as an adapter or extension.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e The rainbow colour sequence helps simplify wire identification during complex projects.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Female to female","offer_id":42747039416416,"sku":"JW-DUP-20CM-FF-40PK","price":4.99,"currency_code":"NZD","in_stock":true},{"title":"Male to female","offer_id":42747039449184,"sku":"JW-DUP-20CM-MF-40PK","price":4.99,"currency_code":"NZD","in_stock":true},{"title":"Male to male","offer_id":42747039481952,"sku":"JW-DUP-20CM-MM-40PK","price":4.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/DuPont_Wires_M_to_F.jpg?v=1778666824"},{"product_id":"arduino-nano-v3-atmega328p-usb-c","title":"Nano V3.0 – ATmega328P Dev Board, USB-C, Unsoldered, Compatible with Arduino","description":"\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003ePinout Guide\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe Nano V3.0 in its unsoldered form — ideal for custom mounting, direct wiring, or pick-and-place assembly. Built on the ATmega328PB, an enhanced version of the classic ATmega328P that adds a second I²C bus, second SPI port, and extra timers while remaining fully compatible with the Arduino Nano IDE profile. USB-C connector with CH340G USB-to-serial. Headers included loose, so you solder them in whatever orientation your build needs.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eATmega328PB @ 16 MHz — programs as a standard Arduino Nano\u003c\/li\u003e\n              \u003cli\u003e14 digital I\/O (6 PWM) + 8 analog inputs (A0–A7)\u003c\/li\u003e\n              \u003cli\u003eDual I²C and dual SPI — 328PB bonus peripherals\u003c\/li\u003e\n              \u003cli\u003eUSB Type-C with CH340G — no Old Bootloader mode needed\u003c\/li\u003e\n              \u003cli\u003eUnsoldered headers included for custom mounting\u003c\/li\u003e\n              \u003cli\u003e32 KB flash · 2 KB SRAM · 1 KB EEPROM · 43 × 18 mm\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eGetting Started\u003c\/h3\u003e\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n\u003cstrong\u003eSolder the headers\u003c\/strong\u003e\u003cp\u003eSolder the included pin headers before breadboard use — or fit right-angle\/female headers, or wire directly to the pads.\u003c\/p\u003e\n\u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n\u003cstrong\u003eInstall CH340 driver (Windows only)\u003c\/strong\u003e\u003cp\u003emacOS and Linux detect the board automatically. Windows may need the CH340 driver once from WCH.\u003c\/p\u003e\n\u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n\u003cstrong\u003eConnect via USB-C and select the board\u003c\/strong\u003e\u003cp\u003eUse a data-capable USB-C cable. In Arduino IDE: Tools → Board → Arduino Nano, Processor: ATmega328P.\u003c\/p\u003e\n\u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n\u003cstrong\u003eUpload Blink to verify\u003c\/strong\u003e\u003cp\u003eFile → Examples → 01.Basics → Blink. The D13 LED blinking once per second confirms the board works.\u003c\/p\u003e\n\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003ePlease note:\u003c\/strong\u003e Headers are unsoldered — soldering is required before breadboard use. The USB-C programming port works without any soldering. Standard upload works straight away; Old Bootloader mode is not needed.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eMicrocontroller\u003c\/span\u003e\u003cstrong\u003eATmega328PB (8-bit AVR, enhanced)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePrograms As\u003c\/span\u003e\u003cstrong\u003eArduino Nano (ATmega328P profile)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eUSB Interface Chip\u003c\/span\u003e\u003cstrong\u003eCH340G USB-to-Serial\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eUSB Connector\u003c\/span\u003e\u003cstrong\u003eType-C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eHeader State\u003c\/span\u003e\u003cstrong\u003eUnsoldered — headers included loose\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Voltage\u003c\/span\u003e\u003cstrong\u003e5V DC\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eInput Voltage (Rec.)\u003c\/span\u003e\u003cstrong\u003e7–12V via VIN pin\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eDigital I\/O Pins\u003c\/span\u003e\u003cstrong\u003e14 (6 support PWM output)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAnalog Input Pins\u003c\/span\u003e\u003cstrong\u003e8 (A0–A7, 10-bit ADC)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eDC Current per I\/O Pin\u003c\/span\u003e\u003cstrong\u003e40 mA max\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eFlash Memory\u003c\/span\u003e\u003cstrong\u003e32 KB (2 KB used by bootloader)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSRAM\u003c\/span\u003e\u003cstrong\u003e2 KB\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eEEPROM\u003c\/span\u003e\u003cstrong\u003e1 KB\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eClock Speed\u003c\/span\u003e\u003cstrong\u003e16 MHz crystal oscillator\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCommunication\u003c\/span\u003e\u003cstrong\u003eUART, dual SPI, dual I²C (328PB extras)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBoard Dimensions\u003c\/span\u003e\u003cstrong\u003e43 × 18 mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eIDE Compatibility\u003c\/span\u003e\u003cstrong\u003eArduino IDE — \"Arduino Nano\", ATmega328P\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBuilt-in LED\u003c\/span\u003e\u003cstrong\u003eD13 (user-programmable)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eReset Button\u003c\/span\u003e\u003cstrong\u003eYes\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eICSP Header\u003c\/span\u003e\u003cstrong\u003eYes (6-pin AVR ISP)\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- PINOUT --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003ePinout Guide\u003c\/h3\u003e\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eD0 \/ D1\u003c\/span\u003e\u003cstrong\u003eHardware UART RX\/TX\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eD2 \/ D3\u003c\/span\u003e\u003cstrong\u003eExternal interrupts INT0 \/ INT1\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eD3, 5, 6, 9, 10, 11\u003c\/span\u003e\u003cstrong\u003ePWM outputs (6 pins)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eD10–D13\u003c\/span\u003e\u003cstrong\u003eSPI0 — SS \/ MOSI \/ MISO \/ SCK\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eD13\u003c\/span\u003e\u003cstrong\u003eBuilt-in LED (LED_BUILTIN)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eA0–A7\u003c\/span\u003e\u003cstrong\u003e10-bit ADC inputs, 0–5V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eA4 \/ A5\u003c\/span\u003e\u003cstrong\u003eI²C0 — SDA \/ SCL\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eA6 \/ A7\u003c\/span\u003e\u003cstrong\u003eAnalog input only (no digital)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAREF\u003c\/span\u003e\u003cstrong\u003eExternal voltage reference\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eVIN\u003c\/span\u003e\u003cstrong\u003eExternal supply input, 7–12V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003e5V \/ 3.3V\u003c\/span\u003e\u003cstrong\u003eRegulated outputs\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eGND\u003c\/span\u003e\u003cstrong\u003eGround (multiple pins)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eRESET\u003c\/span\u003e\u003cstrong\u003eActive-low reset\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nzn-wiring-box\"\u003e\n          \u003cstrong\u003eATmega328PB bonus peripherals:\u003c\/strong\u003e the 328PB adds a second hardware I²C bus (I²C1), a second SPI port (SPI1), and two extra 16-bit timers (Timer3 \u0026amp; Timer4) — all exposed on the same physical Nano pins. It programs identically to a standard Nano, so existing sketches and libraries work without changes.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003ePermanent enclosure installs\u003c\/strong\u003e — solder headers for your connector type, or wire directly to the pads for the most compact mounting\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003eCustom PCB integration\u003c\/strong\u003e — solder onto a carrier board, or use right-angle headers for panel-mount builds and tight enclosures\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003eMulti-I²C sensor systems\u003c\/strong\u003e — the second I²C bus handles sensors with clashing addresses, no multiplexer needed\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003eRobotics \u0026amp; servo control\u003c\/strong\u003e — drives servos, steppers and DC motors; small enough to fit inside robot chassis and RC builds\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003eSensors \u0026amp; data logging\u003c\/strong\u003e — temperature, humidity, pressure, distance and motion, with extra timers for peripheral flexibility\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003e\n\u003cstrong\u003eEducation \u0026amp; bulk builds\u003c\/strong\u003e — cost-effective for classroom kits where students solder their own boards\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eNeed pre-soldered?\u003c\/strong\u003e If you want a board that plugs straight into a breadboard, see the \u003ca href=\"\/products\/arduino-nano\"\u003epre-soldered Nano V3\u003c\/a\u003e — same specs, headers already fitted.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42770283135072,"sku":"MCU-NANO-V3-328P-NW-1","price":7.49,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/Arduino_Nano_Hero1-1_e77d7e84-318b-431d-9180-0e7b91b41bef.png?v=1779751829"},{"product_id":"gy-bmp280-barometric-pressure-temperature-sensor-5v-3-3v","title":"GY-BMP280 Barometric Pressure \u0026 Temperature Sensor - 5V","description":"\u003cstyle\u003e\n  .nzn-desc { width: 100%; max-width: 1400px; margin: 0 auto; font-family: inherit; color: #101114; }\n  .nzn-desc, .nzn-desc * { box-sizing: border-box; }\n  .nzn-desc .nzn-tabs { width: 100%; max-width: 100%; display: flex; gap: 30px; border-bottom: 1px solid #e7e7e7; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; min-height: 55px; align-items: flex-end; -webkit-overflow-scrolling: touch; }\n  .nzn-desc .nzn-tabs::-webkit-scrollbar { display: none; }\n  .nzn-desc .nzn-tab { flex: 0 0 auto; background: none; border: 0; padding: 16px 0; font: inherit; font-size: 14px; font-weight: 800; white-space: nowrap; border-bottom: 3px solid transparent; color: #101114; cursor: pointer; transition: color .18s ease, border-color .18s ease; }\n  .nzn-desc .nzn-tab:hover { color: #ff7a2f; }\n  .nzn-desc .nzn-tab.is-active { border-bottom-color: #ff7a2f; color: #101114; }\n  .nzn-desc .nzn-card { width: 100%; border: 1px solid #e7e7e7; border-top: 0; border-radius: 0 0 18px 18px; padding: 38px 34px; box-shadow: 0 10px 24px rgba(0,0,0,.035); background: #fff; min-height: 620px; display: flex; flex-direction: column; }\n  .nzn-desc .nzn-panel { display: none; }\n  .nzn-desc .nzn-panel.is-active { display: flex; flex-direction: column; flex: 1; animation: nznTabFade .18s ease both; }\n  @keyframes nznTabFade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }\n  .nzn-desc .nzn-panel-content { flex: 1; }\n  .nzn-desc .nzn-overview { display: grid; grid-template-columns: 1fr 1fr; gap: 46px; align-items: start; }\n  .nzn-desc .nzn-overview-copy { padding-top: 6px; text-align: center; }\n  .nzn-desc p { font-size: 15px; line-height: 1.65; color: #60646c; margin: 0; }\n  .nzn-desc .nzn-checks { list-style: none; padding: 0; margin: 34px auto 0; display: grid; gap: 18px; width: fit-content; max-width: 100%; text-align: left; }\n  .nzn-desc .nzn-checks li { display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: #101114; line-height: 1.45; }\n  .nzn-desc .nzn-checks li::before { content: \"✓\"; flex-shrink: 0; color: #ff7a2f; font-weight: 900; font-size: 16px; line-height: 1; }\n  .nzn-desc .nzn-section-title { margin: 0 0 30px; padding-top: 10px; text-transform: uppercase; letter-spacing: .12em; font-size: 14px; font-weight: 900; color: #ff7a2f; text-align: left; }\n  .nzn-desc .nzn-started { background: #eef6ff; border-left: 4px solid #4a9af7; border-radius: 16px; padding: 26px 28px; }\n  .nzn-desc .nzn-started h3 { margin: 0 0 20px; text-transform: uppercase; letter-spacing: .12em; font-size: 14px; font-weight: 900; color: #1f4268; }\n  .nzn-desc .nzn-step { display: grid; grid-template-columns: 34px 1fr; gap: 14px; margin-bottom: 18px; text-align: left; }\n  .nzn-desc .nzn-step:last-child { margin-bottom: 0; }\n  .nzn-desc .nzn-step span { width: 34px; height: 34px; border-radius: 999px; background: #fff; border: 1px solid #d9e9fb; display: flex; align-items: center; justify-content: center; font-weight: 900; }\n  .nzn-desc .nzn-step strong { display: block; font-size: 14px; color: #101114; }\n  .nzn-desc .nzn-step p { margin-top: 4px; font-size: 13px; color: #40566c; }\n  .nzn-desc .nzn-specs { border-top: 1px solid #e7e7e7; }\n  .nzn-desc .nzn-specs div { display: grid; grid-template-columns: minmax(180px, .8fr) 1.4fr; gap: 24px; padding: 15px 14px; border-bottom: 1px solid #e7e7e7; font-size: 14px; text-align: left; }\n  .nzn-desc .nzn-specs div:nth-child(even) { background: #fafafa; }\n  .nzn-desc .nzn-specs span { color: #60646c; }\n  .nzn-desc .nzn-specs strong { font-weight: 800; color: #101114; }\n  .nzn-desc .nzn-uses { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }\n  .nzn-desc .nzn-use { border-left: 3px solid #ff7a2f; background: #f7f7f7; padding: 15px 16px; font-size: 14px; line-height: 1.45; text-align: left; border-radius: 0 8px 8px 0; }\n  .nzn-desc .nzn-included-card { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; border: 1px solid #e7e7e7; border-radius: 16px; background: #fafafa; padding: 24px; margin-bottom: 12px; }\n  .nzn-desc .nzn-included-qty { width: 48px; height: 48px; border-radius: 999px; background: #fff5ef; border: 1px solid rgba(255,122,47,.2); display: flex; align-items: center; justify-content: center; font-weight: 900; color: #ff7a2f; }\n  .nzn-desc .nzn-included-card strong { display: block; font-size: 16px; margin-bottom: 4px; }\n  .nzn-desc .nzn-included-card p { font-size: 14px; }\n  .nzn-desc .nzn-faq { display: grid; gap: 12px; }\n  .nzn-desc .nzn-faq-item { border: 1px solid #e7e7e7; border-radius: 12px; padding: 16px 18px; background: #fff; text-align: left; }\n  .nzn-desc .nzn-faq-item strong { display: block; margin-bottom: 7px; color: #101114; }\n  .nzn-desc .nzn-faq-item p { font-size: 14px; }\n  .nzn-desc .nzn-note { margin-top: 30px; background: #fafafa; border: 1px solid #e7e7e7; border-radius: 12px; padding: 16px 18px; text-align: center; color: #60646c; font-size: 13px; line-height: 1.55; }\n  .nzn-desc .nzn-wiring-box { background: #eef6ff; border-left: 4px solid #4a9af7; border-radius: 0 12px 12px 0; padding: 16px 20px; font-size: 13.5px; color: #2c4a6e; line-height: 1.7; margin-top: 20px; }\n  @media (max-width: 750px) {\n    .nzn-desc { width: 100%; max-width: 100%; padding: 0; overflow: hidden; }\n    .nzn-desc .nzn-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; overflow: visible; min-height: unset; border-bottom: 0; width: 100%; max-width: 100%; }\n    .nzn-desc .nzn-tab { width: 100%; min-width: 0; padding: 12px 6px; font-size: 12px; line-height: 1.15; text-align: center; white-space: normal; border-bottom: 2px solid #e7e7e7; }\n    .nzn-desc .nzn-tab.is-active { border-bottom-color: #ff7a2f; }\n    .nzn-desc .nzn-card { padding: 24px 16px; min-height: unset; width: 100%; max-width: 100%; border-top: 1px solid #e7e7e7; border-radius: 0 0 16px 16px; }\n    .nzn-desc .nzn-panel.is-active { display: block; }\n    .nzn-desc .nzn-overview { grid-template-columns: 1fr; gap: 26px; }\n    .nzn-desc .nzn-overview-copy { padding-top: 0; text-align: center; }\n    .nzn-desc p { font-size: 14.5px; text-align: center; }\n    .nzn-desc .nzn-checks { margin-top: 24px; gap: 13px; width: fit-content; max-width: 100%; }\n    .nzn-desc .nzn-checks li { align-items: flex-start; gap: 10px; font-size: 14px; text-align: left; }\n    .nzn-desc .nzn-checks li::before { margin-top: 2px; }\n    .nzn-desc .nzn-uses { grid-template-columns: 1fr; }\n    .nzn-desc .nzn-specs div { grid-template-columns: 1fr; gap: 4px; padding: 13px 10px; }\n    .nzn-desc .nzn-section-title { text-align: left; padding-top: 0; margin-bottom: 22px; }\n    .nzn-desc .nzn-started { padding: 20px 16px; }\n    .nzn-desc .nzn-included-card { grid-template-columns: 1fr; text-align: left; justify-items: start; }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003eWiring\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe GY-BMP280 is a high-precision barometric pressure and temperature sensor breakout built around Bosch's BMP280. This 5V-ready version adds an onboard 3.3V regulator and I²C level shifter, so it drops straight onto a 5V Arduino (Uno, Nano, Mega) \u003cem\u003eor\u003c\/em\u003e a 3.3V board (ESP32, ESP8266, Raspberry Pi Pico) with no extra level-shifting hardware. Read atmospheric pressure, temperature and approximate altitude over I²C or SPI.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eGenuine Bosch BMP280 pressure + temperature sensor\u003c\/li\u003e\n              \u003cli\u003e5V \u0026amp; 3.3V ready — onboard regulator + level shifter\u003c\/li\u003e\n              \u003cli\u003ePressure: 300–1100 hPa, ±1 hPa accuracy\u003c\/li\u003e\n              \u003cli\u003eTemperature: −40°C to +85°C, ±1.0°C\u003c\/li\u003e\n              \u003cli\u003eAltitude resolution down to ~±1 m\u003c\/li\u003e\n              \u003cli\u003eI²C (default 0x76) and SPI interface\u003c\/li\u003e\n              \u003cli\u003eUltra-low power — perfect for battery \u0026amp; IoT builds\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Start\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003ePower it\u003c\/strong\u003e\n                \u003cp\u003eVCC to 5V (or 3.3V), GND to GND. The onboard regulator handles either rail safely.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eWire the I²C bus\u003c\/strong\u003e\n                \u003cp\u003eSDA → A4, SCL → A5 on an Uno\/Nano. On an ESP32 use GPIO21 (SDA) and GPIO22 (SCL).\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSet the address\u003c\/strong\u003e\n                \u003cp\u003eTie SDO to GND for address 0x76 (default). Tie it to VCC for 0x77 to run two sensors on one bus.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eLoad the library\u003c\/strong\u003e\n                \u003cp\u003eInstall the Adafruit BMP280 library from the Arduino Library Manager and run the example sketch.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eHeads up:\u003c\/strong\u003e This is a BMP280 — it measures pressure and temperature only. If you also need humidity, choose a BME280 instead.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eModel\u003c\/span\u003e\u003cstrong\u003eGY-BMP280 (V461, 5V variant)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSensor IC\u003c\/span\u003e\u003cstrong\u003eBosch BMP280\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eMeasurements\u003c\/span\u003e\u003cstrong\u003eBarometric pressure, temperature, altitude\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePressure Range\u003c\/span\u003e\u003cstrong\u003e300–1100 hPa\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePressure Accuracy\u003c\/span\u003e\u003cstrong\u003e±1 hPa (absolute)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Range\u003c\/span\u003e\u003cstrong\u003e−40°C to +85°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eTemperature Accuracy\u003c\/span\u003e\u003cstrong\u003e±1.0°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAltitude Resolution\u003c\/span\u003e\u003cstrong\u003e~±1 m (relative)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eInterface\u003c\/span\u003e\u003cstrong\u003eI²C (default) \u0026amp; SPI\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eI²C Address\u003c\/span\u003e\u003cstrong\u003e0x76 (default) \/ 0x77\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSupply Voltage\u003c\/span\u003e\u003cstrong\u003e3.3V – 5V (onboard regulator)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eLogic Levels\u003c\/span\u003e\u003cstrong\u003e5V \u0026amp; 3.3V tolerant (level shifted)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCurrent Draw\u003c\/span\u003e\u003cstrong\u003e~2.7 µA @ 1 Hz\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePins\u003c\/span\u003e\u003cstrong\u003e6 — VCC, GND, SCL, SDA, CSB, SDO\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBoard Size\u003c\/span\u003e\u003cstrong\u003e~21 × 11 mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCompliance\u003c\/span\u003e\u003cstrong\u003eRoHS\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e Replaces the older BMP085 \/ BMP180 — lower noise, higher resolution and a faster sample rate.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- WIRING --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWiring (I²C)\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eVCC\u003c\/span\u003e\u003cstrong\u003e5V or 3.3V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eGND\u003c\/span\u003e\u003cstrong\u003eGND\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSCL\u003c\/span\u003e\u003cstrong\u003eA5 (Uno\/Nano) · GPIO22 (ESP32)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSDA\u003c\/span\u003e\u003cstrong\u003eA4 (Uno\/Nano) · GPIO21 (ESP32)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSDO\u003c\/span\u003e\u003cstrong\u003eGND for 0x76 · VCC for 0x77\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCSB\u003c\/span\u003e\u003cstrong\u003eLeave open for I²C (internally pulled high)\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-wiring-box\"\u003e\n          \u003cstrong\u003eUsing SPI instead?\u003c\/strong\u003e Connect CSB as chip select, SCL as SCK (clock), SDA as SDI (MOSI) and SDO as SDO (MISO). Drive CSB low to select the sensor.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e The board includes I²C pull-up resistors, so no external pull-ups are needed on the SDA\/SCL lines.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- INCLUDED --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eGY-BMP280 Sensor Module (5V)\u003c\/strong\u003e\n            \u003cp\u003eBosch BMP280 breakout with onboard regulator and level shifter, ready for I²C or SPI.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003e6-Pin Male Header Strip\u003c\/strong\u003e\n            \u003cp\u003eSupplied loose for breadboard or jumper use — a quick solder fit when you're ready.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e Header pins ship unsoldered so you can choose straight or right-angle mounting to suit your build.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eWeather stations \u0026amp; environmental data logging\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eAltimeters \u0026amp; drone \/ quadcopter altitude hold\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eIoT \u0026amp; home automation sensors (ESP32 \/ ESP8266)\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eIndoor navigation \u0026amp; floor \/ elevation detection\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eHiking \u0026amp; barometric trend \/ storm monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eMaker, STEM \u0026amp; Arduino learning projects\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e Pairs perfectly with an ESP32 or ESP8266 for a wireless weather node you can log to the cloud.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- FAQS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDoes it really work with a 5V Arduino?\u003c\/strong\u003e\n            \u003cp\u003eYes. Unlike the bare 3.3V purple boards, this version has an onboard regulator and I²C level shifter, so you can power and signal it directly from a 5V Uno, Nano or Mega — and it still works on 3.3V boards like the ESP32.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eI²C or SPI — which should I use?\u003c\/strong\u003e\n            \u003cp\u003eBoth are supported. I²C is easiest and is the default (address 0x76, only two signal wires). Tie SDO high to switch to 0x77 if you need two sensors on one I²C bus.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat code library do I use?\u003c\/strong\u003e\n            \u003cp\u003eThe Adafruit BMP280 library is the most popular — search \"Adafruit BMP280\" in the Arduino Library Manager and load the example. The lighter BMP280_DEV library also works well.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat's the difference between BMP280 and BME280?\u003c\/strong\u003e\n            \u003cp\u003eThe BMP280 measures pressure and temperature. The BME280 adds a humidity sensor. This module is the BMP280, so it does not measure humidity.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eStocked \u0026amp; shipped from New Zealand\u003c\/strong\u003e — fast local dispatch, no long waits from overseas.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n    const target = tab.getAttribute('data-tab');\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) { item.classList.remove('is-active'); });\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) { panel.classList.remove('is-active'); });\n    tab.classList.add('is-active');\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"1 Pack - ($4.99 ea)","offer_id":42780549120096,"sku":"MOD-BMP280-5V-1","price":4.99,"currency_code":"NZD","in_stock":true},{"title":"5 Pack - ($3.99 ea)","offer_id":42780549152864,"sku":"MOD-BMP280-5V-2","price":19.99,"currency_code":"NZD","in_stock":true},{"title":"10 Pack - ($3.59 ea)","offer_id":42780549185632,"sku":"MOD-BMP280-5V-3","price":35.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/GY-BMP-280-5V.png?v=1780277056"},{"product_id":"k851264-rgb-led-module","title":"K851264 5050 RGB LED Module – Common Cathode, Arduino \u0026 ESP32","description":"\u003cstyle\u003e\n  .nzn-desc { width: 100%; max-width: 1400px; margin: 0 auto; font-family: inherit; color: #101114; }\n  .nzn-desc, .nzn-desc * { box-sizing: border-box; }\n  .nzn-desc .nzn-tabs { width: 100%; max-width: 100%; display: flex; gap: 30px; border-bottom: 1px solid #e7e7e7; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; min-height: 55px; align-items: flex-end; -webkit-overflow-scrolling: touch; }\n  .nzn-desc .nzn-tabs::-webkit-scrollbar { display: none; }\n  .nzn-desc .nzn-tab { flex: 0 0 auto; background: none; border: 0; padding: 16px 0; font: inherit; font-size: 14px; font-weight: 800; white-space: nowrap; border-bottom: 3px solid transparent; color: #101114; cursor: pointer; transition: color .18s ease, border-color .18s ease; }\n  .nzn-desc .nzn-tab:hover { color: #ff7a2f; }\n  .nzn-desc .nzn-tab.is-active { border-bottom-color: #ff7a2f; color: #101114; }\n  .nzn-desc .nzn-card { width: 100%; border: 1px solid #e7e7e7; border-top: 0; border-radius: 0 0 18px 18px; padding: 38px 34px; box-shadow: 0 10px 24px rgba(0,0,0,.035); background: #fff; min-height: 620px; display: flex; flex-direction: column; }\n  .nzn-desc .nzn-panel { display: none; }\n  .nzn-desc .nzn-panel.is-active { display: flex; flex-direction: column; flex: 1; animation: nznTabFade .18s ease both; }\n  @keyframes nznTabFade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }\n  .nzn-desc .nzn-panel-content { flex: 1; }\n  .nzn-desc .nzn-overview { display: grid; grid-template-columns: 1fr 1fr; gap: 46px; align-items: start; }\n  .nzn-desc .nzn-overview-copy { padding-top: 6px; text-align: center; }\n  .nzn-desc p { font-size: 15px; line-height: 1.65; color: #60646c; margin: 0; }\n  .nzn-desc .nzn-checks { list-style: none; padding: 0; margin: 34px auto 0; display: grid; gap: 18px; width: fit-content; max-width: 100%; text-align: left; }\n  .nzn-desc .nzn-checks li { display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: #101114; line-height: 1.45; }\n  .nzn-desc .nzn-checks li::before { content: \"\\2713\"; flex-shrink: 0; color: #ff7a2f; font-weight: 900; font-size: 16px; line-height: 1; }\n  .nzn-desc .nzn-section-title { margin: 0 0 30px; padding-top: 10px; text-transform: uppercase; letter-spacing: .12em; font-size: 14px; font-weight: 900; color: #ff7a2f; text-align: left; }\n  .nzn-desc .nzn-started { background: #eef6ff; border-left: 4px solid #4a9af7; border-radius: 16px; padding: 26px 28px; }\n  .nzn-desc .nzn-started h3 { margin: 0 0 20px; text-transform: uppercase; letter-spacing: .12em; font-size: 14px; font-weight: 900; color: #1f4268; }\n  .nzn-desc .nzn-step { display: grid; grid-template-columns: 34px 1fr; gap: 14px; margin-bottom: 18px; text-align: left; }\n  .nzn-desc .nzn-step:last-child { margin-bottom: 0; }\n  .nzn-desc .nzn-step span { width: 34px; height: 34px; border-radius: 999px; background: #fff; border: 1px solid #d9e9fb; display: flex; align-items: center; justify-content: center; font-weight: 900; }\n  .nzn-desc .nzn-step strong { display: block; font-size: 14px; color: #101114; }\n  .nzn-desc .nzn-step p { margin-top: 4px; font-size: 13px; color: #40566c; }\n  .nzn-desc .nzn-specs { border-top: 1px solid #e7e7e7; }\n  .nzn-desc .nzn-specs div { display: grid; grid-template-columns: minmax(180px, .8fr) 1.4fr; gap: 24px; padding: 15px 14px; border-bottom: 1px solid #e7e7e7; font-size: 14px; text-align: left; }\n  .nzn-desc .nzn-specs div:nth-child(even) { background: #fafafa; }\n  .nzn-desc .nzn-specs span { color: #60646c; }\n  .nzn-desc .nzn-specs strong { font-weight: 800; color: #101114; }\n  .nzn-desc .nzn-included-card { display: grid; grid-template-columns: auto 1fr; gap: 18px; align-items: center; border: 1px solid #e7e7e7; border-radius: 16px; background: #fafafa; padding: 24px; margin-bottom: 12px; }\n  .nzn-desc .nzn-included-qty { width: 48px; height: 48px; border-radius: 999px; background: #fff5ef; border: 1px solid rgba(255,122,47,.2); display: flex; align-items: center; justify-content: center; font-weight: 900; color: #ff7a2f; }\n  .nzn-desc .nzn-included-card strong { display: block; font-size: 16px; margin-bottom: 4px; }\n  .nzn-desc .nzn-included-card p { font-size: 14px; }\n  .nzn-desc .nzn-uses { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }\n  .nzn-desc .nzn-use { border-left: 3px solid #ff7a2f; background: #f7f7f7; padding: 15px 16px; font-size: 14px; line-height: 1.45; text-align: left; border-radius: 0 8px 8px 0; }\n  .nzn-desc .nzn-faq { display: grid; gap: 12px; }\n  .nzn-desc .nzn-faq-item { border: 1px solid #e7e7e7; border-radius: 12px; padding: 16px 18px; background: #fff; text-align: left; }\n  .nzn-desc .nzn-faq-item strong { display: block; margin-bottom: 7px; color: #101114; }\n  .nzn-desc .nzn-faq-item p { font-size: 14px; }\n  .nzn-desc .nzn-note { margin-top: 30px; background: #fafafa; border: 1px solid #e7e7e7; border-radius: 12px; padding: 16px 18px; text-align: center; color: #60646c; font-size: 13px; line-height: 1.55; }\n  .nzn-desc .nzn-wiring-box { background: #eef6ff; border-left: 4px solid #4a9af7; border-radius: 0 12px 12px 0; padding: 16px 20px; font-size: 13.5px; color: #2c4a6e; line-height: 1.7; margin-top: 20px; }\n  @media (max-width: 750px) {\n    .nzn-desc { width: 100%; max-width: 100%; padding: 0; overflow: hidden; }\n    .nzn-desc .nzn-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; overflow: visible; min-height: unset; border-bottom: 0; width: 100%; max-width: 100%; }\n    .nzn-desc .nzn-tab { width: 100%; min-width: 0; padding: 12px 6px; font-size: 12px; line-height: 1.15; text-align: center; white-space: normal; border-bottom: 2px solid #e7e7e7; }\n    .nzn-desc .nzn-tab.is-active { border-bottom-color: #ff7a2f; }\n    .nzn-desc .nzn-card { padding: 24px 16px; min-height: unset; width: 100%; max-width: 100%; border-top: 1px solid #e7e7e7; border-radius: 0 0 16px 16px; }\n    .nzn-desc .nzn-panel.is-active { display: block; }\n    .nzn-desc .nzn-overview { grid-template-columns: 1fr; gap: 26px; }\n    .nzn-desc .nzn-overview-copy { padding-top: 0; text-align: center; }\n    .nzn-desc p { font-size: 14.5px; text-align: center; }\n    .nzn-desc .nzn-checks { margin-top: 24px; gap: 13px; width: fit-content; max-width: 100%; }\n    .nzn-desc .nzn-checks li { align-items: flex-start; gap: 10px; font-size: 14px; text-align: left; }\n    .nzn-desc .nzn-checks li::before { margin-top: 2px; }\n    .nzn-desc .nzn-uses { grid-template-columns: 1fr; }\n    .nzn-desc .nzn-specs div { grid-template-columns: 1fr; gap: 4px; padding: 13px 10px; }\n    .nzn-desc .nzn-section-title { text-align: left; padding-top: 0; margin-bottom: 22px; }\n    .nzn-desc .nzn-started { padding: 20px 16px; }\n    .nzn-desc .nzn-included-card { grid-template-columns: 1fr; text-align: left; justify-items: start; }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"wiring\"\u003eWiring\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n\n    \u003c!-- OVERVIEW --\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eCompact 5050 RGB LED on a 22mm round board with current-limiting resistors already built in. Connect ground and three PWM pins, then blend red, green and blue to produce any colour and brightness. No external resistors needed, which makes it a clean drop-in for Arduino, ESP32 and Raspberry Pi projects.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003e5050 surface-mount RGB LED (R, G, B in one package)\u003c\/li\u003e\n              \u003cli\u003eCommon cathode (shared ground)\u003c\/li\u003e\n              \u003cli\u003eOnboard current-limiting resistors, no extras needed\u003c\/li\u003e\n              \u003cli\u003eRuns on 3.3V and 5V logic\u003c\/li\u003e\n              \u003cli\u003e2.54mm male header pins, breadboard friendly\u003c\/li\u003e\n              \u003cli\u003e22mm round PCB with two mounting holes\u003c\/li\u003e\n              \u003cli\u003eFull PWM colour and brightness control\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eWiring at a Glance\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect ground\u003c\/strong\u003e\n                \u003cp\u003eWire the GND pin to any ground pin on your board.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eWire the colour pins\u003c\/strong\u003e\n                \u003cp\u003eConnect R, B and G to three PWM-capable pins. Follow the board labels, the order reads GND, R, B, G.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSet up PWM\u003c\/strong\u003e\n                \u003cp\u003eUse analogWrite on Arduino or ledcWrite on ESP32 for each colour pin.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eMix your colour\u003c\/strong\u003e\n                \u003cp\u003eVary each channel from 0 to 255 to blend any colour and brightness.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e The header order on this board is GND, R, B, G (the B and G pins are swapped from a plain RGB sequence), so always wire to the silkscreen labels.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- SPECIFICATIONS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eModel\u003c\/span\u003e\u003cstrong\u003eK851264 LED RGB\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eLED Type\u003c\/span\u003e\u003cstrong\u003e5050 SMD RGB LED\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eConfiguration\u003c\/span\u003e\u003cstrong\u003eCommon Cathode (shared GND)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Voltage\u003c\/span\u003e\u003cstrong\u003e3.3V to 5V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eControl Method\u003c\/span\u003e\u003cstrong\u003ePWM, one channel per colour\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOnboard Resistors\u003c\/span\u003e\u003cstrong\u003eYes, current-limiting (no extras needed)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin Order\u003c\/span\u003e\u003cstrong\u003eGND, R, B, G\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin Pitch\u003c\/span\u003e\u003cstrong\u003e2.54mm male header\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBoard Diameter\u003c\/span\u003e\u003cstrong\u003e22mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePCB Thickness\u003c\/span\u003e\u003cstrong\u003e1.6mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOverall Height (with pins)\u003c\/span\u003e\u003cstrong\u003e38mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eMounting Holes\u003c\/span\u003e\u003cstrong\u003e2 x 4mm (suit M2.5 screws)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eCompatibility\u003c\/span\u003e\u003cstrong\u003eArduino, ESP32, ESP8266, Raspberry Pi\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e This is a standard RGB LED driven over three PWM lines, not an addressable WS2812B type. One module gives you one full-colour LED.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- WIRING --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"wiring\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWiring\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eGND\u003c\/span\u003e\u003cstrong\u003eMicrocontroller ground (0V)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eR\u003c\/span\u003e\u003cstrong\u003eRed channel, PWM-capable pin\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eB\u003c\/span\u003e\u003cstrong\u003eBlue channel, PWM-capable pin\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eG\u003c\/span\u003e\u003cstrong\u003eGreen channel, PWM-capable pin\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nzn-wiring-box\"\u003e\n          As a common cathode module, all three colours share the GND pin. Driving a colour pin HIGH turns that colour on, and a PWM signal sets its brightness. Mixing the three channels gives you the full colour range. Note the header reads GND, R, B, G from left to right (B and G are swapped versus a plain RGB order), so wire by the printed labels rather than position. On an Arduino Uno, GND goes to a GND pin and R, B, G connect to PWM pins such as 9, 10 and 11.\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e The onboard resistors handle current limiting, so the colour pins connect directly to your microcontroller within the 3.3V to 5V range.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- INCLUDED --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eK851264 5050 RGB LED Module\u003c\/strong\u003e\n            \u003cp\u003eRound breakout board with a 5050 RGB LED, onboard resistors and a 4-pin male header (GND, R, B, G).\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e Jumper wires and a microcontroller are not included. Any 3.3V or 5V board with three PWM outputs will drive this module.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- USES --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eFull-colour status and indicator lights\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eArduino and ESP32 colour-mixing and PWM learning projects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eMood lighting and ambient effects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRGB feedback for sensors, alarms and notifications\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRobotics and wearable accent lighting\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eBreadboard prototyping and STEM teaching\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e Because brightness is set per channel with PWM, you can fade and pulse colours as well as switch between them.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003c!-- FAQS --\u003e\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDo I need to add resistors?\u003c\/strong\u003e\n            \u003cp\u003eNo. Current-limiting resistors are built into the board, so the colour pins connect straight to your microcontroller pins (kept within 3.3V to 5V).\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eIs it common cathode or common anode?\u003c\/strong\u003e\n            \u003cp\u003eCommon cathode. GND is the shared pin, and each colour turns on when its pin is driven HIGH. Use PWM on each colour pin to set brightness and mix colours.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhich pins do I use on an Arduino?\u003c\/strong\u003e\n            \u003cp\u003eConnect GND to a GND pin, then R, B and G to any three PWM-capable pins (such as 9, 10 and 11 on an Uno). Follow the board labels, since the order is GND, R, B, G.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDoes it work with 3.3V boards like the ESP32?\u003c\/strong\u003e\n            \u003cp\u003eYes. It runs on 3.3V to 5V, so it works directly with the ESP32, ESP8266 and Raspberry Pi as well as 5V Arduino boards.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n\u003cstrong\u003eGood to know:\u003c\/strong\u003e For a single project you only need one module. For multi-LED effects, add more modules on separate PWM pins.\u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n    const target = tab.getAttribute('data-tab');\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) { item.classList.remove('is-active'); });\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) { panel.classList.remove('is-active'); });\n    tab.classList.add('is-active');\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42782769217632,"sku":"LED-K851264-RGB","price":4.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/K851264LEDRGBLit.png?v=1780348905"},{"product_id":"0-96-oled-display-module-128x64-i2c-ssd1306-arduino-compatible","title":"0.96\" OLED Display Module 128x64 I2C SSD1306 - Arduino Compatible","description":"\u003cdiv style=\"font-family:'DM Sans',-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;color:#1f2328;line-height:1.6;max-width:840px;\"\u003e\n\n\u003cp style=\"font-size:16px;margin:0 0 14px;\"\u003eAdd a crisp, self-illuminated display to your next project. This 0.96 inch OLED module packs 128x64 individually lit pixels into a tiny 27 x 27 mm board, driven by the well supported SSD1306 controller over I2C. Because each pixel makes its own light there is no backlight, which means deep blacks, high contrast and a wide viewing angle, even in a dark room.\u003c\/p\u003e\n\n\u003cp style=\"font-size:16px;margin:0 0 18px;\"\u003eIt runs happily on 3.3V or 5V, talks I2C over just two data lines, and works out of the box with Arduino, ESP32, ESP8266, Raspberry Pi and most other microcontrollers. Stocked and dispatched right here in New Zealand, so you are not waiting weeks on an overseas parcel or dealing with customs.\u003c\/p\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eKey features\u003c\/h3\u003e\n\u003cul style=\"margin:0 0 8px;padding-left:20px;font-size:15px;\"\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003e128 x 64 pixel monochrome OLED, 0.96 inch diagonal\u003c\/li\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003eSSD1306 driver IC, I2C interface (only 2 data pins needed)\u003c\/li\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003eWide 3.3V to 5V operating range, no level shifting required\u003c\/li\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003eNo backlight, very high contrast and a viewing angle over 160 degrees\u003c\/li\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003eUltra low power, around 0.08W with the full screen lit\u003c\/li\u003e\n\u003cli style=\"margin-bottom:5px;\"\u003eCompact 27 x 27 x 4 mm board with 4 clearly labelled pins\u003c\/li\u003e\n\u003cli style=\"margin-bottom:0;\"\u003eWorks with the U8g2 and Adafruit SSD1306 libraries\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eSpecifications\u003c\/h3\u003e\n\u003ctable style=\"border-collapse:collapse;width:100%;font-size:14px;margin-bottom:8px;\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;width:40%;\"\u003eDriver IC\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eSSD1306\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eResolution\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e128 x 64 pixels\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eScreen size\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e0.96 inch diagonal\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eInterface\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eI2C (IIC), 4 pin\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eDefault I2C address\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e0x3C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eOperating voltage\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e3.3V to 5V DC\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eViewing angle\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eGreater than 160 degrees\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eWorking temperature\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e-30C to 70C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eModule size\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e27 x 27 x 4 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eCompatibility\u003c\/th\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eArduino, ESP32, ESP8266, Raspberry Pi, STM32, and more\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eColour options\u003c\/h3\u003e\n\u003cp style=\"font-size:15px;margin:0 0 6px;\"\u003e\u003cstrong\u003eWhite:\u003c\/strong\u003e the whole screen lights white on a black background. The all rounder, great for text, menus and graphics.\u003c\/p\u003e\n\u003cp style=\"font-size:15px;margin:0 0 8px;\"\u003e\u003cstrong\u003eYellow\/Blue:\u003c\/strong\u003e the top strip of the screen lights yellow and the rest lights blue. This split is fixed by the panel itself, not controlled in software, so it suits layouts with a yellow title bar above blue body text.\u003c\/p\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eWiring to an Arduino UNO or Nano\u003c\/h3\u003e\n\u003ctable style=\"border-collapse:collapse;width:100%;font-size:14px;margin-bottom:8px;\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;width:50%;\"\u003eOLED pin\u003c\/th\u003e\n\u003cth style=\"border:1px solid #e7e7e7;padding:8px 10px;text-align:left;background:#faf3ec;\"\u003eArduino pin\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eVCC\u003c\/td\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003e5V\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eGND\u003c\/td\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eGND\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eSCL\u003c\/td\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eA5\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eSDA\u003c\/td\u003e\n\u003ctd style=\"border:1px solid #e7e7e7;padding:8px 10px;\"\u003eA4\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"font-size:14px;color:#555;margin:0 0 8px;\"\u003eOn an Arduino Mega use pin 21 for SCL and pin 20 for SDA.\u003c\/p\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eGetting started\u003c\/h3\u003e\n\u003cp style=\"font-size:15px;margin:0 0 8px;\"\u003eInstall the U8g2 library (by olikraus) or the Adafruit SSD1306 and Adafruit GFX libraries through the Arduino Library Manager, wire it up as above, and load one of the example sketches. The default I2C address is 0x3C, which the library examples already expect.\u003c\/p\u003e\n\n\u003ch3 style=\"color:#e07e2c;font-size:18px;font-weight:700;margin:24px 0 10px;border-bottom:2px solid #f3e2d2;padding-bottom:5px;\"\u003eFAQ\u003c\/h3\u003e\n\u003cp style=\"font-size:15px;margin:0 0 6px;\"\u003e\u003cstrong\u003eCan I change the colours in code?\u003c\/strong\u003e No. The colour layout is built into the panel. White shows white pixels, and Yellow\/Blue always has a yellow top strip with a blue lower section.\u003c\/p\u003e\n\u003cp style=\"font-size:15px;margin:0 0 6px;\"\u003e\u003cstrong\u003eWill it run on a 3.3V board like an ESP32?\u003c\/strong\u003e Yes, it works on anything from 3.3V to 5V.\u003c\/p\u003e\n\u003cp style=\"font-size:15px;margin:0 0 6px;\"\u003e\u003cstrong\u003eHow many pins does it use?\u003c\/strong\u003e Two data pins (SDA and SCL) plus power and ground, four wires total.\u003c\/p\u003e\n\u003cp style=\"font-size:15px;margin:0 0 8px;\"\u003e\u003cstrong\u003eThe screen is blank, what now?\u003c\/strong\u003e Most blank screens come down to the I2C address. If 0x3C does not work, run an I2C scanner sketch to confirm, then update the address in your code.\u003c\/p\u003e\n\n\u003cp style=\"font-size:15px;margin:18px 0 0;padding:12px 14px;background:#fbf2e8;border-left:4px solid #e07e2c;border-radius:4px;\"\u003e\u003cstrong\u003eLocal NZ stock, fast dispatch.\u003c\/strong\u003e Held in stock and shipped from New Zealand, with local support if you get stuck on a project. No long overseas waits and no customs surprises.\u003c\/p\u003e\n\n\u003c\/div\u003e","brand":"NZN Electronics","offers":[{"title":"White \/ 1 Pack","offer_id":42796615237728,"sku":"OLED096-W-1","price":7.9,"currency_code":"NZD","in_stock":true},{"title":"White \/ 3 Pack","offer_id":42796615270496,"sku":"OLED096-W-3","price":21.9,"currency_code":"NZD","in_stock":true},{"title":"White \/ 5 Pack","offer_id":42796615303264,"sku":"OLED096-W-5","price":34.9,"currency_code":"NZD","in_stock":true},{"title":"Yellow\/Blue \/ 1 Pack","offer_id":42796615336032,"sku":"OLED096-YB-1","price":7.9,"currency_code":"NZD","in_stock":true},{"title":"Yellow\/Blue \/ 3 Pack","offer_id":42796615368800,"sku":"OLED096-YB-3","price":21.9,"currency_code":"NZD","in_stock":true},{"title":"Yellow\/Blue \/ 5 Pack","offer_id":42796615401568,"sku":"OLED096-YB-5","price":34.9,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/TZT-0.96-inch-OLED-Product-Hero-YB.png?v=1780559562"},{"product_id":"esp32-wroom-32-development-board-38-pin-nodemcu-cp2102-usb-wifi-bluetooth","title":"ESP32 WROOM-32 Development Board – 38-Pin NodeMCU, CP2102 USB, WiFi + Bluetooth","description":"\u003cstyle\u003e\n  .nzn-desc {\n    width: 100%;\n    max-width: 1400px;\n    margin: 0 auto;\n    font-family: inherit;\n    color: #101114;\n  }\n\n  .nzn-desc,\n  .nzn-desc * {\n    box-sizing: border-box;\n  }\n\n  .nzn-desc .nzn-tabs {\n    width: 100%;\n    max-width: 100%;\n    display: flex;\n    gap: 30px;\n    border-bottom: 1px solid #e7e7e7;\n    overflow-x: auto;\n    overflow-y: hidden;\n    scrollbar-width: none;\n    min-height: 55px;\n    align-items: flex-end;\n    -webkit-overflow-scrolling: touch;\n  }\n\n  .nzn-desc .nzn-tabs::-webkit-scrollbar {\n    display: none;\n  }\n\n  .nzn-desc .nzn-tab {\n    flex: 0 0 auto;\n    background: none;\n    border: 0;\n    padding: 16px 0;\n    font: inherit;\n    font-size: 14px;\n    font-weight: 800;\n    white-space: nowrap;\n    border-bottom: 3px solid transparent;\n    color: #101114;\n    cursor: pointer;\n    transition: color .18s ease, border-color .18s ease;\n  }\n\n  .nzn-desc .nzn-tab:hover {\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-tab.is-active {\n    border-bottom-color: #ff7a2f;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-card {\n    width: 100%;\n    border: 1px solid #e7e7e7;\n    border-top: 0;\n    border-radius: 0 0 18px 18px;\n    padding: 38px 34px;\n    box-shadow: 0 10px 24px rgba(0,0,0,.035);\n    background: #fff;\n    min-height: 620px;\n    display: flex;\n    flex-direction: column;\n  }\n\n  .nzn-desc .nzn-panel {\n    display: none;\n  }\n\n  .nzn-desc .nzn-panel.is-active {\n    display: flex;\n    flex-direction: column;\n    flex: 1;\n    animation: nznTabFade .18s ease both;\n  }\n\n  @keyframes nznTabFade {\n    from {\n      opacity: 0;\n      transform: translateY(6px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .nzn-desc .nzn-panel-content {\n    flex: 1;\n  }\n\n  .nzn-desc .nzn-overview {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 46px;\n    align-items: start;\n  }\n\n  .nzn-desc .nzn-overview-copy {\n    padding-top: 6px;\n    text-align: center;\n  }\n\n  .nzn-desc p {\n    font-size: 15px;\n    line-height: 1.65;\n    color: #60646c;\n    margin: 0;\n  }\n\n  .nzn-desc .nzn-checks {\n    list-style: none;\n    padding: 0;\n    margin: 34px auto 0;\n    display: grid;\n    gap: 18px;\n    width: fit-content;\n    max-width: 100%;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-checks li {\n    display: flex;\n    align-items: center;\n    gap: 12px;\n    font-size: 14.5px;\n    color: #101114;\n    line-height: 1.45;\n  }\n\n  .nzn-desc .nzn-checks li::before {\n    content: \"✓\";\n    flex-shrink: 0;\n    color: #ff7a2f;\n    font-weight: 900;\n    font-size: 16px;\n    line-height: 1;\n  }\n\n  .nzn-desc .nzn-section-title {\n    margin: 0 0 30px;\n    padding-top: 10px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #ff7a2f;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-started {\n    background: #eef6ff;\n    border-left: 4px solid #4a9af7;\n    border-radius: 16px;\n    padding: 26px 28px;\n  }\n\n  .nzn-desc .nzn-started h3 {\n    margin: 0 0 20px;\n    text-transform: uppercase;\n    letter-spacing: .12em;\n    font-size: 14px;\n    font-weight: 900;\n    color: #1f4268;\n  }\n\n  .nzn-desc .nzn-step {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 14px;\n    margin-bottom: 18px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-step:last-child {\n    margin-bottom: 0;\n  }\n\n  .nzn-desc .nzn-step span {\n    width: 34px;\n    height: 34px;\n    border-radius: 999px;\n    background: #fff;\n    border: 1px solid #d9e9fb;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n  }\n\n  .nzn-desc .nzn-step strong {\n    display: block;\n    font-size: 14px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-step p {\n    margin-top: 4px;\n    font-size: 13px;\n    color: #40566c;\n  }\n\n  .nzn-desc .nzn-specs {\n    border-top: 1px solid #e7e7e7;\n  }\n\n  .nzn-desc .nzn-specs div {\n    display: grid;\n    grid-template-columns: minmax(180px, .8fr) 1.4fr;\n    gap: 24px;\n    padding: 15px 14px;\n    border-bottom: 1px solid #e7e7e7;\n    font-size: 14px;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-specs div:nth-child(even) {\n    background: #fafafa;\n  }\n\n  .nzn-desc .nzn-specs span {\n    color: #60646c;\n  }\n\n  .nzn-desc .nzn-specs strong {\n    font-weight: 800;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-included-card {\n    display: grid;\n    grid-template-columns: auto 1fr;\n    gap: 18px;\n    align-items: center;\n    border: 1px solid #e7e7e7;\n    border-radius: 16px;\n    background: #fafafa;\n    padding: 24px;\n  }\n\n  .nzn-desc .nzn-included-qty {\n    width: 48px;\n    height: 48px;\n    border-radius: 999px;\n    background: #fff5ef;\n    border: 1px solid rgba(255,122,47,.2);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-weight: 900;\n    color: #ff7a2f;\n  }\n\n  .nzn-desc .nzn-included-card strong {\n    display: block;\n    font-size: 16px;\n    margin-bottom: 4px;\n  }\n\n  .nzn-desc .nzn-included-card p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-uses {\n    display: grid;\n    grid-template-columns: repeat(2, 1fr);\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-use {\n    border-left: 3px solid #ff7a2f;\n    background: #f7f7f7;\n    padding: 15px 16px;\n    font-size: 14px;\n    line-height: 1.45;\n    text-align: left;\n    border-radius: 0 8px 8px 0;\n  }\n\n  .nzn-desc .nzn-faq {\n    display: grid;\n    gap: 12px;\n  }\n\n  .nzn-desc .nzn-faq-item {\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    background: #fff;\n    text-align: left;\n  }\n\n  .nzn-desc .nzn-faq-item strong {\n    display: block;\n    margin-bottom: 7px;\n    color: #101114;\n  }\n\n  .nzn-desc .nzn-faq-item p {\n    font-size: 14px;\n  }\n\n  .nzn-desc .nzn-note {\n    margin-top: 30px;\n    background: #fafafa;\n    border: 1px solid #e7e7e7;\n    border-radius: 12px;\n    padding: 16px 18px;\n    text-align: center;\n    color: #60646c;\n    font-size: 13px;\n    line-height: 1.55;\n  }\n\n  @media (max-width: 750px) {\n    .nzn-desc {\n      width: 100%;\n      max-width: 100%;\n      padding: 0;\n      overflow: hidden;\n    }\n\n    .nzn-desc .nzn-tabs {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 0;\n      overflow: visible;\n      min-height: unset;\n      border-bottom: 0;\n      width: 100%;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-tab {\n      width: 100%;\n      min-width: 0;\n      padding: 12px 6px;\n      font-size: 12px;\n      line-height: 1.15;\n      text-align: center;\n      white-space: normal;\n      border-bottom: 2px solid #e7e7e7;\n    }\n\n    .nzn-desc .nzn-tab.is-active {\n      border-bottom-color: #ff7a2f;\n    }\n\n    .nzn-desc .nzn-card {\n      padding: 24px 16px;\n      min-height: unset;\n      width: 100%;\n      max-width: 100%;\n      border-top: 1px solid #e7e7e7;\n      border-radius: 0 0 16px 16px;\n    }\n\n    .nzn-desc .nzn-panel.is-active {\n      display: block;\n    }\n\n    .nzn-desc .nzn-overview {\n      grid-template-columns: 1fr;\n      gap: 26px;\n    }\n\n    .nzn-desc .nzn-overview-copy {\n      padding-top: 0;\n      text-align: center;\n    }\n\n    .nzn-desc p {\n      font-size: 14.5px;\n      text-align: center;\n    }\n\n    .nzn-desc .nzn-checks {\n      margin-top: 24px;\n      gap: 13px;\n      width: fit-content;\n      max-width: 100%;\n    }\n\n    .nzn-desc .nzn-checks li {\n      align-items: flex-start;\n      gap: 10px;\n      font-size: 14px;\n      text-align: left;\n    }\n\n    .nzn-desc .nzn-checks li::before {\n      margin-top: 2px;\n    }\n\n    .nzn-desc .nzn-uses {\n      grid-template-columns: 1fr;\n    }\n\n    .nzn-desc .nzn-specs div {\n      grid-template-columns: 1fr;\n      gap: 4px;\n      padding: 13px 10px;\n    }\n\n    .nzn-desc .nzn-section-title {\n      text-align: left;\n      padding-top: 0;\n      margin-bottom: 22px;\n    }\n\n    .nzn-desc .nzn-started {\n      padding: 20px 16px;\n    }\n\n    .nzn-desc .nzn-included-card {\n      grid-template-columns: 1fr;\n      text-align: left;\n      justify-items: start;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nzn-desc\"\u003e\n  \u003cdiv class=\"nzn-tabs\"\u003e\n    \u003cbutton class=\"nzn-tab is-active\" type=\"button\" data-tab=\"overview\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"specifications\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"getting-started\"\u003eGetting Started\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"included\"\u003eWhat's Included\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"uses\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nzn-tab\" type=\"button\" data-tab=\"faqs\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"nzn-card\"\u003e\n    \u003cdiv class=\"nzn-panel is-active\" data-panel=\"overview\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-overview\"\u003e\n          \u003cdiv class=\"nzn-overview-copy\"\u003e\n            \u003cp\u003eThe ESP32 WROOM-32 development board is a 38-pin NodeMCU-style board built around Espressif's ESP-WROOM-32 module, with WiFi and Bluetooth on a single low-power dual-core chip. The onboard CP2102 USB-to-serial chip and USB-C port let you program and debug straight from your computer, making it a versatile foundation for IoT and connected projects.\u003c\/p\u003e\n\n            \u003cul class=\"nzn-checks\"\u003e\n              \u003cli\u003eDual-core 32-bit CPU clocked up to 240MHz\u003c\/li\u003e\n              \u003cli\u003eWiFi 802.11 b\/g\/n plus Bluetooth 4.2 BR\/EDR and BLE\u003c\/li\u003e\n              \u003cli\u003eCP2102 USB-to-serial with USB-C programming\u003c\/li\u003e\n              \u003cli\u003e38-pin layout with UART, SPI, I²C, PWM, ADC and DAC\u003c\/li\u003e\n              \u003cli\u003eOnboard Hall, temperature and capacitive touch sensors\u003c\/li\u003e\n              \u003cli\u003eDeep-sleep current as low as ~6.5µA for battery projects\u003c\/li\u003e\n            \u003c\/ul\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-started\"\u003e\n            \u003ch3\u003eQuick Start\u003c\/h3\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e1\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eAdd the ESP32 Board Package\u003c\/strong\u003e\n                \u003cp\u003eIn the Arduino IDE, add the Espressif ESP32 board package via Boards Manager (or use the Espressif IDF \/ PlatformIO if you prefer).\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e2\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eConnect via USB-C\u003c\/strong\u003e\n                \u003cp\u003eUse a data-capable USB-C cable. The onboard CP2102 handles programming and serial communication, and powers the board over USB.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e3\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eSelect the Board\u003c\/strong\u003e\n                \u003cp\u003eChoose Tools → Board → ESP32 Dev Module, then select the COM port that appears when the board is plugged in.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"nzn-step\"\u003e\n              \u003cspan\u003e4\u003c\/span\u003e\n              \u003cdiv\u003e\n                \u003cstrong\u003eHold BOOT if Upload Stalls\u003c\/strong\u003e\n                \u003cp\u003eIf uploading hangs at \"Connecting...\", hold the BOOT button while the upload begins to force the board into flash mode.\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e GPIO logic is 3.3V, not 5V tolerant. USB-C cable not included. Some systems may require the Silicon Labs CP210x USB driver.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"specifications\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eSpecifications\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-specs\"\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eModule\u003c\/span\u003e\u003cstrong\u003eESP-WROOM-32\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eChipset\u003c\/span\u003e\u003cstrong\u003eESP32 dual-core Xtensa LX6\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eClock Speed\u003c\/span\u003e\u003cstrong\u003eUp to 240 MHz\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eUSB Interface\u003c\/span\u003e\u003cstrong\u003eCP2102, USB-C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eWiFi\u003c\/span\u003e\u003cstrong\u003e802.11 b\/g\/n, 2.4 GHz\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBluetooth\u003c\/span\u003e\u003cstrong\u003e4.2 BR\/EDR and BLE\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eFlash Memory\u003c\/span\u003e\u003cstrong\u003e4 MB (32 Mbit)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eLogic Voltage\u003c\/span\u003e\u003cstrong\u003e3.3V\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eUSB Power Input\u003c\/span\u003e\u003cstrong\u003e5V via USB-C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eVIN Input Voltage\u003c\/span\u003e\u003cstrong\u003e5–12V via VIN pin\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin Layout\u003c\/span\u003e\u003cstrong\u003e38 pins (2 × 19)\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eUsable GPIO\u003c\/span\u003e\u003cstrong\u003eUp to ~25 multifunction pins\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eInterfaces\u003c\/span\u003e\u003cstrong\u003eUART, SPI, SDIO, I²C, I²S, PWM, ADC, DAC, IR\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOnboard Sensors\u003c\/span\u003e\u003cstrong\u003eHall, temperature, capacitive touch\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eAntenna\u003c\/span\u003e\u003cstrong\u003eOnboard PCB antenna, 2 dBi\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eSecurity\u003c\/span\u003e\u003cstrong\u003eWPA \/ WPA2 \/ WPA2 Enterprise \/ WPS\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eDeep Sleep Current\u003c\/span\u003e\u003cstrong\u003eAs low as ~6.5µA\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eDefault Baud Rate\u003c\/span\u003e\u003cstrong\u003e115200 bps\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eOperating Temperature\u003c\/span\u003e\u003cstrong\u003e-20°C to 85°C\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003eBoard Dimensions\u003c\/span\u003e\u003cstrong\u003e52 × 29 × 15mm\u003c\/strong\u003e\n\u003c\/div\u003e\n          \u003cdiv\u003e\n\u003cspan\u003ePin Pitch\u003c\/span\u003e\u003cstrong\u003e2.54mm breadboard spacing\u003c\/strong\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e The 38-pin board is wide. On a single standard breadboard it covers nearly the full width, leaving only one row of free sockets on one side.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"getting-started\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003cdiv class=\"nzn-started\"\u003e\n          \u003ch3\u003eGetting Started\u003c\/h3\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e1\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eInstall Your Toolchain\u003c\/strong\u003e\n              \u003cp\u003eInstall the Arduino IDE and add the Espressif ESP32 board package via Boards Manager, or set up PlatformIO or the ESP-IDF if you prefer.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e2\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eInstall CP210x Driver if Needed\u003c\/strong\u003e\n              \u003cp\u003eMost systems detect the CP2102 automatically. If the board does not appear as a COM port, install the Silicon Labs CP210x VCP driver.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e3\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eConnect via USB-C\u003c\/strong\u003e\n              \u003cp\u003eUse a data-capable USB-C cable. USB supplies 5V and the onboard regulator provides the 3.3V the module runs on.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e4\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eSelect Board and Port\u003c\/strong\u003e\n              \u003cp\u003eSet Tools → Board → ESP32 Dev Module, then pick the COM port that appears when the board is connected.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e5\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eUse BOOT and EN for Flashing\u003c\/strong\u003e\n              \u003cp\u003eIf the upload stalls at \"Connecting...\", hold BOOT as the upload starts to enter flash mode. EN is the reset button and restarts the board.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-step\"\u003e\n            \u003cspan\u003e6\u003c\/span\u003e\n            \u003cdiv\u003e\n              \u003cstrong\u003eWatch the Status LEDs\u003c\/strong\u003e\n              \u003cp\u003eThe red LED indicates power and the blue LED shows working status, so you can confirm the board state at a glance.\u003c\/p\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Powering through VIN, supply 5–12V. Do not power VIN and USB at the same time from separate sources.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"included\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eWhat's Included\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-included-card\"\u003e\n          \u003cdiv class=\"nzn-included-qty\"\u003e1×\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003cstrong\u003eESP32 WROOM-32 38-pin development board\u003c\/strong\u003e\n            \u003cp\u003eNodeMCU-style ESP-WROOM-32 board with CP2102 USB-to-serial chip, USB-C port, and pin headers pre-soldered ready for breadboard use.\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e USB-C cable is not included.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"uses\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Uses\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-uses\"\u003e\n          \u003cdiv class=\"nzn-use\"\u003eInternet of Things and connected sensor nodes\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eHome automation and smart device control\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eWiFi and Bluetooth wireless projects\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eWireless industrial control and monitoring\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eBattery-powered projects using deep sleep\u003c\/div\u003e\n          \u003cdiv class=\"nzn-use\"\u003eRobotics, prototyping and Arduino learning\u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e Supports STA, AP and STA+AP modes plus standard AT commands and FOTA updates.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nzn-panel\" data-panel=\"faqs\"\u003e\n      \u003cdiv class=\"nzn-panel-content\"\u003e\n        \u003ch3 class=\"nzn-section-title\"\u003eCommon Questions\u003c\/h3\u003e\n\n        \u003cdiv class=\"nzn-faq\"\u003e\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhich board do I select in the Arduino IDE?\u003c\/strong\u003e\n            \u003cp\u003eSelect \"ESP32 Dev Module\" after installing the Espressif ESP32 board package via Boards Manager.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eDo I need a driver?\u003c\/strong\u003e\n            \u003cp\u003eThe board uses a CP2102 USB-to-serial chip. Most systems detect it automatically, but some may need the Silicon Labs CP210x VCP driver.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eAre the GPIO pins 5V tolerant?\u003c\/strong\u003e\n            \u003cp\u003eNo. ESP32 logic is 3.3V. Use a level shifter when connecting 5V signals to avoid damaging the board.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWill it fit on a single breadboard?\u003c\/strong\u003e\n            \u003cp\u003eThe 38-pin board is wide and covers most of a standard breadboard, leaving only one row of sockets free on one side. Many users span two breadboards or use jumper wires.\u003c\/p\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"nzn-faq-item\"\u003e\n            \u003cstrong\u003eWhat are the two buttons for?\u003c\/strong\u003e\n            \u003cp\u003eEN resets the board, and BOOT puts it into flash\/download mode. Hold BOOT during upload if the IDE stalls at \"Connecting...\".\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nzn-note\"\u003e\n        \u003cstrong\u003ePlease note:\u003c\/strong\u003e This is a third-party ESP32 development board based on the Espressif ESP-WROOM-32 module.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  document.addEventListener('click', function(event) {\n    const tab = event.target.closest('.nzn-desc .nzn-tab');\n    if (!tab) return;\n\n    const wrapper = tab.closest('.nzn-desc');\n    if (!wrapper) return;\n\n    const target = tab.getAttribute('data-tab');\n\n    wrapper.querySelectorAll('.nzn-tab').forEach(function(item) {\n      item.classList.remove('is-active');\n    });\n\n    wrapper.querySelectorAll('.nzn-panel').forEach(function(panel) {\n      panel.classList.remove('is-active');\n    });\n\n    tab.classList.add('is-active');\n\n    const panel = wrapper.querySelector('[data-panel=\"' + target + '\"]');\n    if (panel) panel.classList.add('is-active');\n  });\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42804989263968,"sku":"MCU-ESP32-38P-CP2102","price":15.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/ESP32-topdown-module.png?v=1780789710"},{"product_id":"arduino-uno-r3-atmega328p-development-board-usb-c","title":"Uno R3 – ATmega328P Development Board, USB-C, Compatible with Arduino","description":"\u003c!-- NZN Electronics — Uno R3 ATmega328P USB-C — Template v5 --\u003e\n\u003cstyle\u003e\n  .nznd{width:100%;max-width:1400px;margin:0 auto;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#101114}\n  .nznd,.nznd *{box-sizing:border-box}\n  .nznd__tabs{width:100%;display:flex;gap:0;border-bottom:2px solid #e7e7e7;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}\n  .nznd__tabs::-webkit-scrollbar{display:none}\n  .nznd__tab{flex:0 0 auto;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;padding:13px 18px;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13.5px;font-weight:700;white-space:nowrap;color:#60646c;cursor:pointer;transition:color .16s,border-color .16s}\n  .nznd__tab:hover{color:#ff7a2f}\n  .nznd__tab.is-active{color:#ff7a2f;border-bottom-color:#ff7a2f}\n  .nznd__card{width:100%;background:#fff;border:1px solid #e7e7e7;border-top:none;border-radius:0 0 16px 16px;padding:36px 32px;box-shadow:0 8px 24px rgba(0,0,0,.04);min-height:480px}\n  .nznd__panel{display:none}\n  .nznd__panel.is-active{display:block;animation:nzndIn .22s cubic-bezier(.22,.68,0,1.2) both}\n  @keyframes nzndIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}\n  .nznd__panel h2,.nznd__panel h3,.nznd__panel p,.nznd__panel li,.nznd__panel dt,.nznd__panel dd,.nznd__panel strong,.nznd__panel span{text-align:left}\n  .nznd__stat span{text-align:center}\n  .nznd__strip{border-left:3px solid #ff7a2f;background:#fff5ef;border-radius:0 10px 10px 0;padding:18px 20px;margin-bottom:24px}\n  .nznd__strip h2{font-size:18px;font-weight:800;color:#101114;margin:0 0 7px;line-height:1.25;text-align:left}\n  .nznd__strip p{font-size:14px;line-height:1.65;color:#60646c;margin:0;text-align:left}\n  .nznd__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}\n  .nznd__stat{background:#f9fafb;border:1px solid #e7e7e7;border-top:3px solid transparent;border-radius:10px;padding:14px 12px;text-align:center;transition:border-top-color .18s,box-shadow .18s}\n  .nznd__stat:hover{border-top-color:#ff7a2f;box-shadow:0 4px 12px rgba(255,122,47,.1)}\n  .nznd__stat-val{display:block;font-size:19px;font-weight:800;color:#101114;letter-spacing:-.02em;white-space:nowrap;margin-bottom:4px;text-align:center}\n  .nznd__stat-lbl{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#60646c;text-align:center}\n  .nznd__pills{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 22px}\n  .nznd__pill{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e7e7e7;border-radius:999px;padding:6px 13px;font-size:13px;font-weight:500;color:#101114;box-shadow:0 1px 3px rgba(0,0,0,.05)}\n  .nznd__dot{width:7px;height:7px;border-radius:50%;background:#ff7a2f;flex-shrink:0;display:inline-block}\n  .nznd__dot--blue{background:#4a9af7}\n  .nznd__callout{display:flex;align-items:flex-start;gap:12px;border-radius:10px;padding:15px 18px;margin-bottom:22px}\n  .nznd__callout--orange{background:#fff5ef;border:1px solid rgba(255,122,47,.3)}\n  .nznd__callout--blue{background:#eef5ff;border:1px solid rgba(74,154,247,.3)}\n  .nznd__callout svg{width:17px;height:17px;flex-shrink:0;margin-top:1px}\n  .nznd__callout strong{display:block;font-size:13px;font-weight:700;color:#101114;margin-bottom:4px;text-align:left}\n  .nznd__callout p{font-size:13px;line-height:1.6;color:#60646c;margin:0;text-align:left}\n  .nznd__eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ff7a2f;margin:0 0 16px;text-align:left}\n  .nznd__body{font-size:14.5px;line-height:1.7;color:#60646c;margin:0 0 22px;text-align:left}\n  .nznd__specs{border:1px solid #e7e7e7;border-radius:10px;overflow:hidden;margin-bottom:22px}\n  .nznd__spec-row{display:grid;grid-template-columns:minmax(200px,.95fr) 1.4fr;border-bottom:1px solid #e7e7e7}\n  .nznd__spec-row:last-child{border-bottom:none}\n  .nznd__spec-row:nth-child(even){background:#fafafa}\n  .nznd__spec-row dt{padding:12px 15px;font-size:13.5px;font-weight:500;color:#60646c;border-right:1px solid #e7e7e7;text-align:left}\n  .nznd__spec-row dd{padding:12px 15px;font-size:13.5px;font-weight:700;color:#101114;text-align:left}\n  .nznd__steps{list-style:none;padding:0;margin:0;display:grid;gap:9px}\n  .nznd__step{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;background:#f9fafb;border:1px solid #e7e7e7;border-radius:10px;padding:13px}\n  .nznd__step-n{width:34px;height:34px;border-radius:8px;background:#fff5ef;border:1px solid rgba(255,122,47,.3);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#ff7a2f;flex-shrink:0}\n  .nznd__step strong{display:block;font-size:13.5px;font-weight:700;color:#101114;margin-bottom:3px;text-align:left}\n  .nznd__step p{font-size:12.5px;line-height:1.55;color:#60646c;margin:0;text-align:left}\n  .nznd__step code{font-size:12px;font-family:monospace;background:#fff;border:1px solid #e7e7e7;border-radius:4px;padding:1px 5px;color:#101114}\n  .nznd__uses{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:22px}\n  .nznd__use{background:#f9fafb;border:1px solid #e7e7e7;border-left:3px solid #ff7a2f;border-radius:0 9px 9px 0;padding:14px;transition:background .15s,box-shadow .15s}\n  .nznd__use:hover{background:#fff5ef;box-shadow:0 2px 8px rgba(255,122,47,.1)}\n  .nznd__use strong{display:block;font-size:13.5px;font-weight:700;color:#101114;margin-bottom:4px;text-align:left}\n  .nznd__use p{font-size:12.5px;line-height:1.5;color:#60646c;margin:0;text-align:left}\n  .nznd__faq{display:grid;gap:8px}\n  .nznd__faq-item{border:1px solid #e7e7e7;border-radius:10px;overflow:hidden;background:#fff}\n  .nznd__faq-q{width:100%;background:#f9fafb;border:none;padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:13.5px;font-weight:700;color:#101114;cursor:pointer;text-align:left;transition:background .15s,color .15s}\n  .nznd__faq-q:hover{background:#fff5ef}\n  .nznd__faq-item.is-open .nznd__faq-q{background:#fff5ef;color:#ff7a2f}\n  .nznd__faq-icon{width:20px;height:20px;flex-shrink:0;border-radius:50%;background:#e7e7e7;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .25s cubic-bezier(.34,1.56,.64,1)}\n  .nznd__faq-q:hover .nznd__faq-icon{background:#ffe0cc}\n  .nznd__faq-item.is-open .nznd__faq-icon{background:#ff7a2f;transform:rotate(45deg)}\n  .nznd__faq-icon svg{width:10px;height:10px;stroke:#60646c}\n  .nznd__faq-item.is-open .nznd__faq-icon svg{stroke:#fff}\n  .nznd__faq-a{display:block;max-height:0;overflow:hidden;padding:0 17px;font-size:13.5px;line-height:1.65;color:#60646c;border-top:1px solid transparent;text-align:left;transition:max-height .32s cubic-bezier(.4,0,.2,1),padding .24s ease,border-color .24s ease}\n  .nznd__faq-item.is-open .nznd__faq-a{max-height:300px;padding:14px 17px;border-top-color:#e7e7e7}\n  .nznd__pinout-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-bottom:22px}\n  .nznd__pinout-card{background:#f9fafb;border:1px solid #e7e7e7;border-radius:10px;padding:16px}\n  .nznd__pinout-card h3{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#ff7a2f;margin:0 0 10px}\n  .nznd__pinout-card ul{list-style:none;padding:0;margin:0;display:grid;gap:4px}\n  .nznd__pinout-card li{font-size:12.5px;color:#60646c;display:flex;gap:8px}\n  .nznd__pinout-card li strong{color:#101114;min-width:80px;flex-shrink:0}\n  @media(max-width:750px){.nznd__card{padding:22px 16px;min-height:0}.nznd__stats{grid-template-columns:repeat(2,1fr)}.nznd__uses{grid-template-columns:1fr 1fr}.nznd__pinout-grid{grid-template-columns:1fr}.nznd__spec-row{grid-template-columns:1fr}.nznd__spec-row dt{border-right:none;border-bottom:1px solid #e7e7e7;padding-bottom:5px}.nznd__spec-row dd{padding-top:5px}.nznd__tab{padding:11px 12px;font-size:12.5px}}\n  @media(max-width:480px){.nznd__uses{grid-template-columns:1fr}.nznd__tab{padding:10px 9px;font-size:11.5px}}\n  @media(prefers-reduced-motion:reduce){.nznd__panel{animation:none!important}.nznd__faq-a{transition:none!important}.nznd__faq-icon{transition:background .15s!important}.nznd *{transition-duration:.01ms!important}}\n\u003c\/style\u003e\n\n\u003carticle class=\"nznd\" itemscope itemtype=\"https:\/\/schema.org\/Product\"\u003e\n  \u003cmeta itemprop=\"name\" content=\"Uno R3 ATmega328P Development Board USB-C, Compatible with Arduino\"\u003e\n  \u003cmeta itemprop=\"sku\" content=\"MCU-UNO-R3-USBC-1PK\"\u003e\n  \u003cmeta itemprop=\"brand\" content=\"NZN Electronics\"\u003e\n\n  \u003cnav class=\"nznd__tabs\" role=\"tablist\" aria-label=\"Product sections\"\u003e\n    \u003cbutton class=\"nznd__tab is-active\" type=\"button\" data-tab=\"overview\" role=\"tab\" aria-selected=\"true\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"specs\" role=\"tab\" aria-selected=\"false\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"pinout\" role=\"tab\" aria-selected=\"false\"\u003ePinout Guide\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"uses\" role=\"tab\" aria-selected=\"false\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"faq\" role=\"tab\" aria-selected=\"false\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/nav\u003e\n\n  \u003cdiv class=\"nznd__card\"\u003e\n\n    \u003csection class=\"nznd__panel is-active\" data-panel=\"overview\" role=\"tabpanel\"\u003e\n      \u003cdiv class=\"nznd__strip\"\u003e\n        \u003ch2 itemprop=\"name\"\u003eUno R3 — ATmega328P Development Board with USB-C\u003c\/h2\u003e\n        \u003cp itemprop=\"description\"\u003eThe classic entry-point into microcontroller development, now with a modern USB-C port. Built around the ATmega328P at 16 MHz with 14 digital I\/O pins, 6 analog inputs, hardware UART\/SPI\/I²C, a barrel jack for standalone power, and the full Uno R3 shield-compatible pinout. Pre-soldered headers, ready to use. Fully compatible with the Arduino IDE — select Arduino Uno and upload.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__stats\" role=\"list\" aria-label=\"Key specifications\"\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e14\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eDigital I\/O Pins\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e32 KB\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eFlash Memory\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e16 MHz\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eClock Speed\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n\u003cspan class=\"nznd__stat-val\"\u003e6\u003c\/span\u003e\u003cspan class=\"nznd__stat-lbl\"\u003eAnalog Inputs\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cul class=\"nznd__pills\" aria-label=\"Key features\"\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003eATmega328P @ 16 MHz\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e14 Digital I\/O (6 PWM)\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e6 Analog Inputs (A0–A5)\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003ePre-soldered Headers\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e7–12V Barrel Jack\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eUSB Type-C\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eArduino IDE Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eUno R3 Shield Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e5V Logic\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003eICSP Header\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eStandard Uno R3 pinout — all shields and libraries work\u003c\/strong\u003e\n          \u003cp\u003eFull R3 shield pinout with SCL\/SDA on the dedicated header. All Arduino Uno shields, community sketches, and libraries are compatible. The only difference from the original is USB-C instead of USB-B.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--orange\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#ff7a2f\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003e5V logic — use a level shifter with 3.3V devices\u003c\/strong\u003e\n          \u003cp\u003eAll I\/O pins run at 5V. When connecting 3.3V sensors, ESP32 GPIO, or Raspberry Pi pins, use a logic level shifter to avoid damaging those components.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"specs\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eElectrical \u0026amp; Physical Specifications\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eFull specifications for the Uno R3 ATmega328P USB-C development board. All values at 5V supply unless stated.\u003c\/p\u003e\n      \u003cdl class=\"nznd__specs\" itemprop=\"additionalProperty\"\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eMicrocontroller\u003c\/dt\u003e\n\u003cdd\u003eATmega328P (8-bit AVR)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUSB Connector\u003c\/dt\u003e\n\u003cdd\u003eType-C (data + power)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eHeader State\u003c\/dt\u003e\n\u003cdd\u003ePre-soldered, shield-ready\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eLogic Voltage\u003c\/dt\u003e\n\u003cdd\u003e5V DC\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUSB Input Voltage\u003c\/dt\u003e\n\u003cdd\u003e5V via USB-C\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eExternal Power Input\u003c\/dt\u003e\n\u003cdd\u003e7–12V DC via 2.1 × 5.5 mm barrel jack\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003e5V Output\u003c\/dt\u003e\n\u003cdd\u003eRegulated 5V @ up to 500 mA (USB)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003e3.3V Output\u003c\/dt\u003e\n\u003cdd\u003eRegulated 3.3V @ up to 50 mA\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDigital I\/O Pins\u003c\/dt\u003e\n\u003cdd\u003e14 (pins D0–D13)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003ePWM Pins\u003c\/dt\u003e\n\u003cdd\u003e6 (D3, D5, D6, D9, D10, D11)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eAnalog Input Pins\u003c\/dt\u003e\n\u003cdd\u003e6 (A0–A5, 10-bit ADC)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDC Current per I\/O Pin\u003c\/dt\u003e\n\u003cdd\u003e40 mA max\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eFlash Memory\u003c\/dt\u003e\n\u003cdd\u003e32 KB (0.5 KB used by bootloader)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eSRAM\u003c\/dt\u003e\n\u003cdd\u003e2 KB\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eEEPROM\u003c\/dt\u003e\n\u003cdd\u003e1 KB\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eClock Speed\u003c\/dt\u003e\n\u003cdd\u003e16 MHz crystal oscillator\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUART\u003c\/dt\u003e\n\u003cdd\u003e1 × hardware serial (D0\/D1)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eSPI\u003c\/dt\u003e\n\u003cdd\u003e1 × (D10–D13 + ICSP header)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eI²C\u003c\/dt\u003e\n\u003cdd\u003e1 × (A4 SDA \/ A5 SCL + dedicated header)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eBoard Dimensions\u003c\/dt\u003e\n\u003cdd\u003e53 × 68 mm\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eShield Compatibility\u003c\/dt\u003e\n\u003cdd\u003eArduino Uno R3 standard footprint\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eICSP Header\u003c\/dt\u003e\n\u003cdd\u003eYes (6-pin AVR ISP)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eIDE Compatibility\u003c\/dt\u003e\n\u003cdd\u003eArduino IDE — select \"Arduino Uno\"\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eBuilt-in LED\u003c\/dt\u003e\n\u003cdd\u003eD13 (user-programmable)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eReset Button\u003c\/dt\u003e\n\u003cdd\u003eYes\u003c\/dd\u003e\n\u003c\/div\u003e\n      \u003c\/dl\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"pinout\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003ePinout \u0026amp; Getting Started\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe Uno R3 exposes its pins on two main headers plus dedicated I²C (SCL\/SDA) and power rails. Standard Uno shield footprint — all community shields fit directly.\u003c\/p\u003e\n      \u003cdiv class=\"nznd__pinout-grid\"\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eDigital I\/O (D0–D13)\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD0 \/ D1\u003c\/strong\u003e Hardware UART RX\/TX\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD2 \/ D3\u003c\/strong\u003e External interrupts INT0\/INT1\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD3,5,6,9,10,11\u003c\/strong\u003e PWM outputs (6 pins)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD10–D13\u003c\/strong\u003e SPI (SS\/MOSI\/MISO\/SCK)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eD13\u003c\/strong\u003e Built-in LED (LED_BUILTIN)\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eAnalog Inputs (A0–A5)\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eA0–A5\u003c\/strong\u003e 10-bit ADC (0–5V)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eA4 \/ A5\u003c\/strong\u003e I²C SDA\/SCL (shared)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eSCL \/ SDA\u003c\/strong\u003e Dedicated I²C header (R3)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eAREF\u003c\/strong\u003e External voltage reference\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003ePower Pins\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eVIN\u003c\/strong\u003e Barrel jack input (7–12V)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003e5V\u003c\/strong\u003e Regulated 5V out (USB or barrel)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003e3.3V\u003c\/strong\u003e Regulated 3.3V out (50 mA max)\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eGND\u003c\/strong\u003e Multiple ground pins\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eRESET\u003c\/strong\u003e Active-low reset\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__pinout-card\"\u003e\n          \u003ch3\u003eCommunication\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003e\n\u003cstrong\u003eSerial\u003c\/strong\u003e D0\/D1 — USB via onboard chip\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eI²C\u003c\/strong\u003e A4 SDA \/ A5 SCL\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eSPI\u003c\/strong\u003e D10–D13 + ICSP header\u003c\/li\u003e\n            \u003cli\u003e\n\u003cstrong\u003eICSP\u003c\/strong\u003e 6-pin AVR ISP header\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003col class=\"nznd__steps\" aria-label=\"Getting started steps\"\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e1\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eConnect via USB Type-C\u003c\/strong\u003e\u003cp\u003eUse a data-capable USB-C cable. The board powers up automatically and creates a serial COM port. The green power LED illuminates.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e2\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eInstall driver if needed (Windows)\u003c\/strong\u003e\u003cp\u003eMost Windows 10\/11 systems detect the USB-to-serial chip automatically. If the COM port doesn't appear, install the relevant USB serial driver for your board's chip.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e3\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eSelect board in Arduino IDE\u003c\/strong\u003e\u003cp\u003eGo to \u003ccode\u003eTools \u0026gt; Board \u0026gt; Arduino AVR Boards \u0026gt; Arduino Uno\u003c\/code\u003e. Then select the COM port that appeared under Tools \u0026gt; Port.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e4\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003eUpload Blink to verify\u003c\/strong\u003e\u003cp\u003eOpen \u003ccode\u003eFile \u0026gt; Examples \u0026gt; 01.Basics \u0026gt; Blink\u003c\/code\u003e and click Upload. The D13 LED should blink once per second — your board is working.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n        \u003cli class=\"nznd__step\"\u003e\n\u003cdiv class=\"nznd__step-n\"\u003e5\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cstrong\u003ePower standalone with barrel jack\u003c\/strong\u003e\u003cp\u003eFor projects away from a computer, connect a 7–12V DC centre-positive supply to the barrel jack (2.1 × 5.5 mm). The onboard regulator provides 5V and 3.3V.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n      \u003c\/ol\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"uses\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eApplications \u0026amp; Use Cases\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe Uno R3 is the most widely used development board in the world — a well-documented platform with thousands of community tutorials, compatible shields, and libraries covering almost every use case.\u003c\/p\u003e\n      \u003cdiv class=\"nznd__uses\"\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eLearning \u0026amp; STEM Education\u003c\/strong\u003e\u003cp\u003eThe standard first board for electronics and programming education. Unbreakable community support, official Arduino tutorials, and classroom-proven curriculum.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eSensors \u0026amp; Data Logging\u003c\/strong\u003e\u003cp\u003eRead temperature, humidity, pressure, distance, light, and motion sensors. Log data over serial or store to SD card modules.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eMotor \u0026amp; Servo Control\u003c\/strong\u003e\u003cp\u003eDrive DC motors, stepper motors, and servos via compatible shields or driver modules. PWM outputs handle precise speed and angle control.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eDisplay \u0026amp; LED Projects\u003c\/strong\u003e\u003cp\u003eControl OLED displays, LCD shields, 7-segment modules, NeoPixel strips, and LED matrices with well-supported libraries.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eShield-Based Prototyping\u003c\/strong\u003e\u003cp\u003eDrop any Uno R3-compatible shield directly onto the board — motor shields, relay shields, Ethernet, GSM, data logging, and more.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eHome Automation \u0026amp; Control\u003c\/strong\u003e\u003cp\u003eControl relays, solenoids, and actuators. Communicate with other microcontrollers via UART, I²C, or SPI for larger system builds.\u003c\/p\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eUno vs Nano — which to choose?\u003c\/strong\u003e\n          \u003cp\u003eChoose the Uno when shield compatibility, the larger form factor, or the extra 3.3V current capacity matter. Choose the Nano when breadboard use or a compact embedded footprint is more important. Both use the same ATmega328P and IDE settings.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"nznd__panel\" data-panel=\"faq\" role=\"tabpanel\"\u003e\n      \u003cp class=\"nznd__eyebrow\"\u003eFrequently Asked Questions\u003c\/p\u003e\n      \u003cdl class=\"nznd__faq\"\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eIs this compatible with official Arduino Uno shields?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eYes. This board uses the full Arduino Uno R3 pinout including the dedicated SCL\/SDA header. All Uno-compatible shields, motor shields, relay shields, display shields, and community add-ons plug in directly.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eCan I power it without a computer?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eYes. Connect a 7–12V DC centre-positive supply via the barrel jack (2.1 × 5.5 mm). The board selects the power source automatically. For motors or high-current shields, a powered barrel supply is recommended over USB.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eWhat do I set in the Arduino IDE to program it?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eGo to Tools \u0026gt; Board \u0026gt; Arduino AVR Boards \u0026gt; Arduino Uno. Then select your COM port under Tools \u0026gt; Port. No special processor settings needed — just upload directly.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eAre the I\/O pins 5V or 3.3V?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eAll digital and analog I\/O pins operate at 5V logic. When connecting 3.3V devices such as an ESP32, Raspberry Pi GPIO, or most modern sensors, use a logic level shifter to avoid damaging the 3.3V device.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eHow much current can I draw from the 5V pin?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eUp to ~500 mA when powered by USB. With a capable barrel jack supply, the limit is higher but still constrained by the onboard regulator's thermal rating. Each individual I\/O pin is limited to 40 mA. Use driver modules for motors and high-current loads.\u003c\/dd\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003eIs this a genuine Arduino board?\u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eThis is a third-party board compatible with the Arduino Uno R3. It is not manufactured by Arduino S.r.l. but uses the same ATmega328P, the same R3 pinout, and is fully compatible with the Arduino IDE and the entire Uno ecosystem.\u003c\/dd\u003e\n        \u003c\/div\u003e\n      \u003c\/dl\u003e\n    \u003c\/section\u003e\n\n  \u003c\/div\u003e\n\u003c\/article\u003e\n\n\u003cscript\u003e\n(function(){\n  'use strict';\n  var w=document.currentScript?(document.currentScript.closest('.nznd')||document.querySelector('.nznd')):document.querySelector('.nznd');\n  if(!w)return;\n  w.addEventListener('click',function(e){\n    var tab=e.target.closest('.nznd__tab');\n    if(tab){\n      var t=tab.getAttribute('data-tab');\n      w.querySelectorAll('.nznd__tab').forEach(function(x){x.classList.remove('is-active');x.setAttribute('aria-selected','false')});\n      w.querySelectorAll('.nznd__panel').forEach(function(x){x.classList.remove('is-active')});\n      tab.classList.add('is-active');tab.setAttribute('aria-selected','true');\n      var p=w.querySelector('[data-panel=\"'+t+'\"]');if(p)p.classList.add('is-active');\n      return;\n    }\n    var btn=e.target.closest('.nznd__faq-q');\n    if(btn){\n      var item=btn.closest('.nznd__faq-item');var open=item.classList.contains('is-open');\n      w.querySelectorAll('.nznd__faq-item').forEach(function(x){x.classList.remove('is-open');x.querySelector('.nznd__faq-q').setAttribute('aria-expanded','false')});\n      if(!open){item.classList.add('is-open');btn.setAttribute('aria-expanded','true')}\n    }\n  });\n}());\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"Default Title","offer_id":42806901899360,"sku":"MCU-UNO-R3-USBC-1PK","price":9.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/ArduinoUnoProductHero.png?v=1780920645"},{"product_id":"hc-sr04-ultrasonic-distance-sensor-module","title":"HC-SR04 Ultrasonic Distance Sensor Module","description":"\u003c!--\n  NZN Electronics — HC-SR04 Ultrasonic Distance Sensor\n  Description Template v5\n  SEO: all content in DOM, semantic HTML, dl\/dt\/dd specs\n--\u003e\n\n\u003cstyle\u003e\n  \/* ── Root ── *\/\n  .nznd { width: 100%; max-width: 1400px; margin: 0 auto; font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: #101114; }\n  .nznd, .nznd * { box-sizing: border-box; }\n\n  \/* ── Tabs ── *\/\n  .nznd__tabs { width: 100%; display: flex; gap: 0; border-bottom: 2px solid #e7e7e7; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; -webkit-overflow-scrolling: touch; }\n  .nznd__tabs::-webkit-scrollbar { display: none; }\n  .nznd__tab {\n    flex: 0 0 auto; background: none; border: none;\n    border-bottom: 2px solid transparent; margin-bottom: -2px;\n    padding: 13px 18px;\n    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n    font-size: 13.5px; font-weight: 700; white-space: nowrap; color: #60646c;\n    cursor: pointer; transition: color .16s, border-color .16s;\n  }\n  .nznd__tab:hover { color: #ff7a2f; }\n  .nznd__tab.is-active { color: #ff7a2f; border-bottom-color: #ff7a2f; }\n\n  \/* ── Card ── *\/\n  .nznd__card {\n    width: 100%; background: #fff;\n    border: 1px solid #e7e7e7; border-top: none;\n    border-radius: 0 0 16px 16px;\n    padding: 36px 32px;\n    box-shadow: 0 8px 24px rgba(0,0,0,.04);\n    min-height: 480px;\n  }\n\n  \/* ── Panels ── *\/\n  .nznd__panel { display: none; }\n  .nznd__panel.is-active { display: block; animation: nzndIn .22s cubic-bezier(.22,.68,0,1.2) both; }\n  @keyframes nzndIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }\n\n  \/* ── Force left-align ── *\/\n  .nznd__panel h2, .nznd__panel h3, .nznd__panel p,\n  .nznd__panel li, .nznd__panel dt, .nznd__panel dd,\n  .nznd__panel strong, .nznd__panel span { text-align: left; }\n  .nznd__stat span { text-align: center; }\n\n  \/* ── Orange accent strip ── *\/\n  .nznd__strip { border-left: 3px solid #ff7a2f; background: #fff5ef; border-radius: 0 10px 10px 0; padding: 18px 20px; margin-bottom: 24px; }\n  .nznd__strip h2 { font-size: 18px; font-weight: 800; color: #101114; margin: 0 0 7px; line-height: 1.25; text-align: left; }\n  .nznd__strip p  { font-size: 14px; line-height: 1.65; color: #60646c; margin: 0; text-align: left; }\n\n  \/* ── Stat cards ── *\/\n  .nznd__stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 22px; }\n  .nznd__stat {\n    background: #f9fafb; border: 1px solid #e7e7e7; border-top: 3px solid transparent;\n    border-radius: 10px; padding: 14px 12px; text-align: center;\n    transition: border-top-color .18s, box-shadow .18s;\n  }\n  .nznd__stat:hover { border-top-color: #ff7a2f; box-shadow: 0 4px 12px rgba(255,122,47,.1); }\n  .nznd__stat-val { display: block; font-size: 19px; font-weight: 800; color: #101114; letter-spacing: -.02em; white-space: nowrap; margin-bottom: 4px; text-align: center; }\n  .nznd__stat-lbl { display: block; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: #60646c; text-align: center; }\n\n  \/* ── Feature pills ── *\/\n  .nznd__pills { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 0 0 22px; }\n  .nznd__pill { display: inline-flex; align-items: center; gap: 7px; background: #fff; border: 1px solid #e7e7e7; border-radius: 999px; padding: 6px 13px; font-size: 13px; font-weight: 500; color: #101114; box-shadow: 0 1px 3px rgba(0,0,0,.05); }\n  .nznd__dot { width: 7px; height: 7px; border-radius: 50%; background: #ff7a2f; flex-shrink: 0; display: inline-block; }\n  .nznd__dot--blue { background: #4a9af7; }\n\n  \/* ── Callout ── *\/\n  .nznd__callout { display: flex; align-items: flex-start; gap: 12px; border-radius: 10px; padding: 15px 18px; margin-bottom: 22px; }\n  .nznd__callout--orange { background: #fff5ef; border: 1px solid rgba(255,122,47,.3); }\n  .nznd__callout--blue   { background: #eef5ff; border: 1px solid rgba(74,154,247,.3); }\n  .nznd__callout svg { width: 17px; height: 17px; flex-shrink: 0; margin-top: 1px; }\n  .nznd__callout strong { display: block; font-size: 13px; font-weight: 700; color: #101114; margin-bottom: 4px; text-align: left; }\n  .nznd__callout p { font-size: 13px; line-height: 1.6; color: #60646c; margin: 0; text-align: left; }\n\n  \/* ── Eyebrow label ── *\/\n  .nznd__eyebrow { font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #ff7a2f; margin: 0 0 16px; text-align: left; }\n  .nznd__body { font-size: 14.5px; line-height: 1.7; color: #60646c; margin: 0 0 22px; text-align: left; }\n\n  \/* ── Spec dl table ── *\/\n  .nznd__specs { border: 1px solid #e7e7e7; border-radius: 10px; overflow: hidden; margin-bottom: 22px; }\n  .nznd__spec-row { display: grid; grid-template-columns: minmax(170px, .85fr) 1.4fr; border-bottom: 1px solid #e7e7e7; }\n  .nznd__spec-row:last-child { border-bottom: none; }\n  .nznd__spec-row:nth-child(even) { background: #fafafa; }\n  .nznd__spec-row dt { padding: 12px 15px; font-size: 13.5px; font-weight: 500; color: #60646c; border-right: 1px solid #e7e7e7; text-align: left; }\n  .nznd__spec-row dd { padding: 12px 15px; font-size: 13.5px; font-weight: 700; color: #101114; text-align: left; }\n\n  \/* ── Wiring layout ── *\/\n  .nznd__wiring { display: grid; grid-template-columns: 200px 1fr; gap: 28px; margin-bottom: 22px; align-items: start; }\n\n  \/* ── Module drawing box ── *\/\n  .nznd__tobox {\n    background: #f9fafb; border: 1px solid #e7e7e7; border-radius: 12px;\n    padding: 18px 12px 12px; display: flex; flex-direction: column; align-items: center;\n  }\n  .nznd__tobox-lbl { font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: #60646c; margin-bottom: 10px; text-align: center; }\n  .nznd__tosvg { width: 100%; max-width: 160px; }\n  .nznd__tobox-sub { font-size: 10.5px; font-weight: 600; color: #60646c; margin-top: 8px; text-align: center; }\n  .nznd__tobox-sub span { color: #ff7a2f; }\n\n  \/* ── Step cards ── *\/\n  .nznd__steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 9px; }\n  .nznd__step { display: grid; grid-template-columns: 34px 1fr; gap: 11px; align-items: start; background: #f9fafb; border: 1px solid #e7e7e7; border-radius: 10px; padding: 13px; }\n  .nznd__step-n { width: 34px; height: 34px; border-radius: 8px; background: #fff5ef; border: 1px solid rgba(255,122,47,.3); display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 800; color: #ff7a2f; flex-shrink: 0; }\n  .nznd__step strong { display: block; font-size: 13.5px; font-weight: 700; color: #101114; margin-bottom: 3px; text-align: left; }\n  .nznd__step p { font-size: 12.5px; line-height: 1.55; color: #60646c; margin: 0; text-align: left; }\n  .nznd__step code { font-size: 12px; font-family: monospace; background: #fff; border: 1px solid #e7e7e7; border-radius: 4px; padding: 1px 5px; color: #101114; }\n\n  \/* ── Use case grid ── *\/\n  .nznd__uses { display: grid; grid-template-columns: repeat(3, 1fr); gap: 11px; margin-bottom: 22px; }\n  .nznd__use { background: #f9fafb; border: 1px solid #e7e7e7; border-left: 3px solid #ff7a2f; border-radius: 0 9px 9px 0; padding: 14px; transition: background .15s, box-shadow .15s; }\n  .nznd__use:hover { background: #fff5ef; box-shadow: 0 2px 8px rgba(255,122,47,.1); }\n  .nznd__use strong { display: block; font-size: 13.5px; font-weight: 700; color: #101114; margin-bottom: 4px; text-align: left; }\n  .nznd__use p { font-size: 12.5px; line-height: 1.5; color: #60646c; margin: 0; text-align: left; }\n\n  \/* ── FAQ accordion ── *\/\n  .nznd__faq { display: grid; gap: 8px; }\n  .nznd__faq-item { border: 1px solid #e7e7e7; border-radius: 10px; overflow: hidden; background: #fff; }\n  .nznd__faq-q {\n    width: 100%; background: #f9fafb; border: none;\n    padding: 14px 17px;\n    display: flex; align-items: center; justify-content: space-between; gap: 10px;\n    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n    font-size: 13.5px; font-weight: 700; color: #101114;\n    cursor: pointer; text-align: left; transition: background .15s, color .15s;\n  }\n  .nznd__faq-q:hover { background: #fff5ef; }\n  .nznd__faq-item.is-open .nznd__faq-q { background: #fff5ef; color: #ff7a2f; }\n  .nznd__faq-icon {\n    width: 20px; height: 20px; flex-shrink: 0;\n    border-radius: 50%; background: #e7e7e7;\n    display: flex; align-items: center; justify-content: center;\n    transition: background .15s, transform .25s cubic-bezier(.34,1.56,.64,1);\n  }\n  .nznd__faq-q:hover .nznd__faq-icon { background: #ffe0cc; }\n  .nznd__faq-item.is-open .nznd__faq-icon { background: #ff7a2f; transform: rotate(45deg); }\n  .nznd__faq-icon svg { width: 10px; height: 10px; stroke: #60646c; }\n  .nznd__faq-item.is-open .nznd__faq-icon svg { stroke: #fff; }\n  .nznd__faq-a {\n    display: block;\n    max-height: 0;\n    overflow: hidden;\n    padding: 0 17px;\n    font-size: 13.5px; line-height: 1.65; color: #60646c;\n    border-top: 1px solid transparent;\n    text-align: left;\n    transition: max-height .32s cubic-bezier(.4,0,.2,1), padding .24s ease, border-color .24s ease;\n  }\n  .nznd__faq-item.is-open .nznd__faq-a { max-height: 260px; padding: 14px 17px; border-top-color: #e7e7e7; }\n\n  \/* ── Responsive ── *\/\n  @media (max-width: 750px) {\n    .nznd__card  { padding: 22px 16px; min-height: 0; }\n    .nznd__stats { grid-template-columns: repeat(2, 1fr); }\n    .nznd__wiring { grid-template-columns: 1fr; }\n    .nznd__tobox { flex-direction: row; gap: 16px; align-items: center; padding: 14px; }\n    .nznd__tobox-lbl { display: none; }\n    .nznd__tosvg { max-width: 90px; }\n    .nznd__tobox-sub { margin-top: 0; text-align: left; }\n    .nznd__uses { grid-template-columns: 1fr 1fr; }\n    .nznd__spec-row { grid-template-columns: 1fr; }\n    .nznd__spec-row dt { border-right: none; border-bottom: 1px solid #e7e7e7; padding-bottom: 5px; }\n    .nznd__spec-row dd { padding-top: 5px; }\n    .nznd__tab { padding: 11px 12px; font-size: 12.5px; }\n  }\n  @media (max-width: 480px) {\n    .nznd__uses { grid-template-columns: 1fr; }\n    .nznd__tab  { padding: 10px 9px; font-size: 11.5px; }\n  }\n  @media (prefers-reduced-motion: reduce) {\n    .nznd__panel { animation: none !important; }\n    .nznd__faq-a { transition: none !important; }\n    .nznd__faq-icon { transition: background .15s !important; }\n    .nznd * { transition-duration: .01ms !important; }\n  }\n\u003c\/style\u003e\n\n\u003carticle class=\"nznd\" itemscope itemtype=\"https:\/\/schema.org\/Product\"\u003e\n  \u003cmeta itemprop=\"name\" content=\"HC-SR04 Ultrasonic Distance Sensor Module\"\u003e\n  \u003cmeta itemprop=\"sku\" content=\"HCSR04\"\u003e\n  \u003cmeta itemprop=\"brand\" content=\"NZN Electronics\"\u003e\n\n  \u003cnav class=\"nznd__tabs\" role=\"tablist\" aria-label=\"Product sections\"\u003e\n    \u003cbutton class=\"nznd__tab is-active\" type=\"button\" data-tab=\"overview\" role=\"tab\" aria-selected=\"true\"\u003eOverview\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"specs\" role=\"tab\" aria-selected=\"false\"\u003eSpecifications\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"wiring\" role=\"tab\" aria-selected=\"false\"\u003eWiring Guide\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"uses\" role=\"tab\" aria-selected=\"false\"\u003eCommon Uses\u003c\/button\u003e\n    \u003cbutton class=\"nznd__tab\" type=\"button\" data-tab=\"faq\" role=\"tab\" aria-selected=\"false\"\u003eFAQs\u003c\/button\u003e\n  \u003c\/nav\u003e\n\n  \u003cdiv class=\"nznd__card\"\u003e\n\n    \u003c!-- ══════════════ OVERVIEW ══════════════ --\u003e\n    \u003csection class=\"nznd__panel is-active\" data-panel=\"overview\" role=\"tabpanel\"\u003e\n\n      \u003cdiv class=\"nznd__strip\"\u003e\n        \u003ch2 itemprop=\"name\"\u003eHC-SR04 — Ultrasonic Distance Sensor Module\u003c\/h2\u003e\n        \u003cp itemprop=\"description\"\u003eA popular 40 kHz ultrasonic ranging module capable of measuring distances from 2 cm to 450 cm with up to 3 mm precision. Sends a timed echo pulse and lets your microcontroller calculate distance using the speed of sound. Works directly with Arduino, ESP32, and Raspberry Pi GPIO pins with no extra components required.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nznd__stats\" role=\"list\" aria-label=\"Key specifications\"\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n          \u003cspan class=\"nznd__stat-val\"\u003e2–450cm\u003c\/span\u003e\n          \u003cspan class=\"nznd__stat-lbl\"\u003eDetection Range\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n          \u003cspan class=\"nznd__stat-val\"\u003e3mm\u003c\/span\u003e\n          \u003cspan class=\"nznd__stat-lbl\"\u003ePrecision\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n          \u003cspan class=\"nznd__stat-val\"\u003e40 kHz\u003c\/span\u003e\n          \u003cspan class=\"nznd__stat-lbl\"\u003eUltrasonic Freq.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"nznd__stat\" role=\"listitem\"\u003e\n          \u003cspan class=\"nznd__stat-val\"\u003eDC 5V\u003c\/span\u003e\n          \u003cspan class=\"nznd__stat-lbl\"\u003eSupply Voltage\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cul class=\"nznd__pills\" aria-label=\"Key features\"\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e2 cm Blind-Zone Minimum\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e450 cm Maximum Range\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e±15° Sensing Angle\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eArduino Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eESP32 Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot nznd__dot--blue\"\u003e\u003c\/span\u003eRaspberry Pi Compatible\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003eOnly 2 Signal Pins\u003c\/li\u003e\n        \u003cli class=\"nznd__pill\"\u003e\n\u003cspan class=\"nznd__dot\"\u003e\u003c\/span\u003e7.5g Lightweight\u003c\/li\u003e\n      \u003c\/ul\u003e\n\n      \u003cdiv class=\"nznd__callout nznd__callout--orange\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#ff7a2f\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003e5V logic — use a voltage divider on the ECHO pin for 3.3V boards\u003c\/strong\u003e\n          \u003cp\u003eThe HC-SR04 TRIG and ECHO pins operate at 5V logic. The TRIG pin is fine driven from 3.3V GPIO, but the ECHO pin outputs 5V which can damage ESP32 or Raspberry Pi inputs. Use a simple two-resistor voltage divider (1kΩ and 2kΩ) to drop ECHO to 3.3V before connecting to a 3.3V board.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n    \u003c\/section\u003e\n\n    \u003c!-- ══════════════ SPECIFICATIONS ══════════════ --\u003e\n    \u003csection class=\"nznd__panel\" data-panel=\"specs\" role=\"tabpanel\"\u003e\n\n      \u003cp class=\"nznd__eyebrow\"\u003eElectrical \u0026amp; Physical Specifications\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eFull specifications for the HC-SR04 ultrasonic distance sensor module. All values at DC 5V supply unless stated.\u003c\/p\u003e\n\n      \u003cdl class=\"nznd__specs\" itemprop=\"additionalProperty\"\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eModel Number\u003c\/dt\u003e\n\u003cdd\u003eHC-SR04 (HCSR04)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eWorking Voltage\u003c\/dt\u003e\n\u003cdd\u003eDC 5V\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eQuiescent Current\u003c\/dt\u003e\n\u003cdd\u003eLess than 2 mA\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eLevel Output (High)\u003c\/dt\u003e\n\u003cdd\u003e5V\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eLevel Output (Low)\u003c\/dt\u003e\n\u003cdd\u003e0V\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDetection Range\u003c\/dt\u003e\n\u003cdd\u003e2 cm – 450 cm\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003ePrecision\u003c\/dt\u003e\n\u003cdd\u003eUp to 3 mm (0.3 cm)\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eSensing Angle\u003c\/dt\u003e\n\u003cdd\u003eNot more than 15°\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eUltrasonic Frequency\u003c\/dt\u003e\n\u003cdd\u003e40 kHz\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eTrigger Input Signal\u003c\/dt\u003e\n\u003cdd\u003e10 µs TTL pulse minimum\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eDistance Formula\u003c\/dt\u003e\n\u003cdd\u003eDistance = (Echo high time × 340 m\/s) ÷ 2\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003ePins\u003c\/dt\u003e\n\u003cdd\u003eVCC, TRIG, ECHO, GND\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eWeight\u003c\/dt\u003e\n\u003cdd\u003e7.5 g\u003c\/dd\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__spec-row\"\u003e\n\u003cdt\u003eMCU Compatibility\u003c\/dt\u003e\n\u003cdd\u003eArduino, ESP32 (with divider on ECHO), Raspberry Pi\u003c\/dd\u003e\n\u003c\/div\u003e\n      \u003c\/dl\u003e\n\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eHow distance is calculated\u003c\/strong\u003e\n          \u003cp\u003eAfter the 10 µs trigger pulse, the module fires eight 40 kHz bursts and raises ECHO HIGH for the duration the sound takes to travel to the target and back. Divide the echo time in microseconds by 58 to get centimetres, or by 148 for inches.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n    \u003c\/section\u003e\n\n    \u003c!-- ══════════════ WIRING GUIDE ══════════════ --\u003e\n    \u003csection class=\"nznd__panel\" data-panel=\"wiring\" role=\"tabpanel\"\u003e\n\n      \u003cp class=\"nznd__eyebrow\"\u003ePinout \u0026amp; Wiring Instructions\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe HC-SR04 has four pins in a single row: \u003cstrong\u003eVCC, TRIG, ECHO, GND\u003c\/strong\u003e — left to right when the two transducer cylinders face you.\u003c\/p\u003e\n\n      \u003cdiv class=\"nznd__wiring\"\u003e\n\n        \u003c!-- Module pin diagram --\u003e\n        \u003cdiv class=\"nznd__tobox\" aria-label=\"HC-SR04 pin diagram\"\u003e\n          \u003cp class=\"nznd__tobox-lbl\"\u003eHC-SR04 Pinout\u003c\/p\u003e\n\n          \u003csvg class=\"nznd__tosvg\" viewbox=\"0 0 160 220\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"HC-SR04 module front view showing VCC, TRIG, ECHO and GND pins\"\u003e\n            \u003cdefs\u003e\n              \u003clineargradient id=\"sr04-board\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\"\u003e\n                \u003cstop offset=\"0%\" stop-color=\"#1f6b3a\"\u003e\u003c\/stop\u003e\n                \u003cstop offset=\"100%\" stop-color=\"#144d2b\"\u003e\u003c\/stop\u003e\n              \u003c\/lineargradient\u003e\n              \u003clineargradient id=\"sr04-pin\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\"\u003e\n                \u003cstop offset=\"0%\" stop-color=\"#888\"\u003e\u003c\/stop\u003e\n                \u003cstop offset=\"45%\" stop-color=\"#d0d0d0\"\u003e\u003c\/stop\u003e\n                \u003cstop offset=\"100%\" stop-color=\"#999\"\u003e\u003c\/stop\u003e\n              \u003c\/lineargradient\u003e\n            \u003c\/defs\u003e\n\n            \u003c!-- PCB body --\u003e\n            \u003crect x=\"10\" y=\"10\" width=\"140\" height=\"130\" rx=\"6\" fill=\"url(#sr04-board)\" stroke=\"#0d3d20\" stroke-width=\"1.5\"\u003e\u003c\/rect\u003e\n\n            \u003c!-- Left transducer (Tx) --\u003e\n            \u003cellipse cx=\"45\" cy=\"65\" rx=\"26\" ry=\"26\" fill=\"#111\" stroke=\"#333\" stroke-width=\"1.5\"\u003e\u003c\/ellipse\u003e\n            \u003cellipse cx=\"45\" cy=\"65\" rx=\"19\" ry=\"19\" fill=\"#1a1a1a\"\u003e\u003c\/ellipse\u003e\n            \u003cellipse cx=\"45\" cy=\"65\" rx=\"4\" ry=\"4\" fill=\"#444\"\u003e\u003c\/ellipse\u003e\n            \u003ctext x=\"45\" y=\"103\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"7\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eTX\u003c\/text\u003e\n\n            \u003c!-- Right transducer (Rx) --\u003e\n            \u003cellipse cx=\"115\" cy=\"65\" rx=\"26\" ry=\"26\" fill=\"#111\" stroke=\"#333\" stroke-width=\"1.5\"\u003e\u003c\/ellipse\u003e\n            \u003cellipse cx=\"115\" cy=\"65\" rx=\"19\" ry=\"19\" fill=\"#1a1a1a\"\u003e\u003c\/ellipse\u003e\n            \u003cellipse cx=\"115\" cy=\"65\" rx=\"4\" ry=\"4\" fill=\"#444\"\u003e\u003c\/ellipse\u003e\n            \u003ctext x=\"115\" y=\"103\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"7\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eRX\u003c\/text\u003e\n\n            \u003c!-- Pin labels on PCB --\u003e\n            \u003ctext x=\"22\" y=\"122\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"6.5\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eVCC\u003c\/text\u003e\n            \u003ctext x=\"57\" y=\"122\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"6.5\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eTRIG\u003c\/text\u003e\n            \u003ctext x=\"96\" y=\"122\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"6.5\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eECHO\u003c\/text\u003e\n            \u003ctext x=\"134\" y=\"122\" text-anchor=\"middle\" fill=\"#5dd68a\" font-size=\"6.5\" font-family=\"'Inter',sans-serif\" font-weight=\"700\"\u003eGND\u003c\/text\u003e\n\n            \u003c!-- Pin headers --\u003e\n            \u003crect x=\"16\" y=\"128\" width=\"12\" height=\"8\" rx=\"2\" fill=\"#c8a415\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"51\" y=\"128\" width=\"12\" height=\"8\" rx=\"2\" fill=\"#c8a415\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"90\" y=\"128\" width=\"12\" height=\"8\" rx=\"2\" fill=\"#c8a415\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"128\" y=\"128\" width=\"12\" height=\"8\" rx=\"2\" fill=\"#c8a415\"\u003e\u003c\/rect\u003e\n\n            \u003c!-- Pin legs --\u003e\n            \u003crect x=\"20\" y=\"136\" width=\"4\" height=\"50\" fill=\"url(#sr04-pin)\" rx=\"1\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"55\" y=\"136\" width=\"4\" height=\"50\" fill=\"url(#sr04-pin)\" rx=\"1\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"94\" y=\"136\" width=\"4\" height=\"50\" fill=\"url(#sr04-pin)\" rx=\"1\"\u003e\u003c\/rect\u003e\n            \u003crect x=\"132\" y=\"136\" width=\"4\" height=\"50\" fill=\"url(#sr04-pin)\" rx=\"1\"\u003e\u003c\/rect\u003e\n\n            \u003c!-- Pin circles --\u003e\n            \u003ccircle cx=\"22\" cy=\"197\" r=\"9\" fill=\"#ff7a2f\"\u003e\u003c\/circle\u003e\n            \u003ccircle cx=\"57\" cy=\"197\" r=\"9\" fill=\"#ff7a2f\"\u003e\u003c\/circle\u003e\n            \u003ccircle cx=\"96\" cy=\"197\" r=\"9\" fill=\"#ff7a2f\"\u003e\u003c\/circle\u003e\n            \u003ccircle cx=\"134\" cy=\"197\" r=\"9\" fill=\"#ff7a2f\"\u003e\u003c\/circle\u003e\n\n            \u003ctext x=\"22\" y=\"201\" text-anchor=\"middle\" fill=\"#fff\" font-size=\"7.5\" font-family=\"'Inter',sans-serif\" font-weight=\"800\"\u003eV\u003c\/text\u003e\n            \u003ctext x=\"57\" y=\"201\" text-anchor=\"middle\" fill=\"#fff\" font-size=\"7.5\" font-family=\"'Inter',sans-serif\" font-weight=\"800\"\u003eT\u003c\/text\u003e\n            \u003ctext x=\"96\" y=\"201\" text-anchor=\"middle\" fill=\"#fff\" font-size=\"7.5\" font-family=\"'Inter',sans-serif\" font-weight=\"800\"\u003eE\u003c\/text\u003e\n            \u003ctext x=\"134\" y=\"201\" text-anchor=\"middle\" fill=\"#fff\" font-size=\"7.5\" font-family=\"'Inter',sans-serif\" font-weight=\"800\"\u003eG\u003c\/text\u003e\n          \u003c\/svg\u003e\n\n          \u003cp class=\"nznd__tobox-sub\"\u003e\n            \u003cspan\u003eV\u003c\/span\u003eCC  ·  \u003cspan\u003eT\u003c\/span\u003eRIG  ·  \u003cspan\u003eE\u003c\/span\u003eCHO  ·  \u003cspan\u003eG\u003c\/span\u003eND\n          \u003c\/p\u003e\n        \u003c\/div\u003e\n\n        \u003c!-- Wiring steps --\u003e\n        \u003col class=\"nznd__steps\" aria-label=\"Arduino wiring steps\"\u003e\n          \u003cli class=\"nznd__step\"\u003e\n            \u003cdiv class=\"nznd__step-n\"\u003e1\u003c\/div\u003e\n            \u003cdiv\u003e\n\u003cstrong\u003eVCC → 5V\u003c\/strong\u003e\u003cp\u003eConnect VCC to the 5V pin of your Arduino. Do not use 3.3V — the module requires 5V to operate.\u003c\/p\u003e\n\u003c\/div\u003e\n          \u003c\/li\u003e\n          \u003cli class=\"nznd__step\"\u003e\n            \u003cdiv class=\"nznd__step-n\"\u003e2\u003c\/div\u003e\n            \u003cdiv\u003e\n\u003cstrong\u003eGND → GND\u003c\/strong\u003e\u003cp\u003eCommon ground with your Arduino or ESP32.\u003c\/p\u003e\n\u003c\/div\u003e\n          \u003c\/li\u003e\n          \u003cli class=\"nznd__step\"\u003e\n            \u003cdiv class=\"nznd__step-n\"\u003e3\u003c\/div\u003e\n            \u003cdiv\u003e\n\u003cstrong\u003eTRIG → Digital Pin (e.g. D9)\u003c\/strong\u003e\u003cp\u003eSend a 10 µs HIGH pulse to trigger a reading. 3.3V GPIO is sufficient to trigger the module.\u003c\/p\u003e\n\u003c\/div\u003e\n          \u003c\/li\u003e\n          \u003cli class=\"nznd__step\"\u003e\n            \u003cdiv class=\"nznd__step-n\"\u003e4\u003c\/div\u003e\n            \u003cdiv\u003e\n\u003cstrong\u003eECHO → Digital Pin (e.g. D10)\u003c\/strong\u003e\u003cp\u003eReads the pulse duration. \u003cstrong\u003eArduino:\u003c\/strong\u003e connect directly. \u003cstrong\u003eESP32 \/ RPi:\u003c\/strong\u003e use a 1kΩ + 2kΩ voltage divider to drop 5V to 3.3V before connecting.\u003c\/p\u003e\n\u003c\/div\u003e\n          \u003c\/li\u003e\n          \u003cli class=\"nznd__step\"\u003e\n            \u003cdiv class=\"nznd__step-n\"\u003e5\u003c\/div\u003e\n            \u003cdiv\u003e\n\u003cstrong\u003eCalculate distance\u003c\/strong\u003e\u003cp\u003eUse \u003ccode\u003epulseIn(ECHO, HIGH)\u003c\/code\u003e to measure µs. Divide by 58 for cm or 148 for inches. The NewPing library simplifies this.\u003c\/p\u003e\n\u003c\/div\u003e\n          \u003c\/li\u003e\n        \u003c\/ol\u003e\n\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nznd__callout nznd__callout--orange\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#ff7a2f\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cpolygon points=\"7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2\"\u003e\u003c\/polygon\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12.01\" y2=\"16\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eMinimum 60 ms between readings\u003c\/strong\u003e\n          \u003cp\u003eWait at least 60 ms between trigger pulses to allow ultrasonic echoes to clear. Triggering too quickly causes false short-range readings from the previous cycle's echo.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n    \u003c\/section\u003e\n\n    \u003c!-- ══════════════ COMMON USES ══════════════ --\u003e\n    \u003csection class=\"nznd__panel\" data-panel=\"uses\" role=\"tabpanel\"\u003e\n\n      \u003cp class=\"nznd__eyebrow\"\u003eApplications \u0026amp; Use Cases\u003c\/p\u003e\n      \u003cp class=\"nznd__body\"\u003eThe HC-SR04 is one of the most widely used sensors in hobbyist and maker projects. Its low cost, simple two-wire interface, and 4.5 m range make it ideal for anything from obstacle avoidance to liquid level monitoring.\u003c\/p\u003e\n\n      \u003cdiv class=\"nznd__uses\"\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eObstacle Avoidance Robots\u003c\/strong\u003e\u003cp\u003eMount on a servo for sweeping detection or fixed for forward collision avoidance on Arduino and ESP32 rovers.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eParking Sensor\u003c\/strong\u003e\u003cp\u003eDIY garage or vehicle parking aid — beeps when an object is detected within a set distance.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eLiquid Level Monitoring\u003c\/strong\u003e\u003cp\u003eMeasure water tank, sump, or container fill levels without contact with the liquid.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003ePeople \/ Object Counter\u003c\/strong\u003e\u003cp\u003eDetect when someone passes through a doorway or breaks the beam between two points.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eHeight Measurement\u003c\/strong\u003e\u003cp\u003eNon-contact height gauging for conveyor systems, sorting machines, or interactive installations.\u003c\/p\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"nznd__use\"\u003e\n\u003cstrong\u003eHome Automation\u003c\/strong\u003e\u003cp\u003eTrigger lights, fans, or alarms based on detected presence or proximity with ESPHome or Home Assistant.\u003c\/p\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"nznd__callout nznd__callout--blue\" role=\"note\"\u003e\n        \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"#4a9af7\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"10\"\u003e\u003c\/circle\u003e\u003cline x1=\"12\" y1=\"16\" x2=\"12\" y2=\"12\"\u003e\u003c\/line\u003e\u003cline x1=\"12\" y1=\"8\" x2=\"12.01\" y2=\"8\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\n        \u003cdiv\u003e\n          \u003cstrong\u003eESPHome integration\u003c\/strong\u003e\n          \u003cp\u003eThe HC-SR04 is natively supported in ESPHome with the \u003ccode\u003eultrasonic\u003c\/code\u003e sensor platform. Define TRIG and ECHO pins and get distance readings directly in Home Assistant with no extra code.\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n    \u003c\/section\u003e\n\n    \u003c!-- ══════════════ FAQs ══════════════ --\u003e\n    \u003csection class=\"nznd__panel\" data-panel=\"faq\" role=\"tabpanel\"\u003e\n\n      \u003cp class=\"nznd__eyebrow\"\u003eFrequently Asked Questions\u003c\/p\u003e\n\n      \u003cdl class=\"nznd__faq\"\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            Will the HC-SR04 work with an ESP32 or Raspberry Pi at 3.3V?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eThe module itself needs 5V on VCC to function. The TRIG pin can be driven from 3.3V GPIO. The ECHO pin outputs 5V however, which can damage 3.3V microcontrollers — use a 1kΩ\/2kΩ voltage divider or a logic level shifter on the ECHO line before connecting to an ESP32 or Raspberry Pi.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            What is the minimum detectable distance?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eThe blind zone starts at 2 cm. Objects closer than 2 cm may not be reliably detected. For very close-range sensing consider an IR proximity sensor instead.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            How do I calculate distance from the ECHO pulse?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eMeasure the ECHO HIGH duration in microseconds using \u003ccode\u003epulseIn(echoPin, HIGH)\u003c\/code\u003e. Divide by 58 to get centimetres, or by 148 for inches. This accounts for the round-trip travel of the sound pulse. The NewPing Arduino library handles all of this automatically.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            How often can I take readings?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eWait at least 60 ms between trigger pulses. Faster polling risks detecting the echo from the previous cycle, giving spuriously short readings. In practice 100 ms (10 readings per second) is a safe rate for most applications.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            Does it work with soft surfaces like foam or fabric?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eSoft or angled surfaces absorb or scatter ultrasonic energy, reducing effective range and accuracy. For best results aim at flat, hard surfaces such as walls, water, or solid objects. Angled surfaces should be within roughly 15° of perpendicular to the sensor face.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"nznd__faq-item\"\u003e\n          \u003cdt\u003e\u003cbutton class=\"nznd__faq-q\" type=\"button\" aria-expanded=\"false\"\u003e\n            Is there an Arduino library I can use?\n            \u003cspan class=\"nznd__faq-icon\"\u003e\u003csvg viewbox=\"0 0 12 12\" fill=\"none\" stroke-width=\"2\" stroke-linecap=\"round\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\u003cline x1=\"6\" y1=\"2\" x2=\"6\" y2=\"10\"\u003e\u003c\/line\u003e\u003cline x1=\"2\" y1=\"6\" x2=\"10\" y2=\"6\"\u003e\u003c\/line\u003e\u003c\/svg\u003e\u003c\/span\u003e\n          \u003c\/button\u003e\u003c\/dt\u003e\n          \u003cdd class=\"nznd__faq-a\"\u003eYes — the \u003cstrong\u003eNewPing\u003c\/strong\u003e library by Tim Eckel is the most popular choice. Install it via the Arduino Library Manager. It simplifies triggering, echo timing, and includes median filtering to reduce noise. For ESPHome users, the built-in \u003ccode\u003eultrasonic\u003c\/code\u003e platform works out of the box.\u003c\/dd\u003e\n        \u003c\/div\u003e\n\n      \u003c\/dl\u003e\n\n    \u003c\/section\u003e\n\n  \u003c\/div\u003e\n\u003c\/article\u003e\n\n\u003cscript\u003e\n(function () {\n  'use strict';\n  var w = document.currentScript\n    ? (document.currentScript.closest('.nznd') || document.querySelector('.nznd'))\n    : document.querySelector('.nznd');\n  if (!w) return;\n\n  w.addEventListener('click', function (e) {\n\n    \/* Tab switch *\/\n    var tab = e.target.closest('.nznd__tab');\n    if (tab) {\n      var target = tab.getAttribute('data-tab');\n      w.querySelectorAll('.nznd__tab').forEach(function (t) { t.classList.remove('is-active'); t.setAttribute('aria-selected','false'); });\n      w.querySelectorAll('.nznd__panel').forEach(function (p) { p.classList.remove('is-active'); });\n      tab.classList.add('is-active');\n      tab.setAttribute('aria-selected','true');\n      var panel = w.querySelector('[data-panel=\"' + target + '\"]');\n      if (panel) panel.classList.add('is-active');\n      return;\n    }\n\n    \/* FAQ accordion *\/\n    var btn = e.target.closest('.nznd__faq-q');\n    if (btn) {\n      var item = btn.closest('.nznd__faq-item');\n      var open = item.classList.contains('is-open');\n      w.querySelectorAll('.nznd__faq-item').forEach(function (x) {\n        x.classList.remove('is-open');\n        x.querySelector('.nznd__faq-q').setAttribute('aria-expanded','false');\n      });\n      if (!open) { item.classList.add('is-open'); btn.setAttribute('aria-expanded','true'); }\n    }\n\n  });\n}());\n\u003c\/script\u003e","brand":"NZN Electronics","offers":[{"title":"1 Pack","offer_id":42861955154016,"sku":"HCSR04-1PK","price":3.89,"currency_code":"NZD","in_stock":true},{"title":"3 Pack","offer_id":42861955186784,"sku":"HCSR04-3PK","price":7.99,"currency_code":"NZD","in_stock":true},{"title":"5 Pack","offer_id":42861955219552,"sku":"HCSR04-5PK","price":10.99,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0664\/6127\/0112\/files\/HC-SR-04-IR-Sensor-ProductHero.png?v=1781062116"}],"url":"https:\/\/www.nznelectronics.co.nz\/collections\/new-arrivals.oembed","provider":"NZN Electronics","version":"1.0","type":"link"}