Hardware + Software Teamwork