Comments (6)
Yes, you are right. Tipically Problems you have during new development.
The unpi-net library is now at a Version that is running and don't need further development to run ZigbeeNet. We are now at the point where logic needs to be implemented inside ZigbeeNet, because sending data to the TI Hardware via unpi-net is running.
So i think it that the next step would be to create a nuget package for unpi-net and reference it in ZigbeeNet.
from zigbeenet.
Which Project reference do you have, that is not contained in the repository?
Do you mean unpi-net which is referenced as a submodule?
I am not really happy about submodules and would prefer a NuGet Package with SourceLink, but i haven't implemented it, yet.
from zigbeenet.
You probably wouldn't use this project unless you use unpi-net or another hardware interface, so in my mind they belong together. If another hardware interface is needed, it should be added accordingly.
A end user should probably only need to do:
var zigbeeInt = ZigbeeNet.CC2531(); // Static function to initialize the interface
zigbeeInt.PacketReceived += MyPacketHandler;
zigbeeint.Send(amazing stuff);
If the UNPI is intended to be a separate project for other implementations, then it should be moved out as it's own project when the need arise.
A cool feature is to include the possibility of using the interface over a TCP connection (serial to TCP) in addition to regular serial port.
from zigbeenet.
I understand and the idea sounds goog. But you can use unpi-net for other Projects, too. Zigbee is just one possible solution. Other would be e.g. Bluetooth
See: http://processors.wiki.ti.com/index.php/Unified_Network_Processor_Interface
So i would prefer an own project for it. And because of that we have a reference on ZigbeeNet.
But the idea of an interface for different Zigbee Hardware Interface was already an idea of mine. We can add a new issue in ZigbeeNet for this :-)
Do you mean that unpi-net would be better as a REST Service than a own library? Or what do you mean?
from zigbeenet.
Yes, the UNPI can be used for other projects, but currently it is only used here. So pragmatically you should include it in the project, not make a separate project (repository) for it.
At a later stage you may take it out of this project and make it a separate project, but when you do, it should be testable that it doesn't break any implementations (this project). It's a common problem when working on a project that is divided into parts; when do you split them up. Answer is usually when needed.
In the end, by having it in the project, if only temporary, will make development easier and refactoring has less chance of breaking.
from zigbeenet.
I removed the submodule and replaced project reference of unpi-net with it's new NuGet package.
from zigbeenet.
Related Issues (20)
- Missing cluster, but message came from device
- Conbee 2 Timeout / Unresponsive HOT 1
- Reliable way to detect dongle disconnects HOT 3
- ConBee II connected but all the values are 0 or null
- Get device state HOT 2
- Nuget packages out of date? HOT 3
- Issue in RequestKey command(send by sleepy end device) handling by coordinator for Ember hardware HOT 1
- Make the classes less private & more protected so we can extend some classes. HOT 2
- ZigBeeKey(string keyString) doesn't correctly parse hex HOT 1
- Correct settings for XBee? HOT 2
- ZigbeeNet is a community project
- How can i replace my dongle?
- Data transfer using CC2531
- Permit Join with XBee
- Sonoff zigbee 3.0 dongle not starting... HOT 2
- How to read data from CC2530?
- Can i add support for zigbee devices? HOT 1
- Support for CC2652 ? HOT 1
- Recommendations for Solid USB Dongle
- No device joining the network, EZSP v12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from zigbeenet.