Dimming control over X10 lights/lamps

I posted a thread back in mid July Adding X10 support about a portable x10 custom component. It only requires configuration via HA.

I just added preliminary dimming support to a branch, https://github.com/clach04/home-assistant-x10/tree/light_support

Main features:

  • supports switches as well as lights, so they have the name switch and do not end up with a default light icon
  • dimming support - note for serial firecrackers there is a short delay in the dim level being set
  • matches the devices config that https://home-assistant.io/components/light.x10/ uses (original config options that predate the built in HA x10 support is still supported)
  • Works with mochad https://sourceforge.net/projects/mochad/ or Firecracker (cm17 or cm19)

Even though the custom component predates the built in HA one, I’ve renamed it to x10_tng to avoid confusion with config setup.

I need some advice on config naming. I’ve used config name sections that other components have used that are defined as HASS constants https://github.com/home-assistant/home-assistant/blob/dev/homeassistant/const.py

Potential gotcha’s are:

devices list of x10 modules, versus device (singular) which is essentially the driver back end. Should I rename device to something like driver or backend? This would be different to other HASS config settings

What about filename? Other components use that for serial device name but I’ve already had someone asking about what that is for.

Is this ready for use? I don’t see it in home-assistant.io/components/ . Will adding platform x10_tng simply add it as with other components I’ve used?

It is ready for use, I’m using it :slight_smile:

Is it ready for prime time? Probably not just yet, this is why its a custom component. Custom components are the same as builtin ones, they just happen to live in a separate directory (and you have to manually update it). Hopefully the readme covers installation.

Yes adding it will add it like another regular component.

I mostly use switches for my lights (I don’t use super bright bulbs, and I mostly use LEDs and still have a few CFLs around the place). I have a one lamp that I occasionally dim and it works fine for me with a Magnavox Lamp only module LMT-101 unit. I’ve a report from one user where the dimming partially works (it appears that our devices are different, my lamp unit doesn’t remember dim/brightness levels after it is turned off/on so the current logic is based on that behavior) so I suspect some work is needed there.

Give it a try and share your results! Feedback is requested, I’m trying to do development out in the open (I announced this and the previous version it was based on) here so people could know about it and potentially help out. Where help means feedback, documentation, bug reports, listing known working hardware/config, and maybe even code.