# Button selection: Omron B3F-1000 Verified 2026-09-20 against the Omron datasheet and installed KiCad libraries. This research covers three active-low GPIO-to-GND buttons. **Integration decision:** the A0 schematic now implements B3F-1000 switches with one **2.2 kΩ, 1%, at least 0.125 W external pull-up** per input. The lower-current/internal-pull-up-only discussion below records the selection rationale, not an unselected schematic option. Firmware is unchanged. Exact resistor MPN, supply tolerance/budget and stock remain release checks. ## Schematic-ready recommendation **B3F-1000 fits the installed footprint mechanically and its normally-open contact topology matches the circuit. Low-current operation with internal pull-ups needs the qualification below.** For each of the three buttons: - Value / manufacturer part number: **B3F-1000**, Omron; standard silver-plated contacts, ivory flat plunger, no separate ground terminal. - Symbol: **`Switch:SW_Push`** (normally open, two passive pins). - Explicitly assign footprint: **`Button_Switch_THT:SW_TH_Tactile_Omron_B3F-100x`**. The installed symbol's default footprint field is empty. - Symbol pin **1 → GPIO**, symbol pin **2 → GND**. The switch is nonpolar; swapping these two nets is electrically equivalent. | Function | Pin 1 net | Pin 2 net | |---|---|---| | Previous/back | GPIO10 | GND | | Select/confirm | GPIO13 | GND | | Next | GPIO14 | GND | GPIO assignments verified in `src/board_pins.h`. The PCB README specifies normally-open buttons to GND with internal pull-ups. Released = high; pressed = low. No voltage source connects directly through the switch: any external pull-up goes through a resistor to 3.3 V. ## Exact terminal and pad mapping The installed footprint has **four physical holes but only two distinct electrical pad numbers: `1,1,2,2`**, not four uniquely numbered pads. The installed `SW_Push` symbol has pin 1 at the left and pin 2 at the right in its default orientation; pin numbers are hidden by the symbol. Unrotated footprint, front/top view; local coordinates in mm, positive Y downward: ```text 6.5 mm KiCad pad 1 (0,0) ----------- KiCad pad 1 (6.5,0) Omron terminal 4 Omron terminal 3 NO contact 4.5 mm Omron terminal 2 Omron terminal 1 KiCad pad 2 (0,4.5) --------- KiCad pad 2 (6.5,4.5) ``` The horizontal connections above are permanent internal connections; pressing joins the two rows. Omron datasheet **page 4**, upper-left **“Terminal Arrangement/Internal Connections (Top View)”**, explicitly shows terminals **4–3 common** and **2–1 common**. This maps to KiCad's upper pair numbered 1 and lower pair numbered 2 when aligned as shown. **Omron terminal 1 is not KiCad pad 1 in this orientation.** The manufacturer's separate bottom-view numbering sketch must not be mistaken for a top view. Omron states terminal numbers are not marked on the switches. A 180° insertion swaps the two electrical sides without affecting this nonpolar circuit. Both pads numbered 1 receive the symbol pin-1 net; both pads numbered 2 receive pin-2's net. Do not attach a four-unique-pin symbol to this footprint without an explicit remapping. Connecting GPIO and GND to two terminals within the same common pair would permanently ground the GPIO. The footprint sets `duplicate_pad_numbers_are_jumpers no`; do not assume PCB routing software will treat the internal metal as a routing jumper. Route/check the duplicate-pad nets normally. ## Manufacturer dimensions and ratings Source: Omron B3F datasheet, ordering table p. 1, ratings/operating characteristics p. 3, B3F-1000 drawing p. 4. Dimensions below are mm. | Item | Datasheet specification | |---|---| | Body | 6 ±0.2 × 6 ±0.2 | | Overall height above seating plane | 4.3 ±0.2 | | Plunger diameter | 3.5 | | Terminal row spacing | 4.5 ±0.2 | | Formed terminal span at hole-entry region | 6.5 ±0.5 | | Maximum-width dimension shown across formed leads | 7.7 ±0.5 | | Lead projection below seating plane | 3.5 | | Lead thickness / width callouts | 0.3 / 0.7 | | Recommended PCB hole-centre grid | 6.5 ±0.1 × 4.5 ±0.1 | | Recommended PCB holes | Four, diameter 1 ±0.1; reference drawing for PCB thickness 1.6 | | General dimensional tolerance | ±0.4 unless otherwise specified | | Contact form | SPST-NO | | Rated resistive load, standard silver version | **1–50 mA at 3–24 VDC** | | Minimum applicable load | **10 µA at 1 VDC, reference value** | | Initial contact resistance | 100 mΩ maximum | | Bounce | 5 ms maximum | | Operating force | 0.98 ±0.29 N (100 ±30 gf) | | Release force | 0.2 N minimum | | Pretravel | 0.25 +0.2/−0.1 | | Durability for B3F-1000, 0.98 N | 1,000,000 operations minimum | | Protection / washing | IP00 / washing not possible | ### Installed footprint comparison Inspected `/usr/share/kicad/footprints/Button_Switch_THT.pretty/SW_TH_Tactile_Omron_B3F-100x.kicad_mod` (file format version `20260206`, generator version `10.0`) and `/usr/share/kicad/symbols/Switch.kicad_sym`. - Hole centres: `(0,0)`, `(6.5,0)`, `(0,4.5)`, `(6.5,4.5)` — match Omron's nominal PCB grid. - All four plated through-hole pads: circular copper diameter **1.7**, drill **1.0**, front/back copper and mask — nominal drill matches Omron's reference hole diameter. Confirm the fabricator's finished-hole tolerance when ordering. - Fab body: `(0.25,-0.75)` to `(6.25,5.25)`, **6 × 6**, matching nominal body dimensions. - Courtyard: `(-1.1,-1.1)` to `(7.6,5.6)`, **8.7 × 6.7**. This is a library placement boundary, not an enclosure or finger-access clearance specification. - Footprint description specifies H4.3 mm. No physical sample fit, enclosure-height check, or independent 3D-model measurement was performed. ## Low-current qualification / selection decision **Do not claim internal-pull-up operation meets the standard part's full rated-load range.** At 3.3 V, pull-up resistance greater than 3.3 kΩ gives less than 1 mA contact current. For illustration only, 45 kΩ would give about 73 µA; that is not a verified resistance specification for this board's GPIOs. Omron's 10 µA / 1 V minimum is explicitly a **reference value**, not an unconditional low-current reliability guarantee. B3F-1000 is a reasonable prototype choice, but internal-pull-up-only contact reliability should be qualified in the intended environment and over life. For a conservative silver-contact design within the stated rated load, consider **one external 2.2 kΩ pull-up to 3.3 V per button** (about 1.5 mA while pressed); verify supply/resistor tolerances and GPIO limits before adopting. This recommendation was subsequently adopted in the A0 carrier schematic; see the integration decision above. If low current is important, the datasheet also lists **B3F-1002-G** with gold contacts in the same p. 4 dimensional group, rated 100 µA–50 mA at 3–24 VDC, but with a different operating force (1.76 ±0.49 N); weak internal pull-ups are not automatically within that rated range either. It has not been selected or stock-checked here. Retain firmware debouncing; a mechanical switch is not bounce-free. The device is unsealed (IP00), and the datasheet prohibits washing. ## Supply evidence **Live stock not verified; no supply assurance.** On 2026-09-20 a request to the [DigiKey B3F-1000 product URL](https://www.digikey.com/en/products/detail/omron-electronics-inc-emc-div/B3F-1000/33150) returned HTTP 403 / an anti-bot challenge. No quantity, price, lead time, or lifecycle status could be established from that response. Confirm the exact MPN and available quantity with a distributor before BOM release; datasheet availability is not stock evidence. ## Evidence and remaining checks - [Authoritative Omron datasheet](https://omronfs.omron.com/en_US/ecb/products/pdf/en-b3f.pdf), retrieved 2026-09-20. - [Local PDF](reference/button-omron-b3f.pdf). - [Extracted text](reference/button-omron-b3f.txt) for searching; use the PDF for drawing interpretation. - [Rendered page 4](reference/button-omron-b3f-page4.png), visually checked for the internal connections and dimensions. Before manufacturing: validate the selected pull-up strategy against supply tolerances/budget; check ERC/net assignment and PCB DRC in the actual design; confirm finished holes, enclosure/actuator access and a sample's fit/continuity; confirm procurement. This review verifies datasheet-to-library compatibility, not a completed-board electrical or mechanical test.