nathanielxd / magic-home

A .NET library that imports functionality from the Magic Home app, allowing control of smart lights.
GNU General Public License v3.0
27 stars 7 forks source link

The other way around? #4

Closed iUltimateLP closed 4 years ago

iUltimateLP commented 4 years ago

Hey! I'm thinking of syncing my RGB keyboard to my magic home LED strips, and therefore I'm wondering whether the reverse engineering work you did could be reversed, so a UDP socket listening on my computer could send a fake response to the Magic Home app, pretending to be a real LED controller?

Thanks!

nathanielxd commented 4 years ago

Hello.

You could make your own controller with an ESP8266 or something similar. You should be able to make it listen to the specific port and connect it to your keyboard, pretty much behaving like a normal magic home controller.

I'm not really sure if you're able to reverse engineer the controller itself to create an identical copy. I know the magic home controller is an ESP, but that is all.

I plan to do more work on this matter in the future though.

iUltimateLP commented 4 years ago

Actually I am trying to fake a controller from the software side, and I made it! I reverse engineered the protocol between controller and phone and created a simple C# server which does emulate a controller and receive requests from the MagicHome app. I'll organize everything and create a repo from that!

iUltimateLP commented 4 years ago

https://github.com/iUltimateLP/MagicHomeController Check it out, pretty interesting stuff!