How compatible is this with embedded devices? How much does this depend on OS APIs?