Navigation

    • Register
    • Login
    • Search
    • OpenHardware.io
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. grumpazoid
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Best
    • Groups

    grumpazoid

    @grumpazoid

    33
    Reputation
    122
    Posts
    431
    Profile views
    0
    Followers
    0
    Following
    Joined Last Online
    Location UK

    grumpazoid Follow

    Best posts made by grumpazoid

    • RE: [Solved] Repeater node causing Problems

      So after some considerable time and loss of sanity I now appear to have a stable setup. I'd like to share what I have done in the hope it may save others a lot of time and frustration.

      By enabling debug in the sketches, I eventually realised that I could not get any node to communicate reliably with the gateway. I was getting lots of NACKS even at short distances.

      I was sure that the problems were radio related but after trying many NRF24 modules I was about to give up.

      Then I read a post somewhere about ground planes.

      As a last resort I added a piece of aluminium between my gateway antenna and the radio. (PA/LNA Version). Eureka!! This has pretty much solved the NACK issues.
      alt text

      Following this one or two nodes still intermittently lost contact after a few hours or days. What is strange is that even if moved close to the gateway, errors continue until the gateway is power cycled? I still don't know why this is.

      I solved this problem by converting the Node PCB antennas into a dipole antenna as detailed at https://www.instructables.com/id/Enhanced-NRF24L01/.
      Now all nodes stay connected.
      Now after a couple more weeks of testing all is still good.

      I am using Domoticz with the MQTT output passed onto Node Red and now have some really cool things going on.

      A big thanks to all that replied and pointed me in the right direction.

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • RE: Where do i start?

      @reindier I discovered mysensors while also looking if it was possible to build my own alarm system.
      I am pleased to report that it is quite possible if you don't mind the fun of building and fault finding.
      I started a few months ago by building some PIR sensors and a serial gateway on a raspberry pi running Domoticz.
      From there on I'm slowly adding to the system. I now have notifications for doorbell, outside temperature, solar panel voltage, sensor battery voltages, Sonoff light running Tasmota..... just this week I've swapped over to an ethernet gateway.

      All the information is available if you take the time to browse the site. Lots of help on the forum as well.

      posted in My Project
      grumpazoid
      grumpazoid
    • RE: Resettable fuses.

      @skywatch Appreciate the reply. I have made up some 500mA quick blow fuses that I already have from a trusted source.

      posted in Hardware
      grumpazoid
      grumpazoid
    • RE: Get last update notification of Relay node within Domoticz

      I have found a workaround by sending the heartbeat message as a separate V_MULTIMETER child. This then gives me a voltage reading of 0V every 30 seconds that I can use with the Domoticz last update feature 😀

      Would like to hear any better ways of doing this.

      posted in Domoticz
      grumpazoid
      grumpazoid
    • RE: Advice for Newbie trying to get started

      Thanks Omemanti

      I will check out myscontroller...looks useful.
      Ive been playing with openHAB today, and after a bit of a struggle, I've managed to create a virtual switch that sends me an email. This gives me hope that a mysensors PIR node will be able to do the same.
      Certainly a great way to learn about many new things!

      posted in General Discussion
      grumpazoid
      grumpazoid
    • Getting Alexa to speak sensor values.

      Here's a quick vid of this morning's project. Getting Alexa to speak the values from the node in my garden.
      Alexa speaks arduino mysensors readings – 00:25
      — grumpy oldgit

      Credit goes to those who made the node red nodes to make it work!

      posted in My Project
      grumpazoid
      grumpazoid
    • RE: Erratic battery reading when powering via RAW pin

      Thanks to all your replies I think I've got it fixed.

      I tried another pro mini....still eratic.
      I then used that second pro mini and built an identical node on another breadboard. Result was perfect readings.
      I then rewired the problematic one and gave it another battery for good measure. It is now more than acceptable although still not as smooth a graph as the second node.
      At the moment, running direct from 18650 and not boosting to 5V does not seem to be an issue for the HC-SR501's.
      Maybe I will run into problems as the battery voltage lowers.
      Node2
      alt text
      Node1
      alt text

      posted in Hardware
      grumpazoid
      grumpazoid
    • RE: diagram of MQTT Gateway and MQTT Broker in the overall scheme of things ?

      @guillermo-schimmel I have had a look at openHAB but it took me half a day to work out how to get it to send an email. Domoticz seems somewhat easier for a beginner like me. I also like the way it has user accounts built in.

      I must say I like the idea of communication with a vacuum cleaner. Maybe I need to get that dust sensor ordered?

      posted in General Discussion
      grumpazoid
      grumpazoid
    • RE: Wipe/Change serial gateway arduino

      @mfalkvidd Thanks for that clarification. I am also thinking of swapping from serial to ethernet when I have time so I can use MQTT.

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • RE: Siren build

      @mfalkvidd Sounds reasonable. I am thinking a small UPS would be a good idea so I could keep my raspberry pi's, router, switch etc going as well.
      Time to look at that relay node then!

      posted in Hardware
      grumpazoid
      grumpazoid

    Latest posts made by grumpazoid

    • RE: void receive and while loop question.....

      @Yveaux Makes sense now. Thanks again. 🤗

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • RE: void receive and while loop question.....

      @Yveaux

      Thanks for that explanation. Understanding this, the bit I am still confused about is how I can use wait() and still able to listen for incoming messages. Is that an exception to the rule? What stops the processing being blocked in this case?

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • RE: void receive and while loop question.....

      Hope ok to ask here as I am struggling a bit to understand wait() in context with loops. I have used it with success with a separate receive function but need a bit of clarification.

      I have read on another post that wait is the same as using the millis method but can't get my head around how to use it.
      If using millis I would use the state machine if else method as suggested by @scalz

      How do I use wait in one place and then get another loop or process to run in the meantime?

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • MYSBoatloader burning confusion

      I have watched the video and tried to follow along. here
      My test board is a pro mini 3.3V 8Mhz
      I can read the fuses with AVRDUDESS and I get
      L FF
      H DA
      E FD

      This does not seem to match with the recommended settings but there is no mention what to do on the video?
      The text suggests burn other values.
      I am guessing I have an external oscillator as I can see the crystal on the PCB? The instructions don't show settings for 8MHz external.

      Next I have copied over the necessary boards.txt information, but there are 2 options for 8MHZ. MYBL8 and MYSBLNRF.
      Both show up in the arduino IDE as 8MHz RC in the boards/frequency section.
      I dont't know which one to choose.

      Also if I want to to use a channel greater than 110, I need to compile the hex file.
      Is there a guide on how this is done. I have searched but drawn a blank.

      Any guidance appreciated.

      posted in Troubleshooting
      grumpazoid
      grumpazoid
    • RE: 12v battery monitor

      @trond-arntzen I just use a voltage divider with 1Megaohm and around 82K resistor for measuring my solar charged battery.

      @Mustang65 That ups board looks good. I could do with something similar as a battery backup for my raspberry pi's. Of course they would need a 12V to 5V conversion.

      posted in Mozilla WebThings Gateway
      grumpazoid
      grumpazoid
    • RE: Sample sketch for test node including hardware and software acknowledgement

      @mfalkvidd said in Sample sketch for test node including hardware and software acknowledgement:

      char messagestring[100];
      message.getString(messagestring);
      Serial.println(messagestring);

      @mfalkvidd Fantasic. Thank you. That is what I was looking for . It works now !!!

      posted in Development
      grumpazoid
      grumpazoid
    • RE: Sample sketch for test node including hardware and software acknowledgement

      @BearWithBeard Thanks for confirming this. I had tried most of the options listed on the MyMessage page.

      I have tried both ways you suggest again just now - getString() returns nothing and getUInt always returns zero.
      At the moment it does not matter as I can see the value listed at the end of the echo(as posted previously) it would just be nice to be able to "harvest" it.
      For now I will use the value that has just been sent - for resends etc.

      posted in Development
      grumpazoid
      grumpazoid
    • RE: Sample sketch for test node including hardware and software acknowledgement

      @Yveaux Thanks for the link.
      I'm not sure if I am missing something simple?

      So I can see the echo in the monitor :

      173 TSF:MSG:READ,0-0-9,s=1,c=1,t=16,pt=2,l=2,sg=0:111
      182 TSF:MSG:ECHO
      

      In this case the original sent value was 111 and I can see it in the echo message.

      If I do

      Serial.println(message.isEcho());
      

      I get a 1 printed. Is there a message.something that contains the original sent value?

      posted in Development
      grumpazoid
      grumpazoid
    • RE: Sample sketch for test node including hardware and software acknowledgement

      @Yveaux said in Sample sketch for test node including hardware and software acknowledgement:

      @grumpazoid said in Sample sketch for test node including hardware and software acknowledgement:

      Transportready seems to report good even when lots of hardware NACKS occur.

      Transportready is just an indication that your radio is good to go. It does not depend on your link quality.

      I've also seen the echo come back as good even though the ack did not.

      Welcome to the wonderful world of radio communications! 😄

      Thanks. That explains why Transportready always reports good.

      In my day job I work with wired and wireless networks that mostly use TCP/IP so as long as the radio link is there failed messages are handled automatically.
      I've updated my sketch now and added an extra bool variable for when echo is received. So now the node can be set to only sleep when it hears an echo. Good stuff.

      A message can be correctly received by the target node, while the ack gets lost. The target node then echoes the message back to the source, which receives it correctly.
      Perfectly viable scenario.

      Great that's what i thought was happening. Good to have it confirmed.

      Is it possible to serial print (or store in a variable) the returned message payload? I can see how to print the other parameters but not the payload itself.

      posted in Development
      grumpazoid
      grumpazoid
    • Sample sketch for test node including hardware and software acknowledgement

      Recently, I have been trying to test out the quality of my node to gateway communication, as I know that occasionally messages from nodes don't make it through.

      I could not find a simple test sketch that had examples of how to perform the different types of message delivery checks, so I have searched the forums and produced a simple sketch that may be of use to others.

      The hardware is as simple as can be:
      Simple Mysensors node

      The sketch will send alternating 1 and 0 to simulate a switch. Each time it will check for :
      Transportready
      Radio Hardware ACK
      Software Echo.

      Results are displayed in the debug serial window.

      It it interesting to note that the results so far are different from what I expected.
      Transportready seems to report good even when lots of hardware NACKS occur.
      I've also seen the echo come back as good even though the ack did not.

      Here is the sketch

      // Mysensors test sketch 1.3 by grumpazoid
      
      #define MY_DEBUG // Enable debug prints
      
      // #define MY_PARENT_NODE_ID 0 // use this to define next node on route e.g. a repeater
      // #define MY_PARENT_NODE_IS_STATIC // dont allow node to search for other repeaters
      // #define NODE_ID 200 // enable this if you want the node to have a specific ID
      
      #define MY_RADIO_RF24 //Enable and select radio type attached
      //#define MY_RADIO_NRF5_ESB
      //#define MY_RADIO_RFM69
      //#define MY_RADIO_RFM95
      
      #define MY_RF24_PA_LEVEL RF24_PA_MAX   // Set Radio Power. Values can be MIN LOW HIGH MAX.  FOR PA+LNA MODULE LOW CAN WORK BETTER!! 
      
      #include <MySensors.h>
      
      #define CHILD_ID 1
      int STATE = 0;
       
      // Initialize motion message
      MyMessage msg(CHILD_ID, V_TRIPPED);
       
      void setup() 
      { 
        sendSketchInfo("Test sensor", "1.3");
        present(CHILD_ID, S_DOOR); 
      }
      
       
      void loop()
      {
         //TEST FOR TRANSPORT READY
         if (isTransportReady())
          {
               Serial.println ();
               Serial.println ("Tranport Ready");  
          }
       
      // SEND MESSAGE
      // send(msg.set(STATE),true); 
      
       //TEST FOR HARDWARE ACK
       if (send(msg.set(STATE), true))  // This appears to also send the message
      {                        
            Serial.println("HARDWARE ACK----UPLINK AVAILABLE");
            
      }
      else {
            Serial.println("HARDWARE ACK----UPLINK IS NOT AVAILABLE. NO HARDWARE ACK RECEIVED");
      }
      
        #ifdef MY_DEBUG
        Serial.print("current vale of STATE = ");
        Serial.println(STATE);
      #endif;
      
      // Change state ready for next time
          if (STATE==0) { 
           (STATE=1); 
            }
          else if (STATE==1){
          (STATE=0) ;
          } 
      
         #ifdef MY_DEBUG
        Serial.println("Going to wait a few seconds for echo message");
      #endif;
         wait(3000); // Wait 3 seconds
       
         
         // We shaould have WAITED long enough now for echo message so let's have a sleep.
           
           #ifdef MY_DEBUG
        Serial.println("Going to sleep for 10 seconds");
      #endif;
      
         sleep(10000); // Sleep 10 seconds   
      }
      
      // END OF MAIN LOOP
      
      
      //Listen for incoming messages
      void receive(const MyMessage &message) {
         
        if (message.isEcho()) 
        {
           Serial.println("SOFTWARE ECHO RECEIVED---- from gateway");
        }
      }
      
      
      posted in Development
      grumpazoid
      grumpazoid