Software programmers want to manage pure software, not hardware-software entanglements. Unfortunately, traditional development methodologies cannot clearly separate hardware and software in embedded system development process. We propose a Hardware/software INterface GEnerator; we call it HINGE. After receiving device specifications including device usage rules for each device, HINGE automatically generates device API, device driver, and device controller for each device. In addition, HINGE equips device APIs to check the device usage rules at run-time. Consequently, HINGE gives support to not only fast prototyping but also device usage rule-debugging in embedded software.