Skip to content

Hardware drivers for the LPDM energy management system

License

Notifications You must be signed in to change notification settings

LBNL-ETA/LPDM-Drivers

Repository files navigation

Hardware adapters (WeMo lights and switches, Hue Lights, IP IR Bridge, Connected by TCP lights, PWM fan)

Documentation for each system can be found here: https://docs.google.com/a/lbl.gov/document/d/1Q6v6Al0Q7rn_3mdpHLPZaN-xkiN_Z2TM1xf0hcFDm8U/edit?usp=sharing

Contains hardware adapters for various network controllable lights, PWM controllable fan, and other devices through IR communication.

Sub Directories: connectedbytcp_control: Module Hardware adapter for connected by TCP lighting environment. connected_controls.py: Contains a wrapper for TCP light functionality as described in tcplights.py. tcplights.py: API for TCP light connectivity and use, allows configuration of rooms and scenes as well as configuration of individual lights.

global_cache_control:
Module
	Hardware adapters for control of global cache iTach IP to IR bridge.
	global_cache_controls.py:
		API for communication to iTach bridge including fuctionality for obtaining device state, as well as sending IR coded messages to IR receiving devices.
	dvd_controls.py:
		A sample implementation of IP2IR communication API exposed in global_cache_controls.py.	 
	ac_control.py:
		Implementation of IP2IR communicated API to control a Frigidaire air conditioning system.


hue_control:
Module
	Wrappers around beautifulhue python API for bridge and for lights.
	hue_control.py:
		Wraps beautifulhue api to control functionality of hue bridge and connected devices.
	hue_light.py:
		Wrapper for hue_control.py which allows simple control of one light.

variable_speed_fan_control:
Module
	Hardware interface for remotely controllable variable speed fan connected by a Beaglebone Black through its PWM interface.
	fan_control.py: 
		Remote control API of beaglebone fan through remote login and requests.
	fan_speed.py:
		Hardware controls of beaglebone pwm fan.

wemo_control:
Module
	Hardware adapter for control of WeMo networked lights and switching devices. 
	wemo_light.py:
		Wrapper for 3rd party wemo API called ouixmeaux which provides interface for controlling connected lights.
	wemo_switch.py:
		Wrapper for 3rd party wemo API called ouimeaux, allowing control of a WeMo Insight switch and reading of state information from it. 			

laptop_power_control:
Module
	Adapter for remote control of a windows laptop's power settings.
	laptop_control.py:
		Python wrapper for system calls to powercfg on a Windows machine, changing between power profiles, power settings as well as battery status and information. 
	rest_server.py:
		Flask based restful API for laptop_control's system calls with password based authentication, meant to be used on windows laptops as a server for remote control of power profiles. 
	remote_laptop_control.py:
		Remote interface for the restful API implemented by rest_server.py, so that laptop can be controlled in discrete power levels from 1-10, allowing scalable power usage. 

About

Hardware drivers for the LPDM energy management system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages