|
| 1 | +# Bill of Materials (BOM) |
| 2 | + |
| 3 | +Complete component list for building On-Body Haptics hardware systems. |
| 4 | + |
| 5 | +## Overview |
| 6 | + |
| 7 | +This BOM covers both implementations. You only need components for the system you're building: |
| 8 | +- **Arduino + Bluetooth** - Portable wearable system |
| 9 | +- **Raspberry Pi + I2C** - High-fidelity haptic system |
| 10 | + |
| 11 | +**Note**: A detailed Excel spreadsheet with part numbers is available at `hardware/bom.xlsx` |
| 12 | + |
| 13 | +## Arduino + Bluetooth System |
| 14 | + |
| 15 | +### Electronics |
| 16 | + |
| 17 | +| Component | Quantity | Description | Example Part | Approx. Cost | |
| 18 | +|-----------|----------|-------------|--------------|--------------| |
| 19 | +| Arduino Uno/Nano | 1 | Microcontroller | Arduino Uno R3 | $25 | |
| 20 | +| HC-05 or HC-06 | 1 | Bluetooth module | HC-05 | $5-10 | |
| 21 | +| Haptic Motors | 5 | Vibration motors | Adafruit Product 1201 | $5-10 ea | |
| 22 | +| MOSFETs | 5 | Motor drivers | 2N7000 or similar | $0.50 ea | |
| 23 | +| Resistors | 10 | 10kΩ pull-down | 1/4W resistor | $0.10 ea | |
| 24 | +| Capacitors | 5 | 100µF decoupling | Electrolytic | $0.25 ea | |
| 25 | +| Diodes | 5 | Flyback diodes | 1N4148 | $0.10 ea | |
| 26 | +| Power Jack | 1 | Barrel jack | 2.1mm | $1 | |
| 27 | +| USB Cable | 1 | Programming cable | USB A to B | $3 | |
| 28 | + |
| 29 | +### Power |
| 30 | + |
| 31 | +| Component | Quantity | Description | Approx. Cost | |
| 32 | +|-----------|----------|-------------|--------------| |
| 33 | +| Battery Pack | 1 | 4xAA or LiPo | $10-20 | |
| 34 | +| Power Switch | 1 | SPST toggle | $1 | |
| 35 | + |
| 36 | +### PCB & Assembly |
| 37 | + |
| 38 | +| Component | Quantity | Description | Approx. Cost | |
| 39 | +|-----------|----------|-------------|--------------| |
| 40 | +| Custom PCB | 1 | Haptic Belt PCB | $2-5 | |
| 41 | +| Headers | 1 set | Arduino headers | $2 | |
| 42 | +| Connecting Wire | 1 pack | 22-24 AWG | $5 | |
| 43 | + |
| 44 | +**Total Estimated Cost**: $100-150 |
| 45 | + |
| 46 | +## Raspberry Pi + I2C System |
| 47 | + |
| 48 | +### Main Components |
| 49 | + |
| 50 | +| Component | Quantity | Description | Example Part | Approx. Cost | |
| 51 | +|-----------|----------|-------------|--------------|--------------| |
| 52 | +| Raspberry Pi | 1 | 3B+ or 4 recommended | RPi 4 (2GB) | $45 | |
| 53 | +| microSD Card | 1 | 16GB+ Class 10 | SanDisk 32GB | $10 | |
| 54 | +| Power Supply | 1 | 5V 3A USB-C | Official RPi PSU | $8 | |
| 55 | + |
| 56 | +### Custom PCB & Components |
| 57 | + |
| 58 | +| Component | Quantity | Description | Example Part | Approx. Cost | |
| 59 | +|-----------|----------|-------------|--------------|--------------| |
| 60 | +| Haptic uHAT PCB | 1 | Custom PCB | From Gerbers | $2-5 | |
| 61 | +| TCA9548A | 1 | I2C multiplexer | Adafruit 2717 | $7 | |
| 62 | +| DRV2605L Breakouts | 8 | Haptic drivers | Adafruit 2305 | $8 ea | |
| 63 | +| Haptic Motors | 8 | ERM or LRA motors | Included with DRV2605L | - | |
| 64 | +| SSD1306 OLED | 1 | Display (optional) | 0.96" I2C OLED | $5 | |
| 65 | +| GPIO Header | 1 | 2x20 female | Raspberry Pi HAT header | $2 | |
| 66 | +| Button | 1 | Tactile switch | 6mm tactile | $0.25 | |
| 67 | + |
| 68 | +### Hardware & Assembly |
| 69 | + |
| 70 | +| Component | Quantity | Description | Approx. Cost | |
| 71 | +|-----------|----------|-------------|--------------| |
| 72 | +| M2.5 Standoffs | 4 | PCB spacers | 11mm | $2 | |
| 73 | +| M2.5 Screws | 8 | PCB mounting | | $1 | |
| 74 | +| Jumper Wires | 1 set | Female-Female | Dupont cables | $5 | |
| 75 | + |
| 76 | +**Total Estimated Cost**: $150-200 |
| 77 | + |
| 78 | +## Common Components (Both Systems) |
| 79 | + |
| 80 | +### Tools & Supplies |
| 81 | + |
| 82 | +| Item | Description | Approx. Cost | |
| 83 | +|------|-------------|--------------| |
| 84 | +| Soldering Iron | Temperature controlled | $20-50 | |
| 85 | +| Solder | 60/40 or lead-free | $5 | |
| 86 | +| Flux | Rosin flux pen | $5 | |
| 87 | +| Multimeter | Basic DMM | $15-30 | |
| 88 | +| Wire Strippers | 22-24 AWG | $10 | |
| 89 | +| Helping Hands | Soldering jig | $10 | |
| 90 | +| Safety Glasses | PPE | $5 | |
| 91 | + |
| 92 | +### 3D Printed Parts |
| 93 | + |
| 94 | +| Component | Quantity | Description | Cost | |
| 95 | +|-----------|----------|-------------|------| |
| 96 | +| Enclosure | 1 | Raspberry Pi case | $2-5 (filament) | |
| 97 | + |
| 98 | +**Files**: See `hardware/enclosures/raspberry-pi-case/` for STL files |
| 99 | + |
| 100 | +## Where to Buy |
| 101 | + |
| 102 | +### Electronics Suppliers |
| 103 | + |
| 104 | +#### USA |
| 105 | +- **Adafruit**: https://www.adafruit.com/ (DRV2605L, TCA9548A, quality components) |
| 106 | +- **Digi-Key**: https://www.digikey.com/ (Large selection, fast shipping) |
| 107 | +- **Mouser**: https://www.mouser.com/ (Professional components) |
| 108 | +- **SparkFun**: https://www.sparkfun.com/ (Hobbyist-friendly) |
| 109 | +- **Amazon**: https://www.amazon.com/ (Quick shipping, mixed quality) |
| 110 | + |
| 111 | +#### International |
| 112 | +- **AliExpress**: https://www.aliexpress.com/ (Cheapest, slow shipping) |
| 113 | +- **Banggood**: https://www.banggood.com/ (Good for motors) |
| 114 | +- **eBay**: https://www.ebay.com/ (Used/surplus components) |
| 115 | + |
| 116 | +### Raspberry Pi |
| 117 | +- **Official**: https://www.raspberrypi.com/products/ |
| 118 | +- **Distributors**: Adafruit, SparkFun, CanaKit, Amazon |
| 119 | + |
| 120 | +### PCB Manufacturing |
| 121 | +See [PCB Fabrication Guide](pcb-fabrication.md) for ordering custom PCBs. |
| 122 | + |
| 123 | +## Component Notes |
| 124 | + |
| 125 | +### Haptic Motors |
| 126 | +- **ERM (Eccentric Rotating Mass)**: Cheaper, good vibration |
| 127 | +- **LRA (Linear Resonant Actuator)**: Better control, crisper feedback |
| 128 | +- Adafruit DRV2605L breakouts often include LRA motors |
| 129 | + |
| 130 | +### Bluetooth Modules |
| 131 | +- **HC-05**: Master/slave mode, more versatile |
| 132 | +- **HC-06**: Slave only, simpler, cheaper |
| 133 | +- Either works for this project (slave mode only needed) |
| 134 | + |
| 135 | +### Capacitors |
| 136 | +- Use electrolytic capacitors near power pins |
| 137 | +- 100µF typical for motor driver decoupling |
| 138 | + |
| 139 | +### Wire Gauge |
| 140 | +- **22 AWG**: Good for most connections |
| 141 | +- **24 AWG**: Better for tight spaces |
| 142 | +- Use stranded for flexibility |
| 143 | + |
| 144 | +## Cost Breakdown Summary |
| 145 | + |
| 146 | +| System | Components | PCB | Tools (one-time) | Total | |
| 147 | +|--------|------------|-----|------------------|-------| |
| 148 | +| Arduino + BT | $85-120 | $10-15 | $70-115 | $165-250 | |
| 149 | +| Raspberry Pi | $130-170 | $10-15 | $70-115 | $210-300 | |
| 150 | + |
| 151 | +**Note**: Tool costs are one-time purchases. Additional builds only need component costs. |
| 152 | + |
| 153 | +## Detailed Excel BOM |
| 154 | + |
| 155 | +A detailed Excel spreadsheet with specific part numbers, supplier links, and exact pricing is available in the repository: |
| 156 | + |
| 157 | +📄 **File**: `hardware/bom.xlsx` |
| 158 | + |
| 159 | +This spreadsheet includes: |
| 160 | +- Specific part numbers |
| 161 | +- Direct supplier links |
| 162 | +- Current pricing (updated periodically) |
| 163 | +- Alternative part options |
| 164 | +- Bulk purchase discounts |
| 165 | + |
| 166 | +## Bulk Purchasing |
| 167 | + |
| 168 | +If building multiple units: |
| 169 | +- Order 10+ of each component for discounts |
| 170 | +- PCB prices drop significantly at 10-50 boards |
| 171 | +- Consider group buys with other makers |
| 172 | + |
| 173 | +## Questions? |
| 174 | + |
| 175 | +- **Component Selection**: Ask in [GitHub Discussions](https://github.com/MissCrispenCakes/On-body-haptics/discussions) |
| 176 | +- **Substitutions**: Most components have acceptable alternatives |
| 177 | +- **Sourcing Help**: Open an [issue](https://github.com/MissCrispenCakes/On-body-haptics/issues) |
| 178 | + |
| 179 | +--- |
| 180 | + |
| 181 | +**Assembly**: See [Assembly Guide](assembly-guide.md) after ordering components |
0 commit comments