Skip to content
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. OpenHardware.io
  3. 💬 Stamp size MySensor node
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store

💬 Stamp size MySensor node

Scheduled Pinned Locked Moved OpenHardware.io
atmega328atsha204acoincellmysensor
50 Posts 13 Posters 13.0k Views 11 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • alexsh1A Offline
    alexsh1A Offline
    alexsh1
    wrote on last edited by
    #34

    I have just updated a stamp size node to MySensors 2.1.1 and had to include the following into the sketch:

    #define MY_RF24_CE_PIN 9
    #define MY_RF24_CS_PIN 10
    #define MY_SOFTSPI
    #define MY_SOFT_SPI_SCK_PIN 13
    #define MY_SOFT_SPI_MISO_PIN 12
    #define MY_SOFT_SPI_MOSI_PIN 11

    The fist two lines are not required (it is in the MyConfig.h), but for me to understand how nrf24l01+ is connected.
    I hope it helps

    Regards
    Alex

    1 Reply Last reply
    0
    • henninneH Offline
      henninneH Offline
      henninne
      wrote on last edited by
      #35

      Hi @GertSanders, @alexsh1

      I'm considering to build a few nodes with this design, could anyone that have done and tested these give some feedback on how it work? Battery life etc. In my case I will mostly use it as window/door sensor and water leakage sensor so it would not send data to frequently.

      Thanks for any input.

      alexsh1A 1 Reply Last reply
      0
      • R Offline
        R Offline
        reinhold
        Hardware Contributor
        wrote on last edited by
        #36

        @GertSanders,
        Thank you for the nice, small design. I'm trying to build one myself, but I'm running into issues burning the bootloader using the ArduinoISP sketch on an Arduino Nano (328). Looking at the schematics, the pins of the ICSP header (from left to right, if the headers are facing you) are:
        Reset => Pin 10 of Nano
        SCK => Pin 13 of Nano
        MISO => Pin 12 of Nano
        MOSI => Pin 11
        VCC => VCC on Nano
        GND => Gnd on Nano

        I set the board to Arduino Pro or Pro Mini in the Arduino IDE, selected Arduino as ISP and tried to burn the bootloader, but there always is the error message:

        avrdude: Expected signature for ATmega328P is 1E 95 0F
        Double check chip, or use -F to override this check.
        Error while burning bootloader.

        Any idea what's wrong?

        I built two copies of the board, and I get the same message with both. (mirroring the connectors of the ICSP header doesn't work, either).

        Thanks a lot!

        GertSandersG alexsh1A 2 Replies Last reply
        0
        • R reinhold

          @GertSanders,
          Thank you for the nice, small design. I'm trying to build one myself, but I'm running into issues burning the bootloader using the ArduinoISP sketch on an Arduino Nano (328). Looking at the schematics, the pins of the ICSP header (from left to right, if the headers are facing you) are:
          Reset => Pin 10 of Nano
          SCK => Pin 13 of Nano
          MISO => Pin 12 of Nano
          MOSI => Pin 11
          VCC => VCC on Nano
          GND => Gnd on Nano

          I set the board to Arduino Pro or Pro Mini in the Arduino IDE, selected Arduino as ISP and tried to burn the bootloader, but there always is the error message:

          avrdude: Expected signature for ATmega328P is 1E 95 0F
          Double check chip, or use -F to override this check.
          Error while burning bootloader.

          Any idea what's wrong?

          I built two copies of the board, and I get the same message with both. (mirroring the connectors of the ICSP header doesn't work, either).

          Thanks a lot!

          GertSandersG Offline
          GertSandersG Offline
          GertSanders
          Hardware Contributor
          wrote on last edited by
          #37

          @reinhold
          Hi, the first thing I would check is to see if you can burn a boot loader on a standard 328P DIP format with the Nano. I'm not sure the ISP sketch, when running on a Nano matches the exact physical pins for MISO, MOSI and SCK. So check that.
          I also burnt the boot loader with the sketch, but on a classic Arduino UNO as ISP. Never tried to do this from a Nano as ISP.

          GertSandersG R 2 Replies Last reply
          0
          • GertSandersG GertSanders

            @reinhold
            Hi, the first thing I would check is to see if you can burn a boot loader on a standard 328P DIP format with the Nano. I'm not sure the ISP sketch, when running on a Nano matches the exact physical pins for MISO, MOSI and SCK. So check that.
            I also burnt the boot loader with the sketch, but on a classic Arduino UNO as ISP. Never tried to do this from a Nano as ISP.

            GertSandersG Offline
            GertSandersG Offline
            GertSanders
            Hardware Contributor
            wrote on last edited by
            #38

            @reinhold
            Something else I was thinking about. I did burn the boo loader before I mounted a NRF24L01+ board on my stamp size board.
            I made another board recently and found that burning a boot loader while the radio is connected, gives me issues like the one you mention: sometimes an unexpected signature error, sometimes it starts and stop loading midway ... That was on a different board, but with basically the same connections between processor and radio.
            So I think that you do need to load the boot loader before mounting the radio on the board. As for my newer board where I first found this issue, it was a robot control board I now need to redesign so that I can refresh the boot loader (ro anything else via ISP) with a mounted radio, by providing a "switch" of some kind to isolate the radio when I do not want it to interfere with the ISP loading.

            1 Reply Last reply
            0
            • henninneH henninne

              Hi @GertSanders, @alexsh1

              I'm considering to build a few nodes with this design, could anyone that have done and tested these give some feedback on how it work? Battery life etc. In my case I will mostly use it as window/door sensor and water leakage sensor so it would not send data to frequently.

              Thanks for any input.

              alexsh1A Offline
              alexsh1A Offline
              alexsh1
              wrote on last edited by
              #39

              @henninne sorry for a late reply. The battery life is excellent. I have one node working as a door sensor and another one I'm testing as a battery voltage sensor - just sends voltage every 60 mins. The door sensor is powered by two AAA batteries and has been working for 5-6 months and still shows 3.1V+
              The battery sensor is running on a coin cell and consumes around 6uA while sleeping.

              1 Reply Last reply
              0
              • R reinhold

                @GertSanders,
                Thank you for the nice, small design. I'm trying to build one myself, but I'm running into issues burning the bootloader using the ArduinoISP sketch on an Arduino Nano (328). Looking at the schematics, the pins of the ICSP header (from left to right, if the headers are facing you) are:
                Reset => Pin 10 of Nano
                SCK => Pin 13 of Nano
                MISO => Pin 12 of Nano
                MOSI => Pin 11
                VCC => VCC on Nano
                GND => Gnd on Nano

                I set the board to Arduino Pro or Pro Mini in the Arduino IDE, selected Arduino as ISP and tried to burn the bootloader, but there always is the error message:

                avrdude: Expected signature for ATmega328P is 1E 95 0F
                Double check chip, or use -F to override this check.
                Error while burning bootloader.

                Any idea what's wrong?

                I built two copies of the board, and I get the same message with both. (mirroring the connectors of the ICSP header doesn't work, either).

                Thanks a lot!

                alexsh1A Offline
                alexsh1A Offline
                alexsh1
                wrote on last edited by
                #40

                @reinhold The error message means that AvrDude could not communicate with target processor. Ttiple check your wiring. Can you try a different target board to make sure Nano works as expected?

                1 Reply Last reply
                0
                • GertSandersG GertSanders

                  @reinhold
                  Hi, the first thing I would check is to see if you can burn a boot loader on a standard 328P DIP format with the Nano. I'm not sure the ISP sketch, when running on a Nano matches the exact physical pins for MISO, MOSI and SCK. So check that.
                  I also burnt the boot loader with the sketch, but on a classic Arduino UNO as ISP. Never tried to do this from a Nano as ISP.

                  R Offline
                  R Offline
                  reinhold
                  Hardware Contributor
                  wrote on last edited by
                  #41

                  @GertSanders Thanks for the response.
                  I had already used the nano to install the bootloader on the linbus analyzer and linbus injector boards, so apparently the nano can be used with the ArduinoISP sketch. I also tried re-installing a bootloader to another nano via the ICSP pins and it worked.

                  I also tried building my last PCB for your stamp-sized nodes without the wireless module installed, but I get the exact same behaviour. (You are right, it's not so far-fetched that the radio module might interfere with the bootloader installation, since the ICSP header also just breaks out the SPI headers. On the other hand, the slave select for the nrf24l01+ is not pulled low by the arduinoISP, so it should not interfere on the SPI bus...).

                  @alexsh1
                  I already tripple checked my wiring (even tried switching MISO/MOSI), but I can't find any problem. In fact, only with this very wiring do I get the "Expected signature for ATmega328P is 1E 95 0F" error message, as only with this wiring, the signature is different from 0x000000. Here's the verbose log of the bootloader burning:

                  https://pastebin.com/Lw3Ri6wg

                  Strangely, I do not get the same signature when I try to burn the bootloader again (0x040404 => 0x0e0808 => 0x080808; 0x820202 => 0xc10101 => 0x820202).
                  So it seems that communication is somehow possible, but only garbage is observed.

                  FWIW, I'm using the "Arduino Pro or Pro Mini" (like I did with the linbus boards) with processor ATmega328P (3.3V, 8MHz).

                  The only difference I can see between the working linbus and nano boards and this stamp-sized node is that the linbus boards have an external crystal, while this stamp-sized node appears to use the internal crystal of the chip. Can this be the difference?

                  1 Reply Last reply
                  0
                  • R Offline
                    R Offline
                    reinhold
                    Hardware Contributor
                    wrote on last edited by
                    #42

                    The bootloader burning issue was indeed a problem with the crystal: It seems that the atmega328p that I bought on aliexpress came with the fuse set to external crystal, so they worked fine on all boards with an external crystal, but this stamp-sized node didn't react because the internal oscillator was disabled in the chip. I had some 16MHz SMD crystal lying around, soldered jumper wires to them and manually held them to pins 7 & 8 of the atmega328p while trying to burn the bootloader. That's quite delicate as the pins are so small, but it works astonishingly well.
                    As boards I used the "MiniCore atmega328" board that allowed me to select the internal crystal and also lower the black-out voltage.

                    With the external crystal held to the atmega's pins, I was able to properly burn the bootloader and activate the internal oscillator. Now, the board seems to work just fine.
                    The only issue is that I just realized I don't have any CR1632 batteries. I suppose CR1620 will also work, but that a shorter battery life?

                    Thanks again,
                    Reinhold

                    GertSandersG 1 Reply Last reply
                    0
                    • R reinhold

                      The bootloader burning issue was indeed a problem with the crystal: It seems that the atmega328p that I bought on aliexpress came with the fuse set to external crystal, so they worked fine on all boards with an external crystal, but this stamp-sized node didn't react because the internal oscillator was disabled in the chip. I had some 16MHz SMD crystal lying around, soldered jumper wires to them and manually held them to pins 7 & 8 of the atmega328p while trying to burn the bootloader. That's quite delicate as the pins are so small, but it works astonishingly well.
                      As boards I used the "MiniCore atmega328" board that allowed me to select the internal crystal and also lower the black-out voltage.

                      With the external crystal held to the atmega's pins, I was able to properly burn the bootloader and activate the internal oscillator. Now, the board seems to work just fine.
                      The only issue is that I just realized I don't have any CR1632 batteries. I suppose CR1620 will also work, but that a shorter battery life?

                      Thanks again,
                      Reinhold

                      GertSandersG Offline
                      GertSandersG Offline
                      GertSanders
                      Hardware Contributor
                      wrote on last edited by
                      #43

                      @reinhold
                      Glad you found the issue. I'm not sure there are 1616 batteries, but two on top of each other might fit ?

                      R 1 Reply Last reply
                      0
                      • GertSandersG GertSanders

                        @reinhold
                        Glad you found the issue. I'm not sure there are 1616 batteries, but two on top of each other might fit ?

                        R Offline
                        R Offline
                        reinhold
                        Hardware Contributor
                        wrote on last edited by
                        #44

                        @GertSanders Am I missing something, or wouldn't two 3V batteries in series fry the atmega and in particular the nrf24 with 6V?

                        GertSandersG 1 Reply Last reply
                        0
                        • R reinhold

                          @GertSanders Am I missing something, or wouldn't two 3V batteries in series fry the atmega and in particular the nrf24 with 6V?

                          GertSandersG Offline
                          GertSandersG Offline
                          GertSanders
                          Hardware Contributor
                          wrote on last edited by GertSanders
                          #45

                          @reinhold
                          Totally correct. Very dumb suggestion on my part. You would get 6V, which is above spec for the atmega328p and the nrf24

                          1 Reply Last reply
                          0
                          • K Offline
                            K Offline
                            krisha
                            wrote on last edited by krisha
                            #46

                            what about adding a step-up converter to drain the battery more? or does it waste too much power?

                            thx for design and this small battery powered node ;-)

                            1 Reply Last reply
                            0
                            • K Offline
                              K Offline
                              krisha
                              wrote on last edited by
                              #47

                              I think for this node an ISP programmer is needed. It might be nice, if you can put a notice for that on mysensors.org.

                              Maybe also mention that you should not use the VCC of your programmer. In most cases it will deliver 5V which will fry the NRF chip :-)

                              GertSandersG 1 Reply Last reply
                              0
                              • K Offline
                                K Offline
                                krisha
                                wrote on last edited by
                                #48

                                another thing, I ordered the PCB at OSH park...

                                Is there any possibility that you and/or MySensors will gain something (affiliate)?

                                the pin holes are a bit small for standard pin headers. Would be nice if you could increase the diameter a bit on version 3 :-)

                                1 Reply Last reply
                                0
                                • K krisha

                                  I think for this node an ISP programmer is needed. It might be nice, if you can put a notice for that on mysensors.org.

                                  Maybe also mention that you should not use the VCC of your programmer. In most cases it will deliver 5V which will fry the NRF chip :-)

                                  GertSandersG Offline
                                  GertSandersG Offline
                                  GertSanders
                                  Hardware Contributor
                                  wrote on last edited by
                                  #49

                                  @krisha
                                  I use a 3V3 programmer. I also use standard pin headers, they fit without a problem.

                                  K 1 Reply Last reply
                                  0
                                  • GertSandersG GertSanders

                                    @krisha
                                    I use a 3V3 programmer. I also use standard pin headers, they fit without a problem.

                                    K Offline
                                    K Offline
                                    krisha
                                    wrote on last edited by
                                    #50

                                    @GertSanders
                                    ok, strange. standard pin headers fit for me only into FTDI and ICSP pin holes. Into the other two 8 pin rows it does not fit.

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    19

                                    Online

                                    11.7k

                                    Users

                                    11.2k

                                    Topics

                                    113.0k

                                    Posts


                                    Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • OpenHardware.io
                                    • Categories
                                    • Recent
                                    • Tags
                                    • Popular