Easy/Newbie PCB for MySensors



  • @sundberg84 Thanks, I'll try to play with the Pro Mini 🙂
    BTW - can you recommend for good supplier from eBay\AliExpress\Etc. ?


  • Hardware Contributor

    @Lior-Rubin - For components i pretty much use the links from www.mysensors.com/store
    Dont forget to order a fdti programmer 🙂



  • @sundberg84 I have all these ... I meant for the Pro Mini 3.3V that you used in your design.
    I ordered some from Chinese supplier but the board was damaged ( cannot upload sketches to them).

    where did you get yours ?


  • Hardware Contributor

    @Lior-Rubin - 3 batches from china, link in mysensor store - worked great for me.



  • Hi, I have received the PCBs, it is good help.
    (3.3v mini with battery powering)
    I have wiring problem. How could I connect radio's power input to boosted powering source to get stable 3.3v?
    thanks


  • Mod

    @Barna see the instructions for "Regulated 5V" and "6-12v to RAW pin" on https://goo.gl/1ZMlUf https://www.openhardware.io/view/4/EasyNewbie-PCB-for-MySensors


  • Hardware Contributor

    @Barna Exaclty as @mfalkvidd said - use regulated power instructions instead.
    Set the jumper on "reg" and bypass the voltage converter with a wire.

    Whats good to know is that this has been tested over and over in this forum and the conclusion has been so far that if you run with 2xAA the best sollution is to bypass the radio in the booster (i.e. use battery instructions - hence the difference). The radio can handle down to 1.9v so it wont die for a long time if you have some power savings in use.



  • @sundberg84 yes, I would like to use 2xAA. I have measured it, 2xAA's out is 2.6V, after booster it is 3.3 .
    My first tying was battery jumper, but I had was radio problems.
    After bypassed the volt reg part to give 3.3v.
    When you have mentioned this : "Set the jumper on "reg" and bypass the voltage converter with a wire." do you talk about the jumper which next to battery jumper or the 2nd? I have tried which is next to radio.
    I have a filling, it will be soldering or hw issue, because both has worked, and has not sometimes.
    thanks


  • Hardware Contributor

    @barna - what was the radio problem? If it was range issues i have figured out that some boosters are bad quality but it helps to have a 0,1uF capacitor between out and gnd on the booster.

    Note that you can not use both REG and BAT function at the same time.

    I mean this:
    0_1467188130411_Skärmklipp.JPG
    but if you only have 2.6v im not sure the arduino is going to function properly. With this setup the booster is not active and 2.6v is fed into all components. this is meant for 5v.

    As i said - i recommend using the bat and booster setup and instead try to figure out the radio problem.



  • @sundberg84 I'm using battery with booster


  • Hardware Contributor

    Then connect it like battery and booster (BAT jumper) and try to figure out why you have the radio problems. Thats my advice. The above is possible (REG) but as i said, i dont think it will work when the battery goes below 2.6v.



  • @sundberg84
    1.
    with battery jumper the radio will get direct 2.6v and work until 1.9v
    arduino will get 3.3v via booster
    2.
    If I bypass the REG all of them will get 2.6v
    Is my thinking right ?


  • Hardware Contributor

    @Barna - Exactly!
    So again - go with 1. if you are using 2xAA since the arduino needs 2.6-2.8v to funciton.



  • @sundberg84
    why is it problem technically, if I give boosted 3.3 to radio ?


  • Hardware Contributor

    @Barna - the Radio is very sensitive to spikes and disturbance in power. The booster generates more disturbance than the batteries. Thats why we came to the conclution that Bat -> radio is the best choise. If not, you can remove some disturbance with a capacitor as I wrote above with 0.1uF from out to ground on the booster.

    The PCB is designed in either Bat or Reg and its not optimal using battery power, booster and a jumper on reg. You will get two voltages (bat + 3.3booster to radio):
    0_1467205844941_1.png

    You can try different setups - report back 🙂 but i can only recommend the modes described in the openhardware.io



  • Hi sundberg84,
    Is it possible to use 5v mini + 9v battery with measurement ?
    I put an voltage regulator to booster place and power the radio from mini with 5-3.3 regulator ?
    What do you think ?

    I think I could use the 9V as source as raw, but it could be problematic because it is an battery, so I would like to measue it.

    thanks
    Barna


  • Hardware Contributor

    @Barna - Powering it through RAW is possible but if you want to use the booster and battery measuring this is not an option , you need to power it through PWR and BAT jumper. I think what you describe is possible but untested. First you need to find/create a booster that can handle the battery. Also you need to make corrections on the voltage divider(47k and 67k?) for the battery measuring and also code changes.

    Please share your results - this is good if this works!
    I was about to create one of these myself the other day - but other projects came by so i just skipped it and running a 3.3v (removed led) on 9v trough raw and it works... no measuring though so no clue how long it will last.



  • I'm not profi, is my logic correct?
    general, not PBC related
    I could power the mini 5V with 9V and mini's regulator converts it to 5V.
    Mini could give power to radio by 5->3.3 regulator.
    I could measure the voltage without booster, but the booster is good to use the battery until it is possible ?




  • Hardware Contributor

    @Barna Your logic is correct - you can power a mini through raw and the minis regulator will convert it to 5v but then you can not use the booster. You will have power as long as the battery is between aprox. 6 and 9 v (minis voltage converter specs), below that it will die.



  • I have ordered some boards and i am looking forward to play with them.
    I tried soldering some part and a nano on a soldering board but apparently my soldering skills and patience isn't what it used to be in the past.
    @sundberg84 it looks good.


  • Hardware Contributor

    @tlpeter thank you and good luck. Just give a shout if you have questions.



  • I do have some questions 😃

    I think i got it a bit. When i use a 3,3V mini then i do not need the 3,3V regulator and it is powered with a battery. If i use a 5V mini then i need the regulator. Is this correct?

    Do i need the booster if batteries are used?

    How about the RAW option? How does it go to 5V? i need the regulator to go to 3,3V so how do i loose the 6-12V 😃


  • Hardware Contributor

    @tlpeter said:

    When i use a 3,3V mini then i do not need the 3,3V regulator and it is powered with a battery. If i use a 5V mini then i need the regulator. Is this correct?

    Correct!! You need to add the jumper to BAT if you go with 3.3 and battery or REG if you go with 5v and voltage regulator.

    Do i need the booster if batteries are used?

    No, you can bypass it with a jumper/wire - but it will give you alot of extra. Without the booster the arduino 3.3v will die somewhere between 2.8 and 3 volts, with booster you can go down to 1.9v.

    How about the RAW option? How does it go to 5V? i need the regulator to go to 3,3V so how do i loose the 6-12V 😃

    There is a voltage regulater on board the pro mini that handels from 6-12v (be cautious using 12 v, 9v is max i recommend on clones). This will convert your RAW to 5v and provide the board with this. Then the external regulator will go from 5 to radio 3.3v.



  • Ok, very clear.
    So now i have a new question, i want to use a solar panel and a battery but this will go above the 3.7V when there is light and the battery pack is 3.7V so i must use the raw connection.
    I also want to measure the battery and i think this needs PWR 😃

    Can i do this?

    I want to build the solar powered mini weather station:

    https://forum.mysensors.org/topic/841/solar-powered-mini-weather-station

    Thanks already.


  • Hardware Contributor

    @tlpeter You can use raw for 3.7V and make it down to 3.3 with the internal voltage regulator onboard the arduino, but you can not connect anything to PWR then because this will allready be 3.3V! The internal voltage regulator vill output 3.3v to the PCB from the arduino.

    However, I think you can connect the battery directly to the battery measurment on the board as long as you use the same ground for both. You will need to make some new calculations (most are based on 2xAA = 3.0V) for your battery.



  • I didn't use your board in this case (the weather station) but i will do in the future.
    I did connect the battery to the raw pin and it is working fine.
    Funny, a solar panel with a battery powering the pro mini with DHT22 and BMP180.
    For now i will keep it simple but later on i want a rain gauge and windmeter too.
    Rain sensor is on a different Nano as this needs to be powered all the time.
    It will control my sunscreen later on.



  • This board looks great! Definitely going to order some.

    Just getting started with MySensors. Waiting for over 20 orders from eBay with stuff. Should be fun!
    Already running Domoticz (Pi 2) with RFXtrx433, 1-wire and z-wave. Going to build a serial gateway for direct connection to the Pi.

    My last name before I married (now divorced) was Sundberg btw. Could have had Sundberg82 as nickname. 😉


  • Hardware Contributor

    @NiklasO - Thanks! I hope it will suite you well!
    The wait is a pain, but well worth it in the end. Sounds like got alof going already!

    Hehe, we can create a forum group - "sundberg dreamteam!" 😉



  • Recived my boards today and I love them, I ordered the white ones and they are looking really great

    Thanks @sundberg84 !


  • Hardware Contributor

    @Martin-Tellblom - good luck with your projects!



  • @sundberg84 said:

    @NiklasO - Thanks! I hope it will suite you well!
    The wait is a pain, but well worth it in the end. Sounds like got alof going already!

    Hehe, we can create a forum group - "sundberg dreamteam!" 😉

    hehe yeah, just need to change my last name back to my original one but I don't know if my kids likes that idea. 😉

    Where do you get your x to 3.3v boost converter? Found some on eBay but they are quite expensive if comparing to x to 5v versions.


  • Hardware Contributor

    @NiklasO - they are quite expencive yes, but i order the ones in the mysensors store



  • Has anyone tried one of these boosters:

    https://www.aliexpress.com/item/High-current-2A-DC-DC-SX1308-adjustable-boost-module/32751065114.html?ws_ab_test=searchweb0_0,searchweb201602_1_116_10065_117_10068_114_10067_115_10069_113_10017_10080_10082_10081_10060_10061_10062_10056_10055_10037_10054_10033_10059_10032_10078_10079_10077_10073_10070_421_420_10052_10053_10050_10051,searchweb201603_7&btsid=c5657706-88c2-41fb-bdfe-866e4cffe76a

    • They are sometimes much cheaper than the 3.3v ones
    • Since they are adjustable, I would think you could optimize the output voltage for maximum battery.

    I'm not sure, is there a problem using them with the PCB boards? I imagine the input and output ground would have to be connected together.

    Thanks!


  • Hardware Contributor

    @ileneken3 - sorry never tried them.
    The footprint looks different from the PCB so you need to connect this with wires to the PCB.



  • @sundberg84

    I took a chance and tried these boosters. After adjusting the pot to boost to 3.3V, and using wires to connect, they seem to work the same as the "recommended" ones. I am hoping they produce less noise for the radio - I seem to have trouble with that, even with adding the capacitors. (Maybe my radios are not good).
    Another experiment - boosting them to just over the 2.8V fuse limit. I would think that would be more energy efficient.



  • @ileneken3 in my experienxe the 3.3v booster gives a lot of problem with radio 🙂


  • Hardware Contributor

    @jumping - correct, if you can make a node without its better for the radio but its easier to do with a booster, radio and a pre-made Arduino pro mini.



  • hi @sundberg84, if you have some free time you can see my post about a "new" PCB
    https://forum.mysensors.org/topic/5314/pcbs-for-battery-based-sensor 🙂



  • @sundberg84

    It's definitely easier with a booster - but not cheaper or more reliable. (Why does the booster cost more than the Arduino?)

    Everything is about tradeoff's. When you solve one problem, it can easily introduce another. At first, I ignored the whole booster thing. But after a lot of experiments, I ended up with a pile of 1.35 V batteries. So I tried the booster, and ended up with transmission problems (partially solved by capacitors). So then I tried changing the bootloader (1Mhz, no brown out), and it seems to be OK - but I know there will be other problems. Example: I now need to boost to 3.3V for sensors that require it. Also, are there compatibility problems with mysensors?

    Even still, thanks for the great board - I've had a lot of fun and learned a lot with it!


  • Hardware Contributor

    @ileneken3 - you are so right, and that is the fun with electronics! There is no right or wrong (more or less)!
    Newbie/Easy PCB is what it sounds like and my only aim is to make it as easy as possible. Im happy to evaluate it but at the moment booster and a few non compatible sensors is the price i pay.

    I have probably 15 of these PCB with boosters now, and yes - there are times when the booster makes it unreliable but most of the times it works. I have maybe trashed 5 nodes in all which is fair less amount that I had to trash soldering wires. I have also tried bare atmegas in different shapes and even with them there are problems (not including flashing bootloaders and stuff you dont have to do with EasyPCB).

    We also needs to remember this is DIY, not factory manufactured which can introduce alof of errors. We learn as we go and I hope EasyPCB can be a great platform for new people like you said. Nice to hear, thank you!



  • Yesterday I have received Rev 9 of Newbie PCB board. I am a newbie and I purchased this board to make building easier. I have soldered a radio and Arduino Pro Mini 3.3 V to it and the radio module with a 47uF cap. The power is supplied using the FTD232 board. Because the radio module is not powered using the 3.3V of arduino I wired this using a separate wire. I also connected a DTH 11 with the resistor on the board (4K7). I used a test sketch to read the DTH 11 and this is working well.

    When I load the MySensors sketch I get a radio failure. I have no Idea what this is? Bad wiring, not correct power?? Anyone can help me started?

    0 MCO:BGN:INIT NODE,CP=RNNNA--,VER=2.1.1
    4 TSM:INIT
    4 TSF:WUR:MS=0
    12 !TSM:INIT:TSP FAIL
    14 TSM:FAIL:CNT=1
    16 TSM:FAIL:PDT
    10018 TSM:FAIL:RE-INIT
    10020 TSM:INIT
    10027 !TSM:INIT:TSP FAIL
    10031 TSM:FAIL:CNT=2
    10033 TSM:FAIL:PDT```

  • Hardware Contributor

    @martim said in Easy/Newbie PCB for MySensors:

    Because the radio module is not powered using the 3.3V of arduino I wired this using a separate wire.

    Can you show a picture of your setup and give more explanation on this sentence ? This part about connection of the radio smells fishy 😉
    It seems the radio cannot be initialized, so I suppose the power supplied to it is not correct, but I'm not sure of what you did.



  • This is the front part. The connected cable goes to the FTD232 which also is currently the power supply.

    0_1486835929737_IMG_3545.JPG !

    The red wire on the back plane connects the plus from arduino to the plus for the radio (soldered on the + of cap)
    0_1486835943373_IMG_3546.JPG !

    Try to zoom in.
    0_1486835954003_zoomed.png


  • Hardware Contributor

    @martim - read the insctructions again.
    If you are using the board with a 3.3v arduino and battery you need to connect the BAT jumper and use a booster.

    If you are using a 3.3 arduino with a regulated power you can add a jumper/wire over the booster and connect the BAT jumper.



  • @sundberg84
    Ok, Thanks I will try the second suggestion. (my booster is still not delivered and hard to get at the moment :()



  • Found one issue. On the PCB board the was a very small broken wire. I think the postman was not very careful with it. At least I have some better logging but still not there.

    How can I solve this one?

    0 MCO:BGN:INIT NODE,CP=RNNNA--,VER=2.1.1
    4 TSM:INIT
    4 TSF:WUR:MS=0
    12 TSM:INIT:TSP OK
    14 TSM:INIT:STATID=20
    16 TSF:SID:OK,ID=20
    18 TSM:FPAR
    55 TSF:MSG:SEND,20-20-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    2064 !TSM:FPAR:NO REPLY
    2066 TSM:FPAR
    2103 TSF:MSG:SEND,20-20-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    4112 !TSM:FPAR:NO REPLY
    4114 TSM:FPAR
    4151 TSF:MSG:SEND,20-20-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    6160 !TSM:FPAR:NO REPLY
    6162 TSM:FPAR
    6199 TSF:MSG:SEND,20-20-255-255,s=255,c=3,t=7,pt=0,l=0,sg=0,ft=0,st=OK:
    8208 !TSM:FPAR:FAIL
    8210 TSM:FAIL:CNT=1
    8212 TSM:FAIL:PDT
    

    Does this mean the gateway does not reply? It does with other sensors?


  • Hardware Contributor

    @martim - yes, it doesnt get the connection to the GW as it wants... might be node or gw. Do you have caps on both?



  • Have solved the issue. Removed the cap from the board and directly soldered to the Radio Board. That's was solving the issue.



  • Awesome board!!!
    How do I access A2, A3 and D8?

    Thanks a lot


  • Hardware Contributor

    @hiddenuser - they are not accesses through the PCB:
    0_1490798623451_1.JPG

    You need to solder a wire on the Pro Mini and run somewhere, like the prototyping area.



  • @sundberg84 Thanks a lot.... My ebay seller sent me a Atmega168 5v. I have noticed that you boards supports 5v version too. Would I be able to power it using raw (12v).

    Thanks a lot .


  • Hardware Contributor

    @hiddenuser - as long as the voltage divider on the board supports 12v that will work. A warning on the cheap chinese stuff is that this voltage regulator is bad and might fry.



  • @sundberg84 - thanks for your board, it seems to be almost exactly what I was looking for! What do you think would be the best way to adjust it if I need to boost the batteries not only to 3.3V, but also to 5V to run the pir sensor?


  • Hardware Contributor

    @achurak1 - do you mean running 5v on batteries? Sorry - thats out of my knowledge.
    I guess there are 5v boosters but my guess is also that this will drain the batteries pretty fast.
    I have made test with 9v batteries and voltage regulaters and this has worked for some time but never gives the lifetime as 3.3v on 2xAA.



  • @sundberg84 - correct, the 5v booster looks exactly like the 3.3v booster. I have another sensor I've built manually and it works exactly like that, arduino/temp/hum/radio all work from 3.3v and pir works from 5v. I power it all with two rechargeable batteries (so ~2.6 max charged, not even 3) and it's been running good for several months already and still shows 2.45-2.50.


  • Mod

    @achurak1 do you know you could modify the pir sensor to work directly from batteries by removing the regulator?



  • @gohan - I tried to connect the 3.3v to one of the three pins where you'd usually put a jumper (H, L pads) as I've seen people discussing it on this forum and it just didn't work for me, the sensor did work, but very unstable, would fire up every time radio sends or receives something.


  • Mod

    Because you need to add an extra AA battery to increase voltage to around 4,5v just for the pir sensor



  • @gohan - not sure how exactly it answers my question? I thought you meant I could run the pir from 3.3v. I could plug everything to an outlet and don't worry about the batteries at all. The pir works perfectly from two batteries and the 5v booster, so why would I want to add more batteries and make the whole thing much bigger?


  • Mod

    I was just saying that without regulators/boosters you can still make a working sensor and get a better battery life. If you don't mind battery life or you can make an outlet powered sensor, of course it makes not much sense.


  • Hardware Contributor

    Im doing a new revision here with RFM69 support.
    I never used the RFM69 though - is there anything I should take in mind?

    • Is it the same with IRQ as Nrf24l01+ - not used, but good to have ie. should i have a jumper so the user can connect IRQ ?
    • The antenna, is it enough with a jumper/hole so the user can solder a antenna of their own? Or is the trace/trace-length also included as the antenna?

  • Mod

    The problem with rfm69 is that they work on 3 different frequencies, so you have to choose which frequency you want to support. I'm not sure if the correct length for the 433mhz is good also for the 866mhz. Let's hope somebody more expert shows up 😀


  • Hardware Contributor

    @gohan - You mean with the antenna? (But the footprint is the same?)
    Well, if the trace isnt added to the lenght of the antenna and I add a through-hole the user can just add what kind of lenght they want?


  • Mod

    The trace adds up to the antenna lengths for what I have seen so far, so I'd say to play safe and leave a hole where to solder the wire antenna or even better if it's near the edge of the pcb you could design a place to mount a sma connector for a real antenna. What do you think?


  • Hardware Contributor

    @gohan - the problem is then if you buy a antenna from ebay with the right length. Added to the PCB trace the length will not match. I have to make the antenna hole as close as possible to the module then.


  • Mod

    by looking around at other PCBs with sma connectors, they are close to radio module, but still a few millimeters away so I'd say you should be ok


  • Hardware Contributor

    @gohan - notised that as well. I have asked scalz over PM about this, I saw he made alot of RFM projects.


  • Hardware Contributor

    Sneak-peak at upcoming RFM edition.
    All input appreciated as usual.

    • I couldnt fit a SMA connector at this point for external antenna because I dont want to remodel the PCB completley.
      I want it to be as close looking to the original as possible to make it easier for newbies.
    • I went with the HW/W version. I talked to scalz and the CW is smaller and better for low power but HW/W is the one at MySensors website/tutorial/shop and preffered at 5v...

    Thoughts?

    0_1494358879620_RFMEd.JPG


  • Mod

    I thought the SMA connector could fit on the side of the PCB... oh well....
    Btw, is the CW really smaller? I thought it was only a different pinout


  • Hardware Contributor

    @gohan - Could be - never used them :S I just checked this image and they look smaller: https://www.google.se/search?q=RFM69H&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjdzPDD2OTTAhWqK5oKHW5RCboQ_AUICygC&biw=1920&bih=941#tbm=isch&q=RFM69H+pinout&imgrc=c_R-Nh2VtBGlRM:

    Im giving it a second try with the SMA tonight... I will rotate it 180dgr and maybe I can fit it there...



  • @shabba the purpose is to keep the raw power away from the 16 pin breakout header if it is not needed. If you connect the jumper, you will have raw power available on pin 1 of the header.



  • I was working on a project last night and was using an old REV 8 board for it. After wiring it up I needed to check some things with the pins on the breakout header. When I looked at the site, which showed the REV 9 board, I noticed that the breakout header is quite different between the REV 8 and REV 9 boards. I figured that it was worth noting to people here to watch what diagram you are looking at compared to what REV of the board you are using.


  • Hardware Contributor

    @dbemowsk - thank you for pointing this out!
    Rev 8 is MysX 1.X and one of the reasons I upgraded to Rev 9 is because MysX 2.X came out. The pins are a bit changed but much better in MysX 2.X. For more details can study the changes.txt as well in the project.

    I will add this to Q&A for EasyPCB so other users dont miss it!
    Thanks again!



  • Hi All,
    I have a lot of these PCBs in Rev.9 running as battery powered sensors. Also some with regulated power. They are running currentl with a NRF24L01. But i need to use on some sensors a RFM69 868 Radio. I have few breakout boards to use a RFM69 on a NRF24L01 connector. Is it possilbe just to replace the Radios on my EasyPBCs NRF to use RFM69 Radios? Think from power perspective should this be working. Well I know I have to Change also the Radio type in the Sketch. But is there anything more to do? Like cabling or specific Settings in the Sketch?

    Many Thanks
    Markus


  • Hero Member

    @Markus. Keep in mind that the RFM69 radio pins are not 5V tolerable so use them only with 3.3V Pro mini. And like you said change the radio type in sketch.



  • @korttoma yes i use the pro mini 3,3V but can Ireplace the Radios simply with a modification of the Sketch ? Because hen I Flash following Sketch to the Easy pcb:

    // Sample RFM69 receiver/gateway sketch, with ACK and optional encryption, and Automatic Transmission Control
    // Passes through any wireless received messages to the serial port & responds to ACKs
    // It also looks for an onboard FLASH chip, if present
    // **********************************************************************************
    // Copyright Felix Rusu 2016, http://www.LowPowerLab.com/contact
    // **********************************************************************************
    // License
    // **********************************************************************************
    // This program is free software; you can redistribute it 
    // and/or modify it under the terms of the GNU General    
    // Public License as published by the Free Software       
    // Foundation; either version 3 of the License, or        
    // (at your option) any later version.                    
    //                                                        
    // This program is distributed in the hope that it will   
    // be useful, but WITHOUT ANY WARRANTY; without even the  
    // implied warranty of MERCHANTABILITY or FITNESS FOR A   
    // PARTICULAR PURPOSE. See the GNU General Public        
    // License for more details.                              
    //                                                        
    // Licence can be viewed at                               
    // http://www.gnu.org/licenses/gpl-3.0.txt
    //
    // Please maintain this license information along with authorship
    // and copyright notices in any redistribution of this code
    // **********************************************************************************
    #include <RFM69.h>         //get it here: https://www.github.com/lowpowerlab/rfm69
    #include <RFM69_ATC.h>     //get it here: https://www.github.com/lowpowerlab/rfm69
    #include <SPIFlash.h>      //get it here: https://www.github.com/lowpowerlab/spiflash
    #include <SPI.h>           //included with Arduino IDE install (www.arduino.cc)
    
    //*********************************************************************************************
    //************ IMPORTANT SETTINGS - YOU MUST CHANGE/CONFIGURE TO FIT YOUR HARDWARE *************
    //*********************************************************************************************
    #define NODEID        1    //unique for each node on same network
    #define NETWORKID     100  //the same on all nodes that talk to each other
    //Match frequency to the hardware version of the radio on your Moteino (uncomment one):
    //#define FREQUENCY     RF69_433MHZ
    #define FREQUENCY     RF69_868MHZ
    //#define FREQUENCY     RF69_915MHZ
    #define ENCRYPTKEY    "sampleEncryptKey" //exactly the same 16 characters/bytes on all nodes!
    #define IS_RFM69HW_HCW  //uncomment only for RFM69HW/HCW! Leave out if you have RFM69W/CW!
    //*********************************************************************************************
    //Auto Transmission Control - dials down transmit power to save battery
    //Usually you do not need to always transmit at max output power
    //By reducing TX power even a little you save a significant amount of battery power
    //This setting enables this gateway to work with remote nodes that have ATC enabled to
    //dial their power down to only the required level
    #define ENABLE_ATC    //comment out this line to disable AUTO TRANSMISSION CONTROL
    //*********************************************************************************************
    #define SERIAL_BAUD   115200
    
    #ifdef __AVR_ATmega1284P__
      #define LED           15 // Moteino MEGAs have LEDs on D15
      #define FLASH_SS      23 // and FLASH SS on D23
    #else
      #define LED           9 // Moteinos have LEDs on D9
      #define FLASH_SS      8 // and FLASH SS on D8
    #endif
    
    #ifdef ENABLE_ATC
      RFM69_ATC radio;
    #else
      RFM69 radio;
    #endif
    
    SPIFlash flash(FLASH_SS, 0xEF30); //EF30 for 4mbit  Windbond chip (W25X40CL)
    bool promiscuousMode = false; //set to 'true' to sniff all packets on the same network
    
    void setup() {
      Serial.begin(SERIAL_BAUD);
      delay(10);
      radio.initialize(FREQUENCY,NODEID,NETWORKID);
    #ifdef IS_RFM69HW_HCW
      radio.setHighPower(); //must include this only for RFM69HW/HCW!
    #endif
      radio.encrypt(ENCRYPTKEY);
      radio.promiscuous(promiscuousMode);
      //radio.setFrequency(919000000); //set frequency to some custom frequency
      char buff[50];
      sprintf(buff, "\nListening at %d Mhz...", FREQUENCY==RF69_433MHZ ? 433 : FREQUENCY==RF69_868MHZ ? 868 : 915);
      Serial.println(buff);
      if (flash.initialize())
      {
        Serial.print("SPI Flash Init OK. Unique MAC = [");
        flash.readUniqueId();
        for (byte i=0;i<8;i++)
        {
          Serial.print(flash.UNIQUEID[i], HEX);
          if (i!=8) Serial.print(':');
        }
        Serial.println(']');
        
        //alternative way to read it:
        //byte* MAC = flash.readUniqueId();
        //for (byte i=0;i<8;i++)
        //{
        //  Serial.print(MAC[i], HEX);
        //  Serial.print(' ');
        //}
      }
      else
        Serial.println("SPI Flash MEM not found (is chip soldered?)...");
        
    #ifdef ENABLE_ATC
      Serial.println("RFM69_ATC Enabled (Auto Transmission Control)");
    #endif
    }
    
    byte ackCount=0;
    uint32_t packetCount = 0;
    void loop() {
      //process any serial input
      if (Serial.available() > 0)
      {
        char input = Serial.read();
        if (input == 'r') //d=dump all register values
          radio.readAllRegs();
        if (input == 'E') //E=enable encryption
          radio.encrypt(ENCRYPTKEY);
        if (input == 'e') //e=disable encryption
          radio.encrypt(null);
        if (input == 'p')
        {
          promiscuousMode = !promiscuousMode;
          radio.promiscuous(promiscuousMode);
          Serial.print("Promiscuous mode ");Serial.println(promiscuousMode ? "on" : "off");
        }
        
        if (input == 'd') //d=dump flash area
        {
          Serial.println("Flash content:");
          int counter = 0;
    
          while(counter<=256){
            Serial.print(flash.readByte(counter++), HEX);
            Serial.print('.');
          }
          while(flash.busy());
          Serial.println();
        }
        if (input == 'D')
        {
          Serial.print("Deleting Flash chip ... ");
          flash.chipErase();
          while(flash.busy());
          Serial.println("DONE");
        }
        if (input == 'i')
        {
          Serial.print("DeviceID: ");
          word jedecid = flash.readDeviceId();
          Serial.println(jedecid, HEX);
        }
        if (input == 't')
        {
          byte temperature =  radio.readTemperature(-1); // -1 = user cal factor, adjust for correct ambient
          byte fTemp = 1.8 * temperature + 32; // 9/5=1.8
          Serial.print( "Radio Temp is ");
          Serial.print(temperature);
          Serial.print("C, ");
          Serial.print(fTemp); //converting to F loses some resolution, obvious when C is on edge between 2 values (ie 26C=78F, 27C=80F)
          Serial.println('F');
        }
      }
    
      if (radio.receiveDone())
      {
        Serial.print("#[");
        Serial.print(++packetCount);
        Serial.print(']');
        Serial.print('[');Serial.print(radio.SENDERID, DEC);Serial.print("] ");
        if (promiscuousMode)
        {
          Serial.print("to [");Serial.print(radio.TARGETID, DEC);Serial.print("] ");
        }
        for (byte i = 0; i < radio.DATALEN; i++)
          Serial.print((char)radio.DATA[i]);
        Serial.print("   [RX_RSSI:");Serial.print(radio.RSSI);Serial.print("]");
        
        if (radio.ACKRequested())
        {
          byte theNodeID = radio.SENDERID;
          radio.sendACK();
          Serial.print(" - ACK sent.");
    
          // When a node requests an ACK, respond to the ACK
          // and also send a packet requesting an ACK (every 3rd one only)
          // This way both TX/RX NODE functions are tested on 1 end at the GATEWAY
          if (ackCount++%3==0)
          {
            Serial.print(" Pinging node ");
            Serial.print(theNodeID);
            Serial.print(" - ACK...");
            delay(3); //need this when sending right after reception .. ?
            if (radio.sendWithRetry(theNodeID, "ACK TEST", 8, 0))  // 0 = only 1 attempt, no retries
              Serial.print("ok!");
            else Serial.print("nothing");
          }
        }
        Serial.println();
        Blink(LED,3);
      }
    }
    
    void Blink(byte PIN, int DELAY_MS)
    {
      pinMode(PIN, OUTPUT);
      digitalWrite(PIN,HIGH);
      delay(DELAY_MS);
      digitalWrite(PIN,LOW);
    }
    
    

    I get following result:

    Listening at 868 Mhz...
    SPI Flash MEM not found (is chip soldered?)...
    RFM69_ATC Enabled (Auto Transmission Control)
    
    
    
    

  • Mod

    @Markus.

    I am using these and they work https://www.mysensors.org/hardware/nrf2rfm69



  • @gohan its eactly the adaptor board which i try to use at the Moment.
    But I am not sure If the test Sketch can work. Because the pin Definition could be different to get it working on the Easy PCB with RFM69 ?!


  • Mod

    No, I only changed the define from nrf24 to rfm69 and that was it. The capacitor I left the one on the EASYPCB near the nrf24 connector (a 10uF ceramic)



  • @gohan Sounds good 🙂 well, I have a 10uF electrolytic there. Hope it makes not the big difference. On the boards with NRF works that fine so far.


  • Mod

    I used the ceramic becuse I had a bunch of those 😄


  • MySensors Evangelist

    @sundberg84: Received the V9 boards and started to work with them. Converting my nodes into smaller ones 😉

    I want to use it with my 5v arduino. So need voltage regulator for the radio. I guess you are using LE33 if I read the thread correctly. I have LM1117 which seems to be a hassle to fix on the board with the 'rough bulky' legs. Suggestions or just buy LE33 😉


  • Mod

    if you have MCP1700 you can still fit those



  • @sincze When I first got my rev8 boards a long time ago I had the same issue. I did manage to bend the leads and solder some extensions on one to get it to work, but in the end it was just too much of a pain in the arse. I ended up buying L78L33ACZ regulators which work just fine, but the board was designed using the LE33. The LE33 is an LDO regulator where the L78L33 is not. The quiscent current of the L78L33 regulator, which is something I forgot to look at when I bought them, is 6mA where the LE33 maxes out at 3mA, which is much better when building battery operated nodes.


  • Hardware Contributor

    As mentioned above, it works but you need to watch for the right pins... you might have to be careful bending those pins but I think its managable... My suggestion though is to look for volt. regulators with the same pinout.


  • MySensors Evangelist

    @dbemowsk said in Easy/Newbie PCB for MySensors:

    LDO regulator

    A well that is a clear answer. So I just ordered a few LE33. The project has to wait.
    It still will be a tough one getting everyting attached to the pins. ->. 2x Door Sensor / 3x Dallas DS18B20 / 3x Relais / 2x Control LEDS TX/RX. A well part of the game. Already figured out I have to use the A0x pins as digital ones. As i don't plan to use IRQ I'm really hopeful this nicely designed PCB will offer me A0,A1A4,A5 D2,D3,D5,D6. So should fit 😉



  • @sincze With that much going on, you may want to connect a set of header pins to the outputs next to the nRF24 radio and run that to an external proto-board for connecting all of your devices. You won't make it on the small proto section of the newbie board for everything you want to add.


  • Hardware Contributor

    @dbemowsk @sincze - its a good idea with a proto board or you can build something and add as an shield on the MysX connector... I would also suggest you run a seperate power regulator for the sensors... atleast do some calculactions before adding them in because LE33 can handle maximum of 0.2A i think.


  • MySensors Evangelist

    @sundberg84 Ok tnx for the heads up. Currently I have everything in DEMO up and running on a NANO on my desk (using the exact same pins as I would on your PCB.
    I was thinking of the following. Power the PCB with 5v and use a 5v arduino mini, use the LE33 to power the Antenna with 3,3v. Hopefully this will enable the pins Mys pins A0 ...Dx with 5v.(Have to look at the schematic to be sure). Keeping your advise in mind to add some extra juice I have to power the RELAIS & Temp sensor separately with 5v and keep the grounds of everything together with the PCB. I think it should work. But maybe I am missing something.


  • Hardware Contributor

    @sincze all you can do is test and learn !!



  • @sundberg84 Couldn't think of the name of the MysX connector when I did that post, but that's what I was talking about putting the header on to connect to the proto-board. Mainly to act as a proto-shield. I would agree to run the sensors from a separate regulator. If he plugs it into the MysX connector he should have access to RAW power if he jumpers the pads next to the MysX connector, and then he may be able to make use of at least one of his LM1117 regulators on his shield, provided that he runs the sensors from 3.3V. I am assuming that his LM1117's are 3.3V regulators and not the 5V versions.


  • MySensors Evangelist

    @dbemowsk Got in stock 2 types of LM1117 the 3,3v and 5v. In any case the relais need 5v, the temp sensor as well. So If I read RAW in your answer that triggers me to watch out. 😉 I'll start soldering some pins and measure the voltage. as @sundberg84 said.. "all you can do is test and learn !! hehehe. Part of the Mysensors fun. And ofcourse this forum provides me with experienced feedback.


  • MySensors Evangelist

    So this is where the project is at. Using regulated 5V.
    Still missing the 0,1u capacitor, but it is on its way,
    0_1510686541052_PCB_001.jpg

    The voltage divider is working fine 5v -> 3,3v.
    Maybe I am missing some(connection)thing as I don't have 3,3v at the Antenna 3,3/GND connector. Did I miss something as I am not a PCB expert, sorry.


  • Hardware Contributor

    @sincze

    I don't have 3,3v at the Antenna 3,3/GND connector

    If you measure these points, what do you have?

    • plus (left pin) on blue screw terminal (should be 5v)
    • reg jumper (should be 5v)
    • Vin voltage reg (should be 5v)
    • Vout Voltage reg (should be 3.3v)

    You should be able to follow the trace from Vout to VCC(radio) with your eye.
    You can do a continuity test from Vout to VCC (radio) and GND(radio) to GND(screw terminal) to comfirm connectiom.

    What kind of voltage regulator do you have? Did you check the pinout matched vin/vout/gnd ?

    Still missing the 0,1u capacitor, but it is on its way,

    No rush, this supports the voltage reg but unless you do some heavy things you will do without.


  • MySensors Evangelist

    @sundberg84 I did measure the following:

    plus (left pin) on blue screw terminal (should be 5v), is 4,96 V
    Vin voltage reg (should be 5v), is 4,96
    Vout Voltage reg (should be 3.3v), is 3,3


  • Hardware Contributor

    @sincze but still 0v at radio VCC?


  • MySensors Evangelist

    @sundberg84 unfortunately yes. However.

    You can do a continuity test from Vout to VCC (radio) , (We have no beep for continuity)
    and
    GND(radio) to GND(screw terminal) to comfirm connectiom. (We have a beep for contiuity)


  • Hardware Contributor

    @sincze if this is so you have a broken pcb trace (first time I ever heard of) do you need to replace the trace with a wire.


  • Hardware Contributor

    @sincze or a bad solder joint...


Log in to reply
 

Suggested Topics

  • 87
  • 5
  • 5
  • 8
  • 7
  • 7

0
Online

11.4k
Users

11.1k
Topics

112.7k
Posts