Se api

Just for preview. Please don't merge it.
What does the magic numbers mean? 0x1, 0x90 and 0x0? Could we use defines instead?