Follow the Framework model. Make the hardware user configurable, maintainable, and upgradable.