Hey everyone! I’m thrilled to share my latest project with you all. Over the weekend, I decided to dive into creating a driver for the JCloud Aroma Diffuser, which I recently purchased from Amazon. The experience has been both challenging and incredibly rewarding, and I wanted to document my journey in case anyone else is looking to integrate similar devices into their smart home setup.### The ProblemWhen I first received the diffuser, I was excited to see how it could integrate with my existing smart home ecosystem. However, I quickly realized that there wasn’t an official driver or integration available for platforms like Hubitat or Home Assistant. This left me with two options: either settle for manual control via the Aroma-Link app or find a way to create a custom integration myself.### The SolutionI decided to take the plunge and create my own driver. The process involved a mix of reverse engineering the API calls made by the Aroma-Link app and some clever use of websockets to handle state updates. While I haven’t yet cracked the websocket encryption, I’ve managed to reverse engineer the API calls, allowing me to control the diffuser programmatically.### Features of the IntegrationHere’s what the current integration supports:- Control: Turn the diffuser on/off, adjust the intensity, and select preset modes.- Automation: Integrate the diffuser into your existing smart home automations. For example, you can have the diffuser turn on when your HVAC fan starts running.- Customization: Configure the diffuser to suit your preferences, including setting up schedules and triggers.### How You Can Get StartedIf you’re interested in trying out this integration, here’s what you’ll need to do:1. Install the Driver: You can install the driver directly from the HPM (Hubitat Package Manager) using the following link: Aroma-Link Integration.2. Configuration: Once installed, follow the setup guide in the GitHub repository to configure the driver for your specific setup.3. Experiment: Start experimenting with different automations and see how the diffuser can enhance your smart home experience!### Future PlansWhile the current integration is functional, there’s still room for improvement. My next steps include:- State Updates: Figuring out how to decrypt the websocket data to enable real-time state updates.- Additional Features: Adding support for more advanced features like preset schedules and aroma intensity adjustments.- Community Feedback: Gathering feedback from early adopters to identify any missing features or bugs.### Why This MattersFor those of you who enjoy creating a relaxing atmosphere in your home, integrating a smart diffuser can take your setup to the next level. Whether you’re using it to create a calming environment for unwinding or enhancing your home’s ambiance, having a smart diffuser adds a touch of elegance and convenience.### Final ThoughtsThis project has been a fantastic learning experience, and I’m excited to see how the community can build upon this foundation. If you decide to try out the integration, I’d love to hear about your experiences, any issues you encounter, or features you’d like to see added. Let’s make this integration even better together!Happy automating, and I hope this project inspires you to tackle your own smart home integration challenges!