💬 Stamp size MySensor node



  • Hello,

    I have a question about the dimensions. Could you tell me what is the exact measure when fully assembled with nrf24 and with / without goldpins? I have tiny, transparent boxes and curious if I can fit them inside 😄


  • Hardware Contributor

    @macieiks

    The pcb itself is 21 mm wide and 23 mm long.

    With the radio the longest side becomes 30 mm long and 21 mm wide.

    Without any pins mounted, the board is just under 5 mm think.

    If the dual row angled headers are mounted, the longest side (30 mm with radio) becomes 39 mm.
    You will need to add the length of the contacts + wire to that for a complete length.

    You can also turn the dual row angled header inwards (towards the radio), then the maximum length is still 30 mm.


  • Hero Member

    @GertSanders What is the difference between the v1 version of your stamp size mysensor node that's on OSH PARK and the V2 version that's on your website that you linked to in your OP ( https://www.openhardware.io/view/76/Stamp-size-MySensor-node )?


  • Hardware Contributor

    @NeverDie
    None. The plan was to enhance it, so I copied my version 1 to version 2. But then I decided to publish it in Openhardware anyway.
    This board is a proof of concept for me.
    My next version will have a 8Mhz crystal. The addional powerconsumption is negligable bit the accuracy of timing is much better (and constant, even with dropping voltage).
    So the board on OSH Park is identical to the one on Openhardware.io


  • Hero Member

    Thanks! I ordered it yesterday from OSH PARK, so good to hear.

    Have you found something where you really do need the 8mhz crystal oscillator, or were you adding it as a "just in case"?


  • Hardware Contributor

    @NeverDie
    I have a use case where I need the clock to be acurate. For realy low power nodes like the ones with reed switches, I also prefer the internal oscillator.



  • @GertSanders

    Goedenavond Gert,

    What's your boards.txt file is saying please? I uploaded the bootloader (optiboot_atmega328_08M_038400_D8) and all went OK until I upload my first sketch.
    After that I am getting:

    avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x32
    avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x0f
    avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xfb
    avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x32
    avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x0f
    avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x73
    avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xff
    avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x32
    avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x0f
    avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xfb
    

    I have to upload the bootloader again in order to upload the sketch - something is clearly not working. This is my extract from boards.txt:

    BlueBoard.menu.mhz.8Mhz= 8Mhz - internal oscillator D8 LED for atmega328-tqfp
    BlueBoard.menu.mhz.8Mhz.bootloader.low_fuses=0xE2
    BlueBoard.menu.mhz.8Mhz.bootloader.high_fuses=0xDE
    BlueBoard.menu.mhz.8Mhz.build.f_cpu=8000000L 
    BlueBoard.menu.mhz.8Mhz.upload.speed=38400
    BlueBoard.menu.mhz.8Mhz.bootloader.file=myoptiboot/optiboot_atmega328_08M_038400_D8.hex
    

  • Hardware Contributor

    @alexsh1

    Here is my extract for this type:

    32PinBoard.name=atmega328p based - 32 pin TQFP
    
    32PinBoard.upload.tool=arduino:avrdude
    32PinBoard.upload.protocol=arduino
    32PinBoard.upload.maximum_size=32256
    32PinBoard.upload.maximum_data_size=2048
    
    32PinBoard.bootloader.tool=arduino:avrdude
    
    32PinBoard.bootloader.unlock_bits=0x3F
    32PinBoard.bootloader.lock_bits=0x0F
    
    
    32PinBoard.build.core=arduino:arduino
    32PinBoard.build.mcu=atmega328p
    
    32PinBoard.build.board=AVR_GERTSANDERS32PinBoard
    32PinBoard.build.variant=32PinBoard
    
    32PinBoard.menu.bod.4v3=4V3
    32PinBoard.menu.bod.4v3.bootloader.extended_fuses=0x04
    32PinBoard.menu.bod.2v7=2V7
    32PinBoard.menu.bod.2v7.bootloader.extended_fuses=0x05
    32PinBoard.menu.bod.1v8=1V8
    32PinBoard.menu.bod.1v8.bootloader.extended_fuses=0x06
    32PinBoard.menu.bod.off=Disabled
    32PinBoard.menu.bod.off.bootloader.extended_fuses=0x07
    32PinBoard.menu.mhz.8Mi-38K4-D8= 8Mhz - internal - 38K4 - D8
    32PinBoard.menu.mhz.8Mi-38K4-D8.bootloader.low_fuses=0xE2
    32PinBoard.menu.mhz.8Mi-38K4-D8.bootloader.high_fuses=0xDE
    32PinBoard.menu.mhz.8Mi-38K4-D8.build.f_cpu=8000000L 
    32PinBoard.menu.mhz.8Mi-38K4-D8.upload.speed=38400
    32PinBoard.menu.mhz.8Mi-38K4-D8.bootloader.file=myoptiboot/optiboot_atmega328_08M_038400_D8.hex
    


  • @GertSanders OK, the issue is in pins_arduino.h in 32PinBoard folder. The standard file is just not good. I'll have to find the right one for tqfp chip.

    EDIT: copied the "eightanaloginputs" variant in the variant folder, but still can only upload the first sketch after the bootloader, all other uploads are giving me "avrdude: stk500_getsync() attempt x of 10: not in sync:"



  • @GertSanders Gert, what pins_arduino.h are you using for this board please? Can you post it here?


  • Hardware Contributor

    @alexsh1

    Here is the pins_arduino.h file for the 32pin TQFP package

    0_1465854245099_pins_arduino.h


  • Hardware Contributor

    @alexsh1

    And here is a ZIP file with my complete atmega328p definitions

    0_1465854396475_atmega328p.zip



  • @GertSanders Many thanks for your help. This is probably my bad luck, but I have mixed up C1 and R1 mounting them vertically (not horizontally). What a stupid mistake really given that I have checked it a few times. Anyway, now everything is working.

    FYG, I looked at your pins_arduino.h - this is a standard one and it is not correct. I corrected the following entries:

    static const uint8_t SS   = 14;
    static const uint8_t MOSI = 15;
    static const uint8_t MISO = 16;
    static const uint8_t SCK  = 17;
    
    static const uint8_t SDA = 27;
    static const uint8_t SCL = 28;
    #define LED_BUILTIN 8
    
    static const uint8_t A0 = 23;
    static const uint8_t A1 = 24;
    static const uint8_t A2 = 25;
    static const uint8_t A3 = 26;
    static const uint8_t A4 = 27;
    static const uint8_t A5 = 28;
    static const uint8_t A6 = 19;
    static const uint8_t A7 = 22;
    

  • Hardware Contributor

    @alexsh1
    OK, I will check also on my side 🙂 Thanks for the feedback.



  • @GertSanders No worries! And signing works flawlessly on this node as well with ATSHA204A by the way 🙂



  • 0_1466010177286_image.jpeg


  • Hardware Contributor

    @alexsh1
    Double plus good !
    As I have no signing capability on my raspberry-turned-gateway I'm glad the hard work to simplify signing was done so well by @tbowmo and @Anticimex. Even without testing it I could assume it would work.


  • Contest Winner

    @GertSanders You are welcome 🙂 Btw, if you just patch in support to generate random data for a nonce, you can use the soft signing backend on rPi.


  • Hardware Contributor

    @Anticimex
    Well that sounds simple, but I'm more a hardware contributer, this is beyond my capabilities :-), especially in unix arena. I manage software developers for a living, so I know how much I do not know.



  • Hello guys,

    I am about to solder first PCB of this version. Just to be 100% sure, regarding C4 - what is the best value to use 1uF or 10uF, because I can see we can choose.

    Regards,
    Maciek



280
Online

6.7k
Users

7.6k
Topics

80.4k
Posts

Looks like your connection to MySensors Forum was lost, please wait while we try to reconnect.