Introduce an editable KiCad 10 schematic and routed two-layer 82 × 80 mm layout with local provisional footprints, validation tooling, and component research. Keep the RS-232 male-module mapping and mechanical clearances explicitly provisional pending hardware verification.
108 lines
8.4 KiB
Markdown
108 lines
8.4 KiB
Markdown
# 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.
|