I thought I'd share a part of my 'workshhop'. Only part of it due the rest being in a bit of a mess at the moment, so here is the 'good' bit......
@bc123 said in I am in need of some programming help.:
I have a cool project
So does everyone else
I hired someone to do about a year ago, but it never worked entirely.
Why is that?
need some help with the programming.
Then post your code and the issues you are facing and someone might help you out.
Project: Driveway alert system, looooong driveway.
So it's just a basic 'alert system' - good.
I have 4 sensor beams shooting across the driveway and they are spaced about 100' apart from each other.
That is good if that is what you want/need for your cool project.
Each can provide a NO or NC contact.
I have conduit running between all 4 points
Good idea if you don't want jammable RF.....
and was planning to run Ethernet wire between them
So only empty conduit at the moment then?
The board has a LORA radio on it
and is transmitting to my Arduino receiver, which is tied to a pi running Domoticz.
I hired someone a year ago to build a system for me using 4 transmitters (one for each sensor),
You already told us this bit.
but I don't think he knew what he was doing.
Why is that?
We got several running temperature/humidity data
That wasn't the original 'alert' spec was it? Or maybe it was? Maybe it is supposed to be a driveway alert system with temperature and humidity sensors 100 feet apart? Who knows? What are you 'really' wanting to do here?
but, the input pins don’t work like they’re supposed to.
So is this faulty hardware issue then?
Why 4 sensors on the driveway? Eventually I’ll install my railroad signals and be able to direct one way traffic up and down the driveway! How cool is that!
If you really have that much traffic on your driveway then it might be a better idea to have a 2-lane driveway.
Help anyone? Happy to compensate for your efforts!
How can we help? You posted an 'alert' dream that later included temperature and humidity. Then it morphed into a traffic control system (either automatic or manually controlled, we don't know which at this stage).
Then you ask for programming help and don't even post a single line of code.
Yes that was all a bit 'tounge-in-cheek' but hopefully you get the idea.
First define what you actually want.
Post code you are trying to get working.
Post drawings of how it is all connected up.
Post photos of the project.
Where is the project located on this once fine planet?
Where do I get my compensation from?
The current NRF24 set up is more secure than bluetooth or wifi from attack.
I say this based on the fact that anyone with a laptop, mobile etc can have software to crack/hack/spoof/inject into bluetooth or wifi. It is not that difficult for kids to do.
The NRF is another matter as to achieve this on that radio module would require acquiring a module, setting it up with a pc/phone and then getting software to attack it.
People often go the easiest route and I am less worried about nrf24 than I would be if the system used bluetooth/wifi or cloud.
Just my thoughts on a dark and wet Monday morning.....
@skywatch oh great thanks for that !
by removing the smd then the signal becomes "compatible" with a 2.4ghz stick antenna ?
It completely removes the strip antenna on the pcb as well as the matching stub. The component is likely a zero ohm resistor. So you will be taking the RF from the point before the antenna and it should work.
or shall i go with wire and adjust length ?
That is up to you! You could always try both and see what works best for you. It's only a few minutes work. Don't forget to post your findings for others to learn from...
Your best bet is still to simply change to a different unused channel.
Nrf24l01+ has over 100 channels available, why insist on using one in use by someone else nearby?
Even if you do encrypt all data the radios will still suffer due the the high level of signals around swamping the receiver front ends and reducing sensitivity adn increasing liklihood of packet collisions.
Far better to find a clear channel and use that, but it's up to you at the end of the day.
@TheStaticTurtle You are using an older version of mysensors. 2.3.2 is current so first of all upgrade to that.
Second, looking at the node log it never finds the gateway. FPAR is "find parent" and it never does, so nowhere to send the data. The "!TSM:FPAR:FAIL" is also a clue as to no comms with the gateway.
Why this is I don't know as you haven't posted your code.
Some of the MQ senors require a 24hour+ burn in before they stabilise.
Also, check all wires for continuity and check all soldered joints for 'dry' joints, cracks or blobs. A photo of the project might help. REflow any solder joints to ensure good contact.
You can't do what you want using that sensor - The sensor is just a simple on/off type sensor that tells you if the sensor plate is wet or not, it does not measure how much rain is falling. Even if you timed how long it was activated how would you know between heavy rain and a light shower?
You need a 'tipping bucket' type sensor to give you an estimate of how much rain there has been, but even then you need to do some work with experimentation to get reasonable accuracy.
If you have not already seen it, "scammer payback" on you tube is fun to watch.
I used to get a lot of calls from China. Each time I'd block the number and report them. Eventually I have a dual system now where I don't answer calls that are not already in my phone book along with asking people who do accidently get through if they can't get a proper job or if their grandparents know how they make a living.
Last week I got the washing machine scam. She said my cover needed to be renewed. I told her I didn't know the company she claimed to be calling from and didn't have insurance with them.
She insisted I did and read my name and address again as if this was some sort of proof.
I told here to send me the renewall in the post with start and end dates of the existing contract, method of payment on the original contract and the make and model of my washing machine that is alledgedly insured with them.
I don't expect it will ever arrive......
@mfalkvidd Thank you for confirming that is how it works - so my next question is that if receive() is being called and functioning, but loop() is not - what happens to the messages with state change for a node child?
Clearly nothing within the loop() is updated (as it is not running) so messages received will be ignored until such time as loop() is able to process incoming messages? Or the state changes get lost?
To elaborate on my use, the issues is 'synching' LED lights with the controller after an unexpected power cut.
I have the nodes remember in eeprom their last state, but can't send that when the power comes back on as it takes a while for the controller and pi to boot and be running. If the nodes send it straight away the controller won't be available.
So a wait() in setup seems a way to do this, but with receive() running and loop() not then I am wondering what problems might occur if someone changes the lights state during this wait() period......
The nodes have IR senders for light control and IR receivers so that even if the manufacturers remote for the lights is used, then this is sensed by the node and the controller gets updated. This means that any method of changing the lights can be used and the controller always knows the status.
I suppose I could put the delay in loop() and only have it for the first run of loop() or I could add a before().... I have to give this some more thought!
So I can't figure this out -
If I use a wait() in setup(), will this delay running loop() and all other functions (like Receive() ) until after the wait() has timed out?
Will receive() still function even if a wait() is running in setup()?
Having a bad brain day it seems!