Add hardware nodes for Beaglebone Black#34
Add hardware nodes for Beaglebone Black#34maxwellhadley wants to merge 24 commits intonode-red:masterfrom maxwellhadley:master
Conversation
Added a triggered analogue input node
Added digital input node - initially this is just BBB-discrete-in
Modified 145-digital-in.js adding various debugs to try and trace why the initial messages don’t appear
Further attempts to get the initial message working. Added activeLow property. Output messages now include topic. Better help text. Change name to discrete-in
Coerce the currentState to always be numeric & use === tests Catch the first spurious interrupt when x.value is undefined Add more debug output Add a second timer to get the first message out. This still fails at node-RED startup when the node is not activeLow
Make the colours the same as the RPi equivalents. Remove ‘BBB’ from the node names. Further debug output
Commented out debug: added numeric validator
Added breakpoints property to the node Building the breakpoints editor (nearly there!)
Mutable/immutable behaviour of breakpoints completed, and the 0 and 1 input values are no longer editable. Adding a breakpoint now inserts it in the list in next-to-last place, with sensible default values.
Added input scaling function and averaging of multiple readings for noise reduction to the analogue input node. Added the ‘sanity check’ read of the digital input pin to the timer callback in the discrete input node
Added the pulse-in node code. Added simple debouncing logic to discrete-in (note: this implementation may be badly affected if there is a lot of very fast bouncing.
Catch-up since original fork
Got the pulse-in node working properly, and tidied up a few E&O in the other nodes
The output node is currently in 145-digital-in. This situation is hopefully only temporary…
Converted tabs to spaces as required
|
Before I look at this in depth, please could you squash your commits down? Would rather merge a single commit. |
|
Nick, I tried doing a rebase, but to my surprise I was presented with a long list of commits that were nothing to do with me, mixed up with mine, and I wasn’t sure what to do with them. There were far more than the 22 I thought I’d asked for. The situation didn’t look like the example on the web page you pointed me at, so I thought I’d better play safe, and abandoned the rebase. I didn’t want to meld my commits into somebody else’s completely unrelated commits. To be honest I expected that developing on a branch and merging with my master prior to generating a pull request would isolate all the commits to the branch: but apparently not. The network graph at https://github.com/maxwellhadley/node-red-nodes/network shows what I’ve been doing, most clearly if you use node-red as the base. Should I have done the rebase prior to merging the beaglebone-black-hardware branch and switching back to master? If so, can I undo it? I’m still very much a beginner with git! Cheers, Max On 27 Feb 2014, at 22:01, knolleary notifications@github.com wrote:
|
|
I think I've done it properly. Please check & let me know if there is anything still amiss. |
|
Hi @maxwellhadley - I still see 24 commits when I look at the pull request. I did have a go at cloning your repository and squashing the commits myself, but couldn't figure it out - it is beyond my git knowledge to do properly. To be honest, now you have your files are ready to submit, I suggest reforking the repository (ie, delete your fork and create a new one), then add your files in a single commit. I'm sure there will be git experts who would scoff at this suggestion, but this is more pragmatic. Having looked at your nodes, before doing the above, please can you add 'bb-' as a prefix to you node types? The current node names are too generic and could cause clashes. I don't actually have a bbb to play with, so I'm going to defer final merge decision to @dceejay |
|
Yes had a play tonight - really good stuff.... I want them please :-)
functionally.... yes please ! |
|
Nick, I squashed the commits as you asked, but then I used the Github GUI tool to sync with GitHub and it has done a merge! So now the repository contains both squashed and unsquashed versions of everything. I may resort to the nuclear option as you suggest. Dave, I'm happy to modify the node names and appearance as you ask, but I am reserving 'digital' for the n-bit-wide versions (to come). There is a minor problem though in that the palette doesn't handle long node names gracefully. It will take me a day or two before I can get round to it. I'm glad you like the contribution! Max |
|
How about "port" for the n-wide ones ? eg like Atmel PORT C D etc (and indeed on the BeagleBone). |
|
Superseded by pull request #37 |
* Update version of node-ssdp and use explicitSocketBind option to work with multiple network interface cards. Based on discussion in [node-ssdp issue #34](diversario/node-ssdp#34) * Bumping the version number
Analogue and digital hardware I/O nodes, based on bonescript, getting round the inability to use callbacks in node-RED function nodes.