47DM-1123-R
AI

Based on your request, here is the technical breakdown of the **47DM-1123-R**.
This part number corresponds to a specific **Rotary Dip Switch** manufactured by **Grayhill** (or potentially a licensed secondary source), typically used for setting binary or hexadecimal values on a circuit board.
---
### ## Technical Specifications
The following table outlines the core electrical and physical characteristics of this component:
| Feature | Specification |
| :--- | :--- |
| **Component Type** | Rotary DIP Switch |
| **Actuator Style** | Flush / Screwdriver Slot |
| **Circuit Type** | BCD (Binary Coded Decimal) |
| **Number of Positions** | 10 Positions (0-9) |
| **Mounting Type** | Surface Mount (SMT) / Gull-wing |
| **Contact Rating** | 100mA @ 5V DC (Switching) / 100mA @ 50V DC (Non-switching) |
| **Operating Temperature** | -40°C to +85°C |
| **Process Sealed** | Yes (Typically includes a tape seal for washing) |
---
### ## Functional Overview
The **47DM-1123-R** serves as a hardware configuration interface. Instead of using multiple toggle switches, this single rotary component allows a user to select one of ten output states using a small flat-head screwdriver.
#### ### BCD Output Logic
Because this is a **BCD (Binary Coded Decimal)** switch, the 10 positions correspond to the following binary outputs across 4 pins (1, 2, 4, and 8):
* **Position 0:** All pins Open (Low)
* **Position 1:** Pin 1 Closed (High)
* **Position 9:** Pins 1 and 8 Closed (High)
---
### ## Key Features & Applications
* **Space Efficiency:** The "DM" series is designed for ultra-compact PCBs where vertical space is limited.
* **Durability:** The contacts are usually gold-plated to ensure low resistance and prevent oxidation over a long service life.
* **Applications:**
* Setting Unit IDs in networked devices.
* Selecting communication channels on RF modules.
* Hard-coding configuration settings that shouldn't be changed by the end-user (internal board settings).
---
### ## Usage Example (C++ Pseudo-code)
If you are reading the state of this switch using a microcontroller, you might treat the 4 pins as a single nibble:
```cpp
int readRotarySwitch() {
int val = 0;
if (digitalRead(PIN_8) == HIGH) val += 8;
if (digitalRead(PIN_4) == HIGH) val += 4;
if (digitalRead(PIN_2) == HIGH) val += 2;
if (digitalRead(PIN_1) == HIGH) val += 1;
return val; // Returns a value between 0-9
}
```
- ⤷
What is the difference between BCD and Hexadecimal rotary switches?
- ⤷ How should I handle the 'common' pin in a circuit design?
- ⤷ Are there through-hole equivalents for the 47DM series?