alexbain / lirc_web

Control LIRC from the web using NodeJS and lirc_node
125 stars 60 forks source link

GPIO pins as configurable device #37

Closed OvisMaximus closed 8 years ago

alexbain commented 8 years ago

One thing I just noticed was that now that wiringPi is a required dependency I can no longer do local development on my OSX laptop as the package fails to install. It'd be nice to come up with a way to specify optional dependencies that are only installed if the user chooses to install them.

npm does support optionalDependencies in the package.json file but I'm not certain the best way to conditionally test for wiringPi when trying to reference / use it.

OvisMaximus commented 8 years ago

Hi @alexbain , now that this is merged, I willl rebase my macro engine branch. Then I'll face this one also. Wednesday evening I'll have the next spare time slot...

Maybe I'll just discard wiringPi and use the file interface of the gpio pin kernel driver. For switching the relais we don't have timing issues but we get rid of all the fuzz this dependency comes up with. Also, there is no need anymore to run osur as root, since only the configuration commands have to run at boot time with high privileges.

alexbain commented 8 years ago

Ah, okay, that could be a good approach.

I'm cleaning up my devices branch (devices-osur) and I'm going to open a merge request for that in a little bit. I'll keep it open for a week so anyone can add some comments. After that's in I'll tackle a lightweight way to handle zwave devices. I'm trying to avoid too much zwave logic in the application (preferring to keep as much in the config file as possible).