added hardware diagram