gozwave icon indicating copy to clipboard operation
gozwave copied to clipboard

Get involved in development

Open shayne opened this issue 7 years ago • 9 comments

Hey there, I've been working on and off getting my own zwave implementation working using Go but linking the C++ openzwave library.

I'd love to help out with gozwave, I'm using this stick: https://www.amazon.com/gp/product/B003MWQ30E/ref=oh_aui_search_detailpage?ie=UTF8&psc=1

I've been able to use the library and it detects nodes successfully so I think it's at least somewhat compatible.

If you're up for it, let me know what the current state of the world is and what I can do to help.

shayne avatar Dec 13 '16 02:12 shayne

Hi @shayne

We would happily accept PRs and issues (bugs, improvements, features etc..)! The overall structure is not set in stone and the API and patterns might be subject to change. Perhaps you have some ideas we havnt thought about.

@stamp what do you think?

I've started to add issues so we can keep track of things instead of just checkboxes in the readme file. All are welcome do add more issues and we can keep discussion in them based on topic.

jonaz avatar Dec 14 '16 08:12 jonaz

Sounds great :)

@shayne Looks like you have almost the same stick as me.

I think there is a lot of stuff to do. Right now we have some basic functionality. We are able to control dimmers and switches and receive measurement values from sensors.

Most of the code have been developed by trial and error so the structure is probably not the best. Maybe we could take some kind of online meeting and create a design/structure for the lib?

stamp avatar Dec 22 '16 18:12 stamp

I am also very interested in this project. Let me know any details about an online meeting. Are you all on the Gophers Slack? https://gophers.slack.com/ For an invite, see https://invite.slack.golangbridge.org/

bradfitz avatar Dec 23 '16 00:12 bradfitz

@jonaz created a https://stampzilla.slack.com and I created a #gozwave channel at https://gophers.slack.com

What do you guys think about starting from scratch and create a better structure for the lib?

stamp avatar Dec 23 '16 10:12 stamp

I don't think starting from scratch will do much good except creating work for us. Refactoring and improvements is the way forward I think. Changing the structure does now imply starting from scratch.

We can use the gophers team for now I think

jonaz avatar Dec 23 '16 13:12 jonaz

I'll be working on it on my spare time. I am currently also using https://github.com/ninjasphere/go-openzwave. I like some of the abstractions, like the DeviceFactory. I have a hobby app I'm working on (my real-world use-case), and I'll be using both in parallel, and based on that some PR's will be coming your way.

I would really also like to get the test coverage up, and it would be cool to somehow mock the controller and devices. I'm still quite new to this, so it'll take me some time to get my head wrapped around some of this.

I started home automation with HS3 (HomeSeer). I have it running on a Raspberry Pi at home, controlling every switch in my house. Eventually I'll be hooking up door sensors, etc... I'm a little obsessed :sweat_smile:. I'm putting together my own home auto server, mostly because I think most of the solutions out there are too complicated... so I'm writing my own server... 😄 . Focusing on zwave only. At least for now.

I even made a test rig for testing switches... image uploaded from ios

Oh yes, it's quite serious...

lukescott avatar May 23 '17 23:05 lukescott

Hi @jonaz @stamp @lukescott @bradfitz

I started my own golang implementation of zwave here (still very early): https://github.com/cybojanek/gozwave/

High level api example can be found in the tests: https://github.com/cybojanek/gozwave/blob/master/api/api_test.go

Anyone is welcome to join in!

cybojanek avatar Sep 11 '17 04:09 cybojanek

Hi @cybojanek. We're actually working on https://github.com/gozwave/gozw currently. We started from @bjyoungblood's implementation. Feel free to contribute and bring new ideas. There are a number of issues filed, and I'm sure there is more to work on. All of us are working on it in our free time.

lukescott avatar Sep 17 '17 16:09 lukescott

@lukescott Cool! For now I'll keep working on my own, because I'm having a great time learning golang this way :-)

cybojanek avatar Sep 17 '17 16:09 cybojanek