Skip to content
  • MySensors
  • 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. My Project
  3. My Slim 2AA Battery Node

My Slim 2AA Battery Node

Scheduled Pinned Locked Moved My Project
498 Posts 71 Posters 342.6k Views 69 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.
  • m26872M m26872

    Board releases
    (other colors might be selected when ordering)

    • Version 2.0 (black) [order] Now designed in KiCad. "Final release". I'm not developing it further atm, but I know others have some projects going.
    • Version 1.4 (red) My latest version in Eagle. Known issues are wrong references due to panelization and broken circuit diagram links.
    • Version 1.2 (blue) Some less convienient placed components and the panelized verision has a faulty via.
    • Version 1.0 (green) The one described below in this first post. Working but not panelized and lacks a few features.

    Share stats and info
    The panelized versions 2.0, 1.4 and 1.2 have until today (2019-02-24) been shared 230 (!) times at boardhouse. Together with a few shares of the non-panelized version and my own orders, and the usual 3x10-11 boards/order, it means a lot of boards! Guess very few build nodes with every board, but at least the design should be well proven by now. This also means a few $ to MySensors.org, since 1 $/order will be donated. Great thanks to everyone who has orderd this board! I'll keep this share-info updated for transparency purposes. IMPORTANT: Please understand that DirtyPCBs.com is a non-profit community service, with a lot of manual support required. So please be patient and nice to their support in general. A new site is under development. Read more at their support site. EDIT 2017-06-22: Despite the new site it is still a hassle every time to get a reply from them and then the share credits. If anyone have some more info on this, please let me know.

    Introduction
    This project describes a successor Node concept to my first 2AA battery sensor. I have combined a few simple design options to a result that I find rather useful myself and I think should be shared. The application specific sensor/-s of your own choice has to be added to this Node design, nor here any example sketches provided here except from a few links further below. I use this design for all my door and window reed switches, temperature (calibrated internal or thermistor), LDR and similar simple sensor types. But, nothing prevents the use of more sophisticated sensors like Si7021 here as well. A few links to sensor examples based on this node will be presented further down in this post.

    Features

    • Simple, in the sense that it consists of a minimum number of components and common available material.
    • Cheap regarding choice of components, assembly work effort, energy storage and power consumption (battery type and life time).
    • Flexible universal design base equipped with various sensors. PCB pads used as port connections or prototyping area for extensions.
    • Small and discrete to fit in confined spaces and to reach WAF level

    And more concrete:

    The uC
    Hardware
    A "bare bones" ATMega328p 28pin PDIP (with or without socket). Bought from here and here. My reasons to not use Arduino Pro Mini here are

    • The APM width is too big.
    • APM has no prototyping/near connection area. There's no spare pads for separate connections unless you accept to use pads connected to softwise inactive ports.
    • Radio module connection has to be manually made to the APM.
    • Low power hacks like removing power led and voltage regulator are needed.
    • Necessary support components (resistors and capacitors) are few and can easily be added to a custom pcb.

    Software
    Since I prefer Arduino IDE for programming (flash) and debugging, I need a bootloader. Bootloader instructions are found all over the internet, but here's anyway how I do it. I use this precompiled bootloader from here. It's an Optiboot with 1MHz internal clock and 9600 baud serial communication. Fuse changed to BOD disable. According to this you should use minimal startup time to reduce power in every 8s sleep cycle, but for the moment I don't care and stick to the default 65ms. I use Avrisp mkII avr programmer for fuse and bootloading similar to this procedure. Arduino as ISP, Avr/USBtiny or whatever any other should of course be just as good. Avr Studio 4.19 is a good choice for Avrisp mkII (perhaps for others too) and 4.19 is the last version before the gigantic (and for me useless) IDEs were released.
    I add this new board to my "boards.txt". Fuse settings, don't forget to set the lock bits. If programming a large batch, the ELF production file is handy.
    Here's a great tutorial for those who use Arduino Uno as ISP.
    UPDATE 1: Today (2017) a lot has happen since I wrote about this. Some things has made it easier for us. A very good selection of precompiled bootloaders is now found here at MySensors. And you don't need to (and shouldn't) mess with the boards.txt any more. Instead I recommend the installation of MiniCore to the Arduino IDE.
    UPDATE 2: There have been reported issues with MySensors 2.x freezing on SlimNodes running at 1MHz, which I've confirmed. Recommended solution when using MyS 2.x, is to use 8MHz (internal) instead.

    The Radio
    A standard NRF24L01+ radio module is used. The width align with the AAs and no mods is needed (like with my other one). As always I try to keep the antenna part of the module free from shading metal.
    2020-12-14: On using RFM69 - here's a hint from @joaoabs at this page: I've been troubleshooting this slimnode with RFM69 radios and realized that a shunt between RFM69's DIO0 and Mega328's INT0 is required, otherwise the node will not "hear" the gateway. Even if the nrf2rmf69 board is used this shunt is required. It seems this is a re-current issue

    The Board
    At first I planned the build on a proto board, just to stick to the cheap-and-standard concept. But with today's low prices on custom made PCBs, it wasn't any longer an option. Space, quality and work effort are so much more attractive.
    Latest design files are open and available at the openhardware.io site. Please click on the image-link below to access openhardware.io where all design files such as latest BOM, kicad-files and circuit diagram (pdf) are found.
    https://www.openhardware.io/view/10/My-Slim-2AA-Battery-Node

    Board (v2.0) Top Side:
    0_1455651596639_boardv2_top.PNG

    Board (v2.0) Bottom Side:
    0_1455651606026_boardv2_bottom.PNG

    The Enclosure
    UPDATE: If you dont't like my primitive casing descibed below, in this post the user @buxtronix made a nice 3D-printed case which you can find here.

    An important overall part of this design idea was to align minimum dimensions of the components and get rid of "expensive" parts like battery holder. It turn out (see below) that the enclosure's functionality as battery holder wasn't needed even though it was the initial idea. The cable duct case has been discussed earlier, but rejected by some due to lack of ways to seal the endings. I still haven't the perfect solution, but I've since many years simply used (cheap) white tape. With some care it looks ok, and still does 5-10 years later. There are often proper terminators/endings to buy, but for some reason to unrealistic high prices.
    I used this cable duct with the dimension 17x20mm. Unfortunately it turned out that this particular type I used (Thorsman TMK T20) is now "professional grade" and dimension 17x20 is no longer very commercially available for consumers (here in Sweden at least). Eg. to get it, you have to pay >5$/m from places like this or buy it in bulk (50m) from a professional store (preferably as a professional with discount). The 50m bulk batch will give you 263 sensor nodes of standard length (19cm).
    Standard consumer dimension cable duct is e.g. 15x15mm from what I've seen. It'd be nice to design a 2AAA node in that one. If only there is a thin radio module? (Future project.)
    box1.jpg box2.jpg box3.jpgbox4.jpg

    The Battery pack
    Easy home made 2AA battery pack. Maybe it looks more demanding and time consuming than it is. (Usually its the other way around in my experience.)

    1. Start by taping the two (connecting) batteries together.
    2. Prepare the wires and make a small bun at the battery connecting ends.
    3. Attach the wires with tape.
    4. Tighten the cable ties and carefully note
    • that the wires are pressed to make good contact with the battery poles
    • how the cable tie ends must be placed to not steal lateral space
    • that the wire from the bottom must be routed near the cable tie to not steal space.
    1. Make the pack more rigid by taping one or two times around at the top, bottom and middle.
    2. Trim wires and solder the female connector. If desired, leave at least a small part of one wire naked for current measurements.
      A battery change is done fast when cables a already made (use solid wires that preserves its shape). So why pay for a battery holder when you can remake a pack with fresh batteries in 1-2 min and your low power sensor will live 5-10 years before anything needs to be done?
      bat1.jpg bat2.jpg bat3.jpg

    The Interface/Connections
    Convenient there's the 6 pin standard serial interface exactly like on the Arduino Pro Mini. Perhaps it's mirrored here, but I think everybody double checks Gnd and Vcc before connecting. The Vcc and Gnd pins also serves as a connector for the battery pack. (CTS is connected to GND on the PCB.)
    "Under" the radiomodule are pads for the ICSP pins. The idea was to have a socket for the radiomodule instead of the "expensive" 328p socket and still have easy future access to the SPI/ICSP interface. Perhaps not very useful. But nice to have Gnd and Vcc in this end of the board for general purpose.

    The Sleep Mode Power Consumption
    I measured the sleep mode current draw to be 1.5uA when it's set to interrupt wake up and 5.8uA when it's set to timer wake up.
    power1.JPG power2.jpg

    Sensor Examples and more
    Reed Switch Sensor: post 116
    Humidity Sensor: Slim Node Si7021 sensor example
    Motion Sensor 1: Slim Node as a Mini 2AA Battery PIR Motion Sensor
    Motion Sensor 2: Slim CR123A (2AA) battery node..
    Scene Controller: Slim Node scene controller/ keypad
    (work in progress to collect more examples here)

    Not Sensor exemples, but some nice to see "node variations" from @AWI:
    Here (post 88) and here (post 233). And now there's also @AWI 's My Slim 2AA Battery Node Tools.

    Still not "slim" enough? Check out Very Narrow and Minimal Switch Node ! by @GertSanders

    And also, there's this 5V-slim-node a 5V-slim-node mod by @Soloam

    Feature Requests
    Here's a collection of suggestions and development ideas for future versions of the board (or other parts). If anyone else make their own board where some of this is included, I'd be happy to reference it from here.

    • Pin labels/references also on board top side.
    • Turn the nRF footprint to make the assembly shorter.
    • Make the board suitable for the nRF SMD version.

    More Pictures
    Some photos. First a comparison next to My (old) 2AA battery sensor, one painted and one not. (Note the high WAF of the colour even without the paint.) Then some placement examples. Reed switch nodes for all my doors and windows are my first priority.
    20150901_220448.jpg 20150901_220505.jpg 20150901_220659.jpg 20150901_220847.jpg 20150901_220948.jpg IMG_2065.JPG IMG_2063.JPG IMG_2064.JPG

    Pierre PP Offline
    Pierre PP Offline
    Pierre P
    wrote on last edited by
    #183

    @m26872 said:

    Board releases:

    • Version 2.0 (black) [order] Now designed in KiCad. Hopefully the "final" release.

    Well, can I ask an update ? It's about the labels, couldn't we have them on the two faces ? It's always good to know where are Vcc and Gnd at first eye I think.
    After all, the atmega and nrf are the only components that can't move to the other side. But even there, knowing the digital and analog pin should be useful !

    No quote, no forum notification (else, the mail box ring every minutes !). Thanks, and have a very good MySensors day !

    m26872M 1 Reply Last reply
    0
    • Cliff KarlssonC Offline
      Cliff KarlssonC Offline
      Cliff Karlsson
      wrote on last edited by
      #184

      My PCBs have just arrived and I was going to build a couple of sensors but can´t figure out the first part of how to burn the bootloaders.

      For starters can I just use one of the PCBs and solder the atmega socket and a 6 pin header near the nrlf-radio headers? And use this with a Atmega-programmer ?or do I need to solder any more components?

      I tried with both a usbasp and a USBtinyISP but could not get any new device to show up in the arduino IDE. But I don´t know if it is a software issue with win10 or if it is hardware related.

      m26872M 1 Reply Last reply
      0
      • Pierre PP Offline
        Pierre PP Offline
        Pierre P
        wrote on last edited by
        #185

        I've made it with that link: http://www.gammon.com.au/breadboard with no cristal.

        No quote, no forum notification (else, the mail box ring every minutes !). Thanks, and have a very good MySensors day !

        1 Reply Last reply
        0
        • Cliff KarlssonC Cliff Karlsson

          My PCBs have just arrived and I was going to build a couple of sensors but can´t figure out the first part of how to burn the bootloaders.

          For starters can I just use one of the PCBs and solder the atmega socket and a 6 pin header near the nrlf-radio headers? And use this with a Atmega-programmer ?or do I need to solder any more components?

          I tried with both a usbasp and a USBtinyISP but could not get any new device to show up in the arduino IDE. But I don´t know if it is a software issue with win10 or if it is hardware related.

          m26872M Offline
          m26872M Offline
          m26872
          Hardware Contributor
          wrote on last edited by m26872
          #186

          @Cliff-Karlsson Apart from the 2x3pin AVRISP you also need to supply power (battery?) Maybe easiest by the 1x6pin FTDI Vcc and Gnd pins. No other components should be needed.

          1 Reply Last reply
          0
          • Pierre PP Pierre P

            @m26872 said:

            Board releases:

            • Version 2.0 (black) [order] Now designed in KiCad. Hopefully the "final" release.

            Well, can I ask an update ? It's about the labels, couldn't we have them on the two faces ? It's always good to know where are Vcc and Gnd at first eye I think.
            After all, the atmega and nrf are the only components that can't move to the other side. But even there, knowing the digital and analog pin should be useful !

            m26872M Offline
            m26872M Offline
            m26872
            Hardware Contributor
            wrote on last edited by m26872
            #187

            @Pierre-P said:

            @m26872 said:

            Board releases:

            • Version 2.0 (black) [order] Now designed in KiCad. Hopefully the "final" release.

            Well, can I ask an update ? It's about the labels, couldn't we have them on the two faces ? It's always good to know where are Vcc and Gnd at first eye I think.
            After all, the atmega and nrf are the only components that can't move to the other side. But even there, knowing the digital and analog pin should be useful !

            I think I'll collect "improvements" in a list. I agree that some labels could be added, but I don't think it's enough for a new board release.
            Also the boardhouse credit collection (which becomes MySensors donations) will be scattered and smaller if there's many versions and branches.

            1 Reply Last reply
            0
            • Cliff KarlssonC Offline
              Cliff KarlssonC Offline
              Cliff Karlsson
              wrote on last edited by
              #188

              @m26872 said:

              AVRISP

              Ok so the AVRISP does not provide any power even as it is self powered from usb?

              m26872M 1 Reply Last reply
              0
              • Cliff KarlssonC Cliff Karlsson

                @m26872 said:

                AVRISP

                Ok so the AVRISP does not provide any power even as it is self powered from usb?

                m26872M Offline
                m26872M Offline
                m26872
                Hardware Contributor
                wrote on last edited by m26872
                #189

                @Cliff-Karlsson At least that's how my programmer works (Avrisp MkII). I think it's a thing to not interfere when it's programmed "in circuit".

                1 Reply Last reply
                0
                • B Offline
                  B Offline
                  betgear
                  wrote on last edited by
                  #190

                  @m26872. Thanks for the design, very nice.

                  On your posted picture of the GY-21, why have you added extra resistors? The Gy-21 has it's own pull ups 4.7k for the i2c bus, so additional resistors are not required!

                  I removed the voltage regulator from the gy-21 board as well (detailed elsewhere in the forum) to save a little extra power. The only caveat to this is you've got to remember to remove the radio and gy-21 when programming using the usbtinyisp or usbasp as they run at 5v which could damage them.

                  I'm using the (hallard) breakout board for the rfm69cw which has a much better range than the nrf24's (no idea why people use these unless they live in a rabbit hutch)

                  Anyway, thanks once again for sharing.

                  Glen.

                  m26872M 2 Replies Last reply
                  0
                  • B betgear

                    @m26872. Thanks for the design, very nice.

                    On your posted picture of the GY-21, why have you added extra resistors? The Gy-21 has it's own pull ups 4.7k for the i2c bus, so additional resistors are not required!

                    I removed the voltage regulator from the gy-21 board as well (detailed elsewhere in the forum) to save a little extra power. The only caveat to this is you've got to remember to remove the radio and gy-21 when programming using the usbtinyisp or usbasp as they run at 5v which could damage them.

                    I'm using the (hallard) breakout board for the rfm69cw which has a much better range than the nrf24's (no idea why people use these unless they live in a rabbit hutch)

                    Anyway, thanks once again for sharing.

                    Glen.

                    m26872M Offline
                    m26872M Offline
                    m26872
                    Hardware Contributor
                    wrote on last edited by m26872
                    #191

                    @betgear If you had read the posts further down (just like the first line says), you would have seen that the discussion and explainations are already there. But thanks for sharing you results.

                    1 Reply Last reply
                    0
                    • B betgear

                      @m26872. Thanks for the design, very nice.

                      On your posted picture of the GY-21, why have you added extra resistors? The Gy-21 has it's own pull ups 4.7k for the i2c bus, so additional resistors are not required!

                      I removed the voltage regulator from the gy-21 board as well (detailed elsewhere in the forum) to save a little extra power. The only caveat to this is you've got to remember to remove the radio and gy-21 when programming using the usbtinyisp or usbasp as they run at 5v which could damage them.

                      I'm using the (hallard) breakout board for the rfm69cw which has a much better range than the nrf24's (no idea why people use these unless they live in a rabbit hutch)

                      Anyway, thanks once again for sharing.

                      Glen.

                      m26872M Offline
                      m26872M Offline
                      m26872
                      Hardware Contributor
                      wrote on last edited by m26872
                      #192

                      @betgear My guess is that the main reason for people to use nRF24 is because the MySensors support for RFm69 came rather recently.

                      Edit: For me it's the price. I buy 20(!!!) pcs nRF24 for the price of one RFm69. Main reason is different shipping costs.

                      1 Reply Last reply
                      0
                      • Cliff KarlssonC Offline
                        Cliff KarlssonC Offline
                        Cliff Karlsson
                        wrote on last edited by
                        #193

                        I just need to ask one more time so that I am absolutley clear abot the bootloader burning. I still cant figure out how to do this with my USBtiny.

                        First of all my USBtiny provides 3.3 or 5v does it matter what voltage that I provide?
                        And If I just place the ISCP (?) header and atmega socket I do not need to solder any more components or provide any more power to make the circut complete?

                        m26872M 2 Replies Last reply
                        0
                        • Cliff KarlssonC Cliff Karlsson

                          I just need to ask one more time so that I am absolutley clear abot the bootloader burning. I still cant figure out how to do this with my USBtiny.

                          First of all my USBtiny provides 3.3 or 5v does it matter what voltage that I provide?
                          And If I just place the ISCP (?) header and atmega socket I do not need to solder any more components or provide any more power to make the circut complete?

                          m26872M Offline
                          m26872M Offline
                          m26872
                          Hardware Contributor
                          wrote on last edited by
                          #194

                          @Cliff-Karlsson said:

                          First of all my USBtiny provides 3.3 or 5v does it matter what voltage that I provide?

                          No, as long as it's only the Atmega there.

                          And If I just place the ISCP (?) header and atmega socket I do not need to solder any more components or provide any more power to make the circut complete?

                          Yes, correct. (ICSP)

                          1 Reply Last reply
                          0
                          • Cliff KarlssonC Cliff Karlsson

                            I just need to ask one more time so that I am absolutley clear abot the bootloader burning. I still cant figure out how to do this with my USBtiny.

                            First of all my USBtiny provides 3.3 or 5v does it matter what voltage that I provide?
                            And If I just place the ISCP (?) header and atmega socket I do not need to solder any more components or provide any more power to make the circut complete?

                            m26872M Offline
                            m26872M Offline
                            m26872
                            Hardware Contributor
                            wrote on last edited by
                            #195

                            @Cliff-Karlsson Forgot to add that there is already a bootloader on that requires external crystal, you have to add it before to get it work.

                            m26872M 1 Reply Last reply
                            1
                            • Cliff KarlssonC Offline
                              Cliff KarlssonC Offline
                              Cliff Karlsson
                              wrote on last edited by
                              #196

                              Ok thanks for the info. So if I do not have any crystals it is not possible to burn the bootloader in any way?

                              m26872M ahmedadelhosniA 2 Replies Last reply
                              0
                              • m26872M m26872

                                @Cliff-Karlsson Forgot to add that there is already a bootloader on that requires external crystal, you have to add it before to get it work.

                                m26872M Offline
                                m26872M Offline
                                m26872
                                Hardware Contributor
                                wrote on last edited by
                                #197

                                @m26872 said:

                                @Cliff-Karlsson Forgot to add that IF there is already a bootloader on that requires external crystal, you have to add it before to get it work.

                                (the important word "if" dropped out. )

                                1 Reply Last reply
                                1
                                • Cliff KarlssonC Cliff Karlsson

                                  Ok thanks for the info. So if I do not have any crystals it is not possible to burn the bootloader in any way?

                                  m26872M Offline
                                  m26872M Offline
                                  m26872
                                  Hardware Contributor
                                  wrote on last edited by
                                  #198

                                  @Cliff-Karlsson said:

                                  Ok thanks for the info. So if I do not have any crystals it is not possible to burn the bootloader in any way?

                                  No, not if its fuses are set for external crystal.

                                  1 Reply Last reply
                                  0
                                  • GertSandersG Offline
                                    GertSandersG Offline
                                    GertSanders
                                    Hardware Contributor
                                    wrote on last edited by
                                    #199

                                    An ATMEGA328 coming from ATMEL is normally set to use the internal oscillator and has no bootloader. You will then have no need to put a crystal.

                                    I do this anyway on my breadboard (for the 28 pin DIP versions).

                                    If you have the SMD version of the atmega328 (the AU variant), I'm assuming it is set in the same default state (no crystal needed, running on internal oscillator).

                                    1 Reply Last reply
                                    0
                                    • Cliff KarlssonC Cliff Karlsson

                                      Ok thanks for the info. So if I do not have any crystals it is not possible to burn the bootloader in any way?

                                      ahmedadelhosniA Offline
                                      ahmedadelhosniA Offline
                                      ahmedadelhosni
                                      wrote on last edited by
                                      #200

                                      @Cliff-Karlsson i added 10 Mhz and it worked as I didnt have 16 Mhz. Also tested with 20Mhz and worked

                                      1 Reply Last reply
                                      0
                                      • m26872M m26872

                                        Board releases
                                        (other colors might be selected when ordering)

                                        • Version 2.0 (black) [order] Now designed in KiCad. "Final release". I'm not developing it further atm, but I know others have some projects going.
                                        • Version 1.4 (red) My latest version in Eagle. Known issues are wrong references due to panelization and broken circuit diagram links.
                                        • Version 1.2 (blue) Some less convienient placed components and the panelized verision has a faulty via.
                                        • Version 1.0 (green) The one described below in this first post. Working but not panelized and lacks a few features.

                                        Share stats and info
                                        The panelized versions 2.0, 1.4 and 1.2 have until today (2019-02-24) been shared 230 (!) times at boardhouse. Together with a few shares of the non-panelized version and my own orders, and the usual 3x10-11 boards/order, it means a lot of boards! Guess very few build nodes with every board, but at least the design should be well proven by now. This also means a few $ to MySensors.org, since 1 $/order will be donated. Great thanks to everyone who has orderd this board! I'll keep this share-info updated for transparency purposes. IMPORTANT: Please understand that DirtyPCBs.com is a non-profit community service, with a lot of manual support required. So please be patient and nice to their support in general. A new site is under development. Read more at their support site. EDIT 2017-06-22: Despite the new site it is still a hassle every time to get a reply from them and then the share credits. If anyone have some more info on this, please let me know.

                                        Introduction
                                        This project describes a successor Node concept to my first 2AA battery sensor. I have combined a few simple design options to a result that I find rather useful myself and I think should be shared. The application specific sensor/-s of your own choice has to be added to this Node design, nor here any example sketches provided here except from a few links further below. I use this design for all my door and window reed switches, temperature (calibrated internal or thermistor), LDR and similar simple sensor types. But, nothing prevents the use of more sophisticated sensors like Si7021 here as well. A few links to sensor examples based on this node will be presented further down in this post.

                                        Features

                                        • Simple, in the sense that it consists of a minimum number of components and common available material.
                                        • Cheap regarding choice of components, assembly work effort, energy storage and power consumption (battery type and life time).
                                        • Flexible universal design base equipped with various sensors. PCB pads used as port connections or prototyping area for extensions.
                                        • Small and discrete to fit in confined spaces and to reach WAF level

                                        And more concrete:

                                        The uC
                                        Hardware
                                        A "bare bones" ATMega328p 28pin PDIP (with or without socket). Bought from here and here. My reasons to not use Arduino Pro Mini here are

                                        • The APM width is too big.
                                        • APM has no prototyping/near connection area. There's no spare pads for separate connections unless you accept to use pads connected to softwise inactive ports.
                                        • Radio module connection has to be manually made to the APM.
                                        • Low power hacks like removing power led and voltage regulator are needed.
                                        • Necessary support components (resistors and capacitors) are few and can easily be added to a custom pcb.

                                        Software
                                        Since I prefer Arduino IDE for programming (flash) and debugging, I need a bootloader. Bootloader instructions are found all over the internet, but here's anyway how I do it. I use this precompiled bootloader from here. It's an Optiboot with 1MHz internal clock and 9600 baud serial communication. Fuse changed to BOD disable. According to this you should use minimal startup time to reduce power in every 8s sleep cycle, but for the moment I don't care and stick to the default 65ms. I use Avrisp mkII avr programmer for fuse and bootloading similar to this procedure. Arduino as ISP, Avr/USBtiny or whatever any other should of course be just as good. Avr Studio 4.19 is a good choice for Avrisp mkII (perhaps for others too) and 4.19 is the last version before the gigantic (and for me useless) IDEs were released.
                                        I add this new board to my "boards.txt". Fuse settings, don't forget to set the lock bits. If programming a large batch, the ELF production file is handy.
                                        Here's a great tutorial for those who use Arduino Uno as ISP.
                                        UPDATE 1: Today (2017) a lot has happen since I wrote about this. Some things has made it easier for us. A very good selection of precompiled bootloaders is now found here at MySensors. And you don't need to (and shouldn't) mess with the boards.txt any more. Instead I recommend the installation of MiniCore to the Arduino IDE.
                                        UPDATE 2: There have been reported issues with MySensors 2.x freezing on SlimNodes running at 1MHz, which I've confirmed. Recommended solution when using MyS 2.x, is to use 8MHz (internal) instead.

                                        The Radio
                                        A standard NRF24L01+ radio module is used. The width align with the AAs and no mods is needed (like with my other one). As always I try to keep the antenna part of the module free from shading metal.
                                        2020-12-14: On using RFM69 - here's a hint from @joaoabs at this page: I've been troubleshooting this slimnode with RFM69 radios and realized that a shunt between RFM69's DIO0 and Mega328's INT0 is required, otherwise the node will not "hear" the gateway. Even if the nrf2rmf69 board is used this shunt is required. It seems this is a re-current issue

                                        The Board
                                        At first I planned the build on a proto board, just to stick to the cheap-and-standard concept. But with today's low prices on custom made PCBs, it wasn't any longer an option. Space, quality and work effort are so much more attractive.
                                        Latest design files are open and available at the openhardware.io site. Please click on the image-link below to access openhardware.io where all design files such as latest BOM, kicad-files and circuit diagram (pdf) are found.
                                        https://www.openhardware.io/view/10/My-Slim-2AA-Battery-Node

                                        Board (v2.0) Top Side:
                                        0_1455651596639_boardv2_top.PNG

                                        Board (v2.0) Bottom Side:
                                        0_1455651606026_boardv2_bottom.PNG

                                        The Enclosure
                                        UPDATE: If you dont't like my primitive casing descibed below, in this post the user @buxtronix made a nice 3D-printed case which you can find here.

                                        An important overall part of this design idea was to align minimum dimensions of the components and get rid of "expensive" parts like battery holder. It turn out (see below) that the enclosure's functionality as battery holder wasn't needed even though it was the initial idea. The cable duct case has been discussed earlier, but rejected by some due to lack of ways to seal the endings. I still haven't the perfect solution, but I've since many years simply used (cheap) white tape. With some care it looks ok, and still does 5-10 years later. There are often proper terminators/endings to buy, but for some reason to unrealistic high prices.
                                        I used this cable duct with the dimension 17x20mm. Unfortunately it turned out that this particular type I used (Thorsman TMK T20) is now "professional grade" and dimension 17x20 is no longer very commercially available for consumers (here in Sweden at least). Eg. to get it, you have to pay >5$/m from places like this or buy it in bulk (50m) from a professional store (preferably as a professional with discount). The 50m bulk batch will give you 263 sensor nodes of standard length (19cm).
                                        Standard consumer dimension cable duct is e.g. 15x15mm from what I've seen. It'd be nice to design a 2AAA node in that one. If only there is a thin radio module? (Future project.)
                                        box1.jpg box2.jpg box3.jpgbox4.jpg

                                        The Battery pack
                                        Easy home made 2AA battery pack. Maybe it looks more demanding and time consuming than it is. (Usually its the other way around in my experience.)

                                        1. Start by taping the two (connecting) batteries together.
                                        2. Prepare the wires and make a small bun at the battery connecting ends.
                                        3. Attach the wires with tape.
                                        4. Tighten the cable ties and carefully note
                                        • that the wires are pressed to make good contact with the battery poles
                                        • how the cable tie ends must be placed to not steal lateral space
                                        • that the wire from the bottom must be routed near the cable tie to not steal space.
                                        1. Make the pack more rigid by taping one or two times around at the top, bottom and middle.
                                        2. Trim wires and solder the female connector. If desired, leave at least a small part of one wire naked for current measurements.
                                          A battery change is done fast when cables a already made (use solid wires that preserves its shape). So why pay for a battery holder when you can remake a pack with fresh batteries in 1-2 min and your low power sensor will live 5-10 years before anything needs to be done?
                                          bat1.jpg bat2.jpg bat3.jpg

                                        The Interface/Connections
                                        Convenient there's the 6 pin standard serial interface exactly like on the Arduino Pro Mini. Perhaps it's mirrored here, but I think everybody double checks Gnd and Vcc before connecting. The Vcc and Gnd pins also serves as a connector for the battery pack. (CTS is connected to GND on the PCB.)
                                        "Under" the radiomodule are pads for the ICSP pins. The idea was to have a socket for the radiomodule instead of the "expensive" 328p socket and still have easy future access to the SPI/ICSP interface. Perhaps not very useful. But nice to have Gnd and Vcc in this end of the board for general purpose.

                                        The Sleep Mode Power Consumption
                                        I measured the sleep mode current draw to be 1.5uA when it's set to interrupt wake up and 5.8uA when it's set to timer wake up.
                                        power1.JPG power2.jpg

                                        Sensor Examples and more
                                        Reed Switch Sensor: post 116
                                        Humidity Sensor: Slim Node Si7021 sensor example
                                        Motion Sensor 1: Slim Node as a Mini 2AA Battery PIR Motion Sensor
                                        Motion Sensor 2: Slim CR123A (2AA) battery node..
                                        Scene Controller: Slim Node scene controller/ keypad
                                        (work in progress to collect more examples here)

                                        Not Sensor exemples, but some nice to see "node variations" from @AWI:
                                        Here (post 88) and here (post 233). And now there's also @AWI 's My Slim 2AA Battery Node Tools.

                                        Still not "slim" enough? Check out Very Narrow and Minimal Switch Node ! by @GertSanders

                                        And also, there's this 5V-slim-node a 5V-slim-node mod by @Soloam

                                        Feature Requests
                                        Here's a collection of suggestions and development ideas for future versions of the board (or other parts). If anyone else make their own board where some of this is included, I'd be happy to reference it from here.

                                        • Pin labels/references also on board top side.
                                        • Turn the nRF footprint to make the assembly shorter.
                                        • Make the board suitable for the nRF SMD version.

                                        More Pictures
                                        Some photos. First a comparison next to My (old) 2AA battery sensor, one painted and one not. (Note the high WAF of the colour even without the paint.) Then some placement examples. Reed switch nodes for all my doors and windows are my first priority.
                                        20150901_220448.jpg 20150901_220505.jpg 20150901_220659.jpg 20150901_220847.jpg 20150901_220948.jpg IMG_2065.JPG IMG_2063.JPG IMG_2064.JPG

                                        ahmedadelhosniA Offline
                                        ahmedadelhosniA Offline
                                        ahmedadelhosni
                                        wrote on last edited by ahmedadelhosni
                                        #201

                                        First node. Door sensor.
                                        Great boards :+
                                        0_1453937636107_1453937611984-964477924.jpg

                                        0_1453938444465_1453938399889-988876899.jpg

                                        .

                                        1 Reply Last reply
                                        1
                                        • ahmedadelhosniA ahmedadelhosni

                                          @meddie THanks for the answer.

                                          Can you please also explain your final result to reach 4uA. I have also the same problem and current is 90uA and sometimes drops to 20uA, then rises again. Thanks.

                                          Edit: I figured out that I was using the 3.3v from arduino UNO. CHanged to two 1.5 batteries. THe current drops to 1.4uA when contact is open but sometimes it is also 15 uA. And when contact is closed it is 60 uA, and sometimes drops. Don't know why it is not stable.

                                          Edit 26.1.2016: I managed to reach 1.4uA with door opened, and 15uA when closed. I guess the problem was with the wiring. DOn't really know but I used a battery holder instead. I will try to rechange the resistor value to 1Mohm and reupdate.

                                          Edit 27.1.2016: ok I created another node and connected the contact sensor in series with the 1Mohm and the output is the voltage divider. now it is 1.4uA when open and 4.6uA when closed.

                                          Thanks

                                          M Offline
                                          M Offline
                                          meddie
                                          wrote on last edited by
                                          #202

                                          @ahmedadelhosni said:

                                          @meddie THanks for the answer.

                                          Can you please also explain your final result to reach 4uA. I have also the same problem and current is 90uA and sometimes drops to 20uA, then rises again. Thanks.

                                          Edit: I figured out that I was using the 3.3v from arduino UNO. CHanged to two 1.5 batteries. THe current drops to 1.4uA when contact is open but sometimes it is also 15 uA. And when contact is closed it is 60 uA, and sometimes drops. Don't know why it is not stable.

                                          Edit 26.1.2016: I managed to reach 1.4uA with door opened, and 15uA when closed. I guess the problem was with the wiring. DOn't really know but I used a battery holder instead. I will try to rechange the resistor value to 1Mohm and reupdate.

                                          Edit 27.1.2016: ok I created another node and connected the contact sensor in series with the 1Mohm and the output is the voltage divider. now it is 1.4uA when open and 4.6uA when closed.

                                          Thanks

                                          Yes, i used a 1 Mohm reisitor instead of the internall pull up. You can read this few messages above. This was a tip from GertSander

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


                                          15

                                          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
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular