## Features and Components ### Core *See [../research/cpu]() for an overview of the **many** low-cost embedded processors which have been announced, and a justification of this component selection.* The Freescale i.MX6 series ARM processors are in production as of summer 2012, hardware-specific code is being upstreamed into the Linux kernel, and extensive public documentation will be released in November 2012. Several (but not all) variants are "pin-compatible", allowing upgrades. Rumored prices put the 1GHz "Dual Core Lite" processor at around $16/each for commerical-grade temperature ranges, or $21 for extended temperature ranges. The single core chip could go as low as $11/each in quantities of 10k. These chips have plenty of power and storage connectivity to act as web servers. They should have enough connectivity throughput to fufil expectations of contemporary network routers. They have enough extra communications and system ports (SATA, SD, USB, video, audio, etc) to be expandable and hackable. A dedicated power management/regulator chip ("PMIC") will almost certainly be required to provide stable voltage for the SoC. The vendor usually produces such a chip; for budgeting purposes i've included Freescale's equivalent PMIC for their i.MX53 line of processors. 512MB should be adequate for almost all server applications. The i.MX6 chips support 64 bit bus widths for faster throughput, optionally through two 32 bit channels. RAM chips should be selected to take advantage of this. With enough RAM to cache the kernel and core daemons, micro SD flash storage should be sufficient for both a bootloader and core operating system. Disk storage can be expanded through a full-sized SD card slot, USB thumb drives, or a SATA port. On-board flash memory could be provided for a BIOS if that ends up being desired. FRAM memory could also be used to cache the kernel, DHCP tables, or other information to make reboots extremely fast. ### WiFi The miniPCIe slot allows flexibility in selecting an appropriate dual-band 802.11n card; see [../research/miniPCIe]() for a list of options and issues. Atheros-based devices supporting the non-blob [ath9k](http://wireless.kernel.org/en/users/Drivers/ath9k) or [ath5k](http://wireless.kernel.org/en/users/Drivers/ath5k) drivers with access point mode are shipped in some laptops and are frequently available used on amazon.com for less than $15. [thinkpenguin.com](https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-mini-pcie) sells such a device new for $35, as does [netgate.com](http://store.netgate.com/WLE200NX-80211nabg-miniPCIe-Card-P1763C29.aspx) for $45. Antennas and cabling (for both 2.4GHz and 5GHz) are necessary and usually aren't included with PCI cards, so the rooter will need to ship with them. ### Ethernet The Realtek RTL8366SR gigabit switch chip is an industry standard with support in OpenWRT. I have been unable to find a public price quote for it, but am confident that it can be sourced in smaller quantities (1k). For prototyping it could even be re-flowed off of a cheap commodity router. Extra analog circuitry to boost the current going out over long (50+ meter) ethernet cable runs may be required for reliability in extreme environments. The first revision rooter will probably not support power-over-ethernet; injector dongles provide similar functionality. ### Connectivity For both initial development and for later hacking, JTAG access to at least the SoC will be broken out. A boot-time serial console is a very useful debugging and hacking interface, but RS-232 is a bit clunky to implement, and requires an extra adapter for users. As a contemporary solution, an FTDI chip will allow USB access to the root serial console, with low-voltage UART pins also broken out to pads internally. ### Power 12-20v DC input power will be accepted, with the explicit goal of being able to run off 12v battery or solar power without browning out down to 10.5v or so. rooter will probably pull between 2-5 watts when active, more depending on on USB, SATA, PCI, and other peripherals. Idle power usage should go very low. TODO: a 12v power adapter is not included in the price estimate below, a decent one probably costs about $3 in bulk. ### Extra Features rooter will include an 2.4GHz 802.15.4 radio on-board to enable lightweight "internet-of-things" communication with embedded devices. The 6lowpan protocol will be supported by default, libre implementations of the ZigBee protocol stack or other protocols could be installed by the user. A simple avalanche break-down circuit will provide a high-quality stream of random numbers to the main processor, to be mixed with other sources of entropy for cryptographic purposes. A user-programable microcontroller with both an On-The-Go USB port and connectivity to the main processor will enable real-time programming and other such hackery. For example, IP-over-USB for devices without an ethernet port, interfacing to non-IP communication buses, USB mass-storage pass through, low-bandwidth wireless radio protocol experimentation (433MHz, 900MHz, etc), out-of-band network data monitoring, secret sharing, etc. ## Proposed BOM and Costs (August 2012) The rough cost analysis below guesses component pricing for a production run of 1,000 units; the PCB fabrication and assembly numbers are probably more realistic for at least 10,000 units. These are *prices* of components (what would need to be paid on the market), resulting in the *cost* of production; the *price* of the final device would be higher than the cost to cover risk and additional development and logistical expenses. For an initial release we can ship with used WiFi cards (or let people source their own), so I will budget $15. Devices would ship with no SATA disk by default.
Subsystem | What | MFG | MPN | Qty | Cost @1k | Total | Notes |
---|---|---|---|---|---|---|---|
Core | ARM SoC | Freescale | i.MX6 dual lite | 1 | $22.00 | $22.00 | “gossip” |
512MB RAM | Hynix | H5TQ4G63MFR | 1 | $15.00 | $15.00 | Wrong bitwidth, cost reference only | |
Microcontroller | Stmicro | STM32F100R4H6B | 1 | $1.40 | $1.40 | ||
Entropy circuit | 1 | $1.50 | $1.50 | Associated project... | |||
Wireless | miniPCIe WiFi card | 1 | $10.00 | $10.00 | Budgeting price of used cards | ||
802.15.4 TX/RX | TI | CC2520 | 1 | $2.50 | $2.50 | ||
miniPCIe slot | Tyco | 2041119-1 | 1 | $0.36 | $0.36 | ||
WiFi cable | Microchip | RN-UFL-SMA6 | 2 | $2.20 | $4.40 | ||
WiFi radio antenna | Pulse | W1902 | 2 | $4.00 | $8.00 | ||
Ethernet | Switch chip | Realtek | RTL8366SR-GR | 1 | $10.00 | $10.00 | Guess, can't find quote... |
5x Ethernet port strip | Tyco | 5557563-1 | 1 | $4.25 | $4.25 | Includes magnetics | |
Storage | SD Slot | ALPS | SCHA5B0200 | 1 | $1.00 | $1.00 | |
8GB uSD card | 1 | $6.00 | $6.00 | Budgeting price | |||
microSD slot | 114-00841-68 | 1 | $0.70 | $0.70 | |||
SATA conn | Molex | 678007001 | 1 | $0.40 | $0.40 | ||
SATA power conn | Molex | 679260011 | 1 | $0.50 | $0.50 | ||
USB | Dual USB Host conn. | Assmann | 87520-0010BLF | 1 | $0.40 | $0.40 | |
USB Mini | FCI | 10104110-0001LF | 1 | $0.35 | $0.35 | ||
Voltage Protect | On semi | NCP349MNAETBG | 1 | $0.36 | $0.36 | ||
USB-to-serial | FTDI | FT232HQ | 1 | $2.25 | $2.25 | ||
USB 2.0 hub | SMC | USB2514B | 1 | $2.10 | $2.10 | ||
Power | Inductor | TDK | VLCF5020T-2R2N2R6-3 | 3 | $0.90 | $2.70 | |
Voltage Protect | On semi | NCP349MNAETBG | 1 | $1.00 | $1.00 | ||
ARM SoC Pwr | Freescale | MC34708VKR2 | 1 | $4.25 | $4.25 | i.mx53 PMIC for reference | |
Regulator | TI | TPS73701DRBR | 1 | $0.95 | $0.95 | ||
Other Comp | Passives | 100 | $0.01 | $0.50 | Most of these are just fudged numbers | ||
LEDs | Dialight | 598-8170-107F | 4 | $0.05 | $0.20 | ||
Diode | 4 | $0.10 | $0.40 | ||||
Power Jack | CUI | PJ-002A | 1 | $0.30 | $0.30 | ||
Buffer | TI | SN74LVC2G07DCKR | 2 | $0.12 | $0.24 | ||
Transistors | 3 | $0.20 | $0.60 | ||||
Button | Omron | B3U-1100P | 4 | $0.55 | $2.20 | ||
Crystal | Epson | MC-30632.7680k-A | 4 | $0.30 | $1.20 | ||
Fudge Electronics | 1 | $5.00 | $5.00 | ||||
Production | 6 Layer PCB | 1 | $8.00 | $8.00 | |||
Assembly | 1 | $8.00 | $8.00 | ||||
TOTAL | $129.01 |