tradfri-rs

Crates.iotradfri-rs
lib.rstradfri-rs
version0.1.0
sourcesrc
created_at2022-04-23 17:44:12.210829
updated_at2022-04-23 17:44:12.210829
descriptionCoap client wrapper for controlling IKEA lightbulbs.
homepage
repository
max_upload_size
id572744
size14,375
Dezső Mészáros (meszarosdezso)

documentation

README

TRÅDFRI

coap-client wrapper for controlling IKEA TRÅDFRI devices.

Usage

  1. Install coap-client using the install script.
  2. Find the IP address and the security code (on the back) of your gateway.
  3. Authenticate your client
use std::net::Ipv4Addr;
use tradfri::gateway::Gateway;

const IP: Ipv4Addr = Ipv4Addr::new(192, 168, 0, 7);
const SECURITY_CODE: &'static str = "<SECURITY_CODE>";

...
let mut gateway = Gateway::new(IP, SECURITY_CODE);
if let Err(err) = gateway.authenticate("<username>") {
    println!("Already authenticated.")
}
  1. Switch the lights!
use std::thread;
use std::time::Duration;

...
let devices = gateway.get_device_ids().unwrap();
println!("{} devices found: {:?}", devices.len(), devices);

let device = gateway.get_device_by_id(devices[1]).unwrap();

device.turn_off().unwrap();
thread::sleep(Duration::from_secs(2));
device.turn_on().unwrap();

Disclaimer

Incredibly hacky and a work in progress (:

2022 © MIT License

Commit count: 0

cargo fmt