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. Announcements
  3. Sensebender Micro

Sensebender Micro

Scheduled Pinned Locked Moved Announcements
584 Posts 84 Posters 401.8k Views 35 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.
  • AnticimexA Anticimex

    You will still be notified without verbose logging. And if you have enabled and require signing, you won't get any data if something fails (assuming signing is properly activated).

    ximinezX Offline
    ximinezX Offline
    ximinez
    wrote on last edited by
    #433

    @Anticimex I've set MY_SIGNING_SOFT, MY_SIGNING_REQUEST_SIGNATURES and MY_SIGNING_NODE_WHITELIST on the GW, and reenabled (normal) debug but not signing debug since that is too big.
    With those enabled, if the sending node does not sign, I should not get this?

    0;255;3;0;9;read: 2-2-0 s=1,c=1,t=0,pt=7,l=5,sg=0:6.3
    0;255;3;0;9;read: 2-2-0 s=2,c=1,t=1,pt=2,l=2,sg=0:59

    AnticimexA 1 Reply Last reply
    0
    • ximinezX ximinez

      @Anticimex I've set MY_SIGNING_SOFT, MY_SIGNING_REQUEST_SIGNATURES and MY_SIGNING_NODE_WHITELIST on the GW, and reenabled (normal) debug but not signing debug since that is too big.
      With those enabled, if the sending node does not sign, I should not get this?

      0;255;3;0;9;read: 2-2-0 s=1,c=1,t=0,pt=7,l=5,sg=0:6.3
      0;255;3;0;9;read: 2-2-0 s=2,c=1,t=1,pt=2,l=2,sg=0:59

      AnticimexA Offline
      AnticimexA Offline
      Anticimex
      Contest Winner
      wrote on last edited by
      #434

      @ximinez The GW will only require signatures from a node that in turn require signatures.
      It is the sg-flag that indicate if a message is signed, in your case, both messages are unsigned.
      If you only have node->gw communication, both gw and node has to require signatures for you to see signed messages.
      If you have gw->node communication, it is enough that the node require signatures, the gw will then sign them, no matter if the gw require signatures or not.

      Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

      1 Reply Last reply
      0
      • ximinezX Offline
        ximinezX Offline
        ximinez
        wrote on last edited by
        #435

        0;255;3;0;9;read: 3-3-0 s=1,c=0,t=6,pt=0,l=0,sg=0:
        0;255;3;0;9;read: 3-3-0 s=2,c=3,t=16,pt=0,l=0,sg=0:
        0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=17,pt=6,l=25,sg=0,st=ok:57ACB4BD46843BFCC7ABA693CC5AA527F7724531F525338E8A
        0;255;3;0;9;read: 3-3-0 s=2,c=0,t=7,pt=0,l=0,sg=0:

        I feel more secure now :-P

        AnticimexA 1 Reply Last reply
        0
        • ximinezX ximinez

          0;255;3;0;9;read: 3-3-0 s=1,c=0,t=6,pt=0,l=0,sg=0:
          0;255;3;0;9;read: 3-3-0 s=2,c=3,t=16,pt=0,l=0,sg=0:
          0;255;3;0;9;send: 0-0-3-3 s=255,c=3,t=17,pt=6,l=25,sg=0,st=ok:57ACB4BD46843BFCC7ABA693CC5AA527F7724531F525338E8A
          0;255;3;0;9;read: 3-3-0 s=2,c=0,t=7,pt=0,l=0,sg=0:

          I feel more secure now :-P

          AnticimexA Offline
          AnticimexA Offline
          Anticimex
          Contest Winner
          wrote on last edited by
          #436

          @ximinez Hm, good, but I still see no signed message. But at least a nonce was sent

          Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

          ximinezX 1 Reply Last reply
          0
          • AnticimexA Anticimex

            @ximinez Hm, good, but I still see no signed message. But at least a nonce was sent

            ximinezX Offline
            ximinezX Offline
            ximinez
            wrote on last edited by
            #437

            @Anticimex Sensor values are getting through though. And signing is requested on both ends (for one sensor so far). I can't see any other #defines that should be set to enable signing. I get the same result on both the zombie sensor and the unmodded one.

            I get three "sign fail" (showing up as verify fail on gw) before the sketch reaches setup(), where the ATSHA gets powered up. I will need to power the ATSHA somewhere in the mysensors library. However, once setup() is reached, the ATSHA seems to handle powering down and up just fine.

            I can however say that it the Si7021 doesn't like being powered off and back on again after sleep. That causes the MCU to reset.

            AnticimexA 1 Reply Last reply
            0
            • ximinezX ximinez

              @Anticimex Sensor values are getting through though. And signing is requested on both ends (for one sensor so far). I can't see any other #defines that should be set to enable signing. I get the same result on both the zombie sensor and the unmodded one.

              I get three "sign fail" (showing up as verify fail on gw) before the sketch reaches setup(), where the ATSHA gets powered up. I will need to power the ATSHA somewhere in the mysensors library. However, once setup() is reached, the ATSHA seems to handle powering down and up just fine.

              I can however say that it the Si7021 doesn't like being powered off and back on again after sleep. That causes the MCU to reset.

              AnticimexA Offline
              AnticimexA Offline
              Anticimex
              Contest Winner
              wrote on last edited by
              #438

              @ximinez Ah, yes, on development branch the signing backend clear the sign flag when it verifies the message. so it will always show as 0 without verbose signing debug enabled.
              I know there have been discussions about a "pre setup" to be used for early sketch init. You probably want to power the atsha for early handshaking as well to get the sketch name and such to propagate properly. @hek perhaps has the latest on such features.

              Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

              ximinezX 1 Reply Last reply
              0
              • AnticimexA Anticimex

                @ximinez Ah, yes, on development branch the signing backend clear the sign flag when it verifies the message. so it will always show as 0 without verbose signing debug enabled.
                I know there have been discussions about a "pre setup" to be used for early sketch init. You probably want to power the atsha for early handshaking as well to get the sketch name and such to propagate properly. @hek perhaps has the latest on such features.

                ximinezX Offline
                ximinezX Offline
                ximinez
                wrote on last edited by ximinez
                #439

                I've built a nicer-looking serial gateway instead of the rather large ethernet gateway. I thought that would basically be a "slot-in" as long as I personalize the GW it with the same SOFT_HMAC_KEY, SOFT_SERIAL and AES_KEY as the original GW. Are there more steps that need to be taken to get the sensors to connect?

                Serial Gateway

                1 Reply Last reply
                0
                • ximinezX Offline
                  ximinezX Offline
                  ximinez
                  wrote on last edited by
                  #440

                  No matter what I do now, this is what I get:

                  send: 2-2-0-0 s=1,c=3,t=16,pt=0,l=0,sg=0,st=fail:
                  sign fail
                  send: 2-2-0-0 s=1,c=1,t=0,pt=7,l=5,sg=0,st=fail:26.0
                  send: 2-2-0-0 s=2,c=3,t=16,pt=0,l=0,sg=0,st=fail:
                  sign fail
                  send: 2-2-0-0 s=2,c=1,t=1,pt=2,l=2,sg=0,st=fail:34
                  send: 2-2-0-0 s=255,c=3,t=16,pt=0,l=0,sg=0,st=fail:
                  sign fail

                  1 Reply Last reply
                  0
                  • AnticimexA Offline
                    AnticimexA Offline
                    Anticimex
                    Contest Winner
                    wrote on last edited by
                    #441

                    You must not use the same serial across nodes. Serial have to be unique. HMAC have to be identical.

                    Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                    1 Reply Last reply
                    0
                    • ximinezX Offline
                      ximinezX Offline
                      ximinez
                      wrote on last edited by
                      #442

                      Yes, I know serial must be unique. Serials go in the whitelist for the corresponding node ID. It turned out to be the NRF24L01+-modules with antennas. Replaced it with a regular module and it worked fine.
                      (Which is strange, because one of those modules worked fine on the ethernet gw. It doesn't eat that much power does it?)

                      AnticimexA 1 Reply Last reply
                      0
                      • ximinezX ximinez

                        Yes, I know serial must be unique. Serials go in the whitelist for the corresponding node ID. It turned out to be the NRF24L01+-modules with antennas. Replaced it with a regular module and it worked fine.
                        (Which is strange, because one of those modules worked fine on the ethernet gw. It doesn't eat that much power does it?)

                        AnticimexA Offline
                        AnticimexA Offline
                        Anticimex
                        Contest Winner
                        wrote on last edited by
                        #443

                        @ximinez The signing failing is due to messages not arriving (st=fail). So it is not signing that is your problem here.
                        However, with signing, messages are now "full size" which strains the RF link so if it is "weak" fewer messages get through if they are "longer". I suspect that is the problem here. Basically the usual stuff; adding caps, using a dedicated regulator and so on...

                        Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                        1 Reply Last reply
                        0
                        • ximinezX Offline
                          ximinezX Offline
                          ximinez
                          wrote on last edited by
                          #444

                          Looks like it works now, but what's the deal with the initial failed signs? Look at http://pastebin.ca/3585005 (GW side) and http://pastebin.ca/3585014 (Sensor side. Not the same powerup). It starts by failing a lot, then after a while everything looks OK.

                          AnticimexA alexsh1A 2 Replies Last reply
                          0
                          • ximinezX ximinez

                            Looks like it works now, but what's the deal with the initial failed signs? Look at http://pastebin.ca/3585005 (GW side) and http://pastebin.ca/3585014 (Sensor side. Not the same powerup). It starts by failing a lot, then after a while everything looks OK.

                            AnticimexA Offline
                            AnticimexA Offline
                            Anticimex
                            Contest Winner
                            wrote on last edited by
                            #445

                            @ximinez difficult to say. Maybe a long stabilization period for the regulator. You could try to add a delay in early init in the library to see if it makes a difference.

                            Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                            AnticimexA 1 Reply Last reply
                            0
                            • AnticimexA Anticimex

                              @ximinez difficult to say. Maybe a long stabilization period for the regulator. You could try to add a delay in early init in the library to see if it makes a difference.

                              AnticimexA Offline
                              AnticimexA Offline
                              Anticimex
                              Contest Winner
                              wrote on last edited by
                              #446

                              @Anticimex and again, it is not failed signature errors per se. It is st=fail (transmission errors) that cause the signing backend to timeout. So it is not the performance of the atsha (or sw) that cause the issue here, it is the radio.

                              Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

                              1 Reply Last reply
                              0
                              • tbowmoT tbowmo

                                @ximinez

                                For my battery reporting, I have set 1.9V as 0%, 3.3V is 100%..

                                While you're at it, also power down the external flash, as it might also contribute a bit..

                                ximinezX Offline
                                ximinezX Offline
                                ximinez
                                wrote on last edited by
                                #447

                                @tbowmo said:

                                @ximinez

                                While you're at it, also power down the external flash, as it might also contribute a bit..

                                I forgot about the flash. That would require bootloader support though? Or is the OTA done by jumping to the bootloader while running, keeping pin states?
                                I'm waiting for some SOIC breakouts in the mail. When I get them, I'll scavenge the ATSHA and flash module from my zombie sensor and build my own sensebender with blackjack and hookers.

                                1 Reply Last reply
                                0
                                • tbowmoT Offline
                                  tbowmoT Offline
                                  tbowmo
                                  Admin
                                  wrote on last edited by
                                  #448

                                  @ximinez

                                  Yes.. bootloader should probably by modified, if you decide to switch off the flash as well..

                                  1 Reply Last reply
                                  0
                                  • G Offline
                                    G Offline
                                    gloob
                                    wrote on last edited by gloob
                                    #449

                                    I did update the Arduino IDE and now I don't see the Sensebender Micro in the device list.
                                    I'm using 1.6.5 and did copy the content to the boards.txt.

                                    Is there something else I have to do?

                                    # See: http://code.google.com/p/arduino/wiki/Platforms
                                    
                                    menu.cpu=Processor
                                    
                                    ##############################################################
                                    
                                    yun.name=Arduino Yún
                                    yun.upload.via_ssh=true
                                    
                                    yun.vid.0=0x2341
                                    yun.pid.0=0x0041
                                    yun.vid.1=0x2341
                                    yun.pid.1=0x8041
                                    yun.vid.2=0x2A03
                                    yun.pid.2=0x0041
                                    yun.vid.3=0x2A03
                                    yun.pid.3=0x8041
                                    
                                    yun.upload.tool=avrdude
                                    yun.upload.protocol=avr109
                                    yun.upload.maximum_size=28672
                                    yun.upload.maximum_data_size=2560
                                    yun.upload.speed=57600
                                    yun.upload.disable_flushing=true
                                    yun.upload.use_1200bps_touch=true
                                    yun.upload.wait_for_upload_port=true
                                    
                                    yun.bootloader.tool=avrdude
                                    yun.bootloader.low_fuses=0xff
                                    yun.bootloader.high_fuses=0xd8
                                    yun.bootloader.extended_fuses=0xfb
                                    yun.bootloader.file=caterina/Caterina-Yun.hex
                                    yun.bootloader.unlock_bits=0x3F
                                    yun.bootloader.lock_bits=0x2F
                                    
                                    yun.build.mcu=atmega32u4
                                    yun.build.f_cpu=16000000L
                                    yun.build.vid=0x2341
                                    yun.build.pid=0x8041
                                    yun.build.usb_product="Arduino Yun"
                                    yun.build.board=AVR_YUN
                                    yun.build.core=arduino
                                    yun.build.variant=yun
                                    yun.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    uno.name=Arduino/Genuino Uno
                                    
                                    uno.vid.0=0x2341
                                    uno.pid.0=0x0043
                                    uno.vid.1=0x2341
                                    uno.pid.1=0x0001
                                    uno.vid.2=0x2A03
                                    uno.pid.2=0x0043
                                    uno.vid.3=0x2341
                                    uno.pid.3=0x0243
                                    
                                    uno.upload.tool=avrdude
                                    uno.upload.protocol=arduino
                                    uno.upload.maximum_size=32256
                                    uno.upload.maximum_data_size=2048
                                    uno.upload.speed=115200
                                    
                                    uno.bootloader.tool=avrdude
                                    uno.bootloader.low_fuses=0xFF
                                    uno.bootloader.high_fuses=0xDE
                                    uno.bootloader.extended_fuses=0x05
                                    uno.bootloader.unlock_bits=0x3F
                                    uno.bootloader.lock_bits=0x0F
                                    uno.bootloader.file=optiboot/optiboot_atmega328.hex
                                    
                                    uno.build.mcu=atmega328p
                                    uno.build.f_cpu=16000000L
                                    uno.build.board=AVR_UNO
                                    uno.build.core=arduino
                                    uno.build.variant=standard
                                    
                                    ##############################################################
                                    
                                    diecimila.name=Arduino Duemilanove or Diecimila
                                    
                                    diecimila.upload.tool=avrdude
                                    diecimila.upload.protocol=arduino
                                    
                                    diecimila.bootloader.tool=avrdude
                                    diecimila.bootloader.low_fuses=0xFF
                                    diecimila.bootloader.unlock_bits=0x3F
                                    diecimila.bootloader.lock_bits=0x0F
                                    
                                    diecimila.build.f_cpu=16000000L
                                    diecimila.build.board=AVR_DUEMILANOVE
                                    diecimila.build.core=arduino
                                    diecimila.build.variant=standard
                                    
                                    ## Arduino Duemilanove or Diecimila w/ ATmega328
                                    ## ---------------------------------------------
                                    diecimila.menu.cpu.atmega328=ATmega328
                                    
                                    diecimila.menu.cpu.atmega328.upload.maximum_size=30720
                                    diecimila.menu.cpu.atmega328.upload.maximum_data_size=2048
                                    diecimila.menu.cpu.atmega328.upload.speed=57600
                                    
                                    diecimila.menu.cpu.atmega328.bootloader.high_fuses=0xDA
                                    diecimila.menu.cpu.atmega328.bootloader.extended_fuses=0x05
                                    diecimila.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
                                    
                                    diecimila.menu.cpu.atmega328.build.mcu=atmega328p
                                    
                                    ## Arduino Duemilanove or Diecimila w/ ATmega168
                                    ## ---------------------------------------------
                                    diecimila.menu.cpu.atmega168=ATmega168
                                    
                                    diecimila.menu.cpu.atmega168.upload.maximum_size=14336
                                    diecimila.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    diecimila.menu.cpu.atmega168.upload.speed=19200
                                    
                                    diecimila.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    diecimila.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    diecimila.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex
                                    
                                    diecimila.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ##############################################################
                                    
                                    nano.name=Arduino Nano
                                    
                                    nano.upload.tool=avrdude
                                    nano.upload.protocol=arduino
                                    
                                    nano.bootloader.tool=avrdude
                                    nano.bootloader.unlock_bits=0x3F
                                    nano.bootloader.lock_bits=0x0F
                                    
                                    nano.build.f_cpu=16000000L
                                    nano.build.board=AVR_NANO
                                    nano.build.core=arduino
                                    nano.build.variant=eightanaloginputs
                                    
                                    ## Arduino Nano w/ ATmega328
                                    ## -------------------------
                                    nano.menu.cpu.atmega328=ATmega328
                                    
                                    nano.menu.cpu.atmega328.upload.maximum_size=30720
                                    nano.menu.cpu.atmega328.upload.maximum_data_size=2048
                                    nano.menu.cpu.atmega328.upload.speed=57600
                                    
                                    nano.menu.cpu.atmega328.bootloader.low_fuses=0xFF
                                    nano.menu.cpu.atmega328.bootloader.high_fuses=0xDA
                                    nano.menu.cpu.atmega328.bootloader.extended_fuses=0x05
                                    nano.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
                                    
                                    nano.menu.cpu.atmega328.build.mcu=atmega328p
                                    
                                    ## Arduino Nano w/ ATmega168
                                    ## -------------------------
                                    nano.menu.cpu.atmega168=ATmega168
                                    
                                    nano.menu.cpu.atmega168.upload.maximum_size=14336
                                    nano.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    nano.menu.cpu.atmega168.upload.speed=19200
                                    
                                    nano.menu.cpu.atmega168.bootloader.low_fuses=0xff
                                    nano.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    nano.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    nano.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex
                                    
                                    nano.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ##############################################################
                                    
                                    mega.name=Arduino/Genuino Mega or Mega 2560
                                    
                                    mega.vid.0=0x2341
                                    mega.pid.0=0x0010
                                    mega.vid.1=0x2341
                                    mega.pid.1=0x0042
                                    mega.vid.2=0x2A03
                                    mega.pid.2=0x0010
                                    mega.vid.3=0x2A03
                                    mega.pid.3=0x0042
                                    mega.vid.4=0x2341
                                    mega.pid.4=0x0210
                                    mega.vid.5=0x2341
                                    mega.pid.5=0x0242
                                    
                                    mega.upload.tool=avrdude
                                    mega.upload.maximum_data_size=8192
                                    
                                    mega.bootloader.tool=avrdude
                                    mega.bootloader.low_fuses=0xFF
                                    mega.bootloader.unlock_bits=0x3F
                                    mega.bootloader.lock_bits=0x0F
                                    
                                    mega.build.f_cpu=16000000L
                                    mega.build.core=arduino
                                    mega.build.variant=mega
                                    # default board may be overridden by the cpu menu
                                    mega.build.board=AVR_MEGA2560
                                    
                                    ## Arduino/Genuino Mega w/ ATmega2560
                                    ## -------------------------
                                    mega.menu.cpu.atmega2560=ATmega2560 (Mega 2560)
                                    
                                    mega.menu.cpu.atmega2560.upload.protocol=wiring
                                    mega.menu.cpu.atmega2560.upload.maximum_size=253952
                                    mega.menu.cpu.atmega2560.upload.speed=115200
                                    
                                    mega.menu.cpu.atmega2560.bootloader.high_fuses=0xD8
                                    mega.menu.cpu.atmega2560.bootloader.extended_fuses=0xFD
                                    mega.menu.cpu.atmega2560.bootloader.file=stk500v2/stk500boot_v2_mega2560.hex
                                    
                                    mega.menu.cpu.atmega2560.build.mcu=atmega2560
                                    mega.menu.cpu.atmega2560.build.board=AVR_MEGA2560
                                    
                                    ## Arduino Mega w/ ATmega1280
                                    ## -------------------------
                                    mega.menu.cpu.atmega1280=ATmega1280
                                    
                                    mega.menu.cpu.atmega1280.upload.protocol=arduino
                                    mega.menu.cpu.atmega1280.upload.maximum_size=126976
                                    mega.menu.cpu.atmega1280.upload.speed=57600
                                    
                                    mega.menu.cpu.atmega1280.bootloader.high_fuses=0xDA
                                    mega.menu.cpu.atmega1280.bootloader.extended_fuses=0xF5
                                    mega.menu.cpu.atmega1280.bootloader.file=atmega/ATmegaBOOT_168_atmega1280.hex
                                    
                                    mega.menu.cpu.atmega1280.build.mcu=atmega1280
                                    mega.menu.cpu.atmega1280.build.board=AVR_MEGA
                                    
                                    ##############################################################
                                    
                                    megaADK.name=Arduino Mega ADK
                                    
                                    megaADK.vid.0=0x2341
                                    megaADK.pid.0=0x003f
                                    megaADK.vid.1=0x2341
                                    megaADK.pid.1=0x0044
                                    megaADK.vid.2=0x2A03
                                    megaADK.pid.2=0x003f
                                    megaADK.vid.3=0x2A03
                                    megaADK.pid.3=0x0044
                                    
                                    megaADK.upload.tool=avrdude
                                    megaADK.upload.protocol=wiring
                                    megaADK.upload.maximum_size=253952
                                    megaADK.upload.maximum_data_size=8192
                                    megaADK.upload.speed=115200
                                    
                                    megaADK.bootloader.tool=avrdude
                                    megaADK.bootloader.low_fuses=0xFF
                                    megaADK.bootloader.high_fuses=0xD8
                                    megaADK.bootloader.extended_fuses=0xFD
                                    megaADK.bootloader.file=stk500v2/stk500boot_v2_mega2560.hex
                                    megaADK.bootloader.unlock_bits=0x3F
                                    megaADK.bootloader.lock_bits=0x0F
                                    
                                    megaADK.build.mcu=atmega2560
                                    megaADK.build.f_cpu=16000000L
                                    megaADK.build.board=AVR_ADK
                                    megaADK.build.core=arduino
                                    megaADK.build.variant=mega
                                    
                                    ##############################################################
                                    
                                    leonardo.name=Arduino Leonardo
                                    leonardo.vid.0=0x2341
                                    leonardo.pid.0=0x0036
                                    leonardo.vid.1=0x2341
                                    leonardo.pid.1=0x8036
                                    leonardo.vid.2=0x2A03
                                    leonardo.pid.2=0x0036
                                    leonardo.vid.3=0x2A03
                                    leonardo.pid.3=0x8036
                                    
                                    leonardo.upload.tool=avrdude
                                    leonardo.upload.protocol=avr109
                                    leonardo.upload.maximum_size=28672
                                    leonardo.upload.maximum_data_size=2560
                                    leonardo.upload.speed=57600
                                    leonardo.upload.disable_flushing=true
                                    leonardo.upload.use_1200bps_touch=true
                                    leonardo.upload.wait_for_upload_port=true
                                    
                                    leonardo.bootloader.tool=avrdude
                                    leonardo.bootloader.low_fuses=0xff
                                    leonardo.bootloader.high_fuses=0xd8
                                    leonardo.bootloader.extended_fuses=0xcb
                                    leonardo.bootloader.file=caterina/Caterina-Leonardo.hex
                                    leonardo.bootloader.unlock_bits=0x3F
                                    leonardo.bootloader.lock_bits=0x2F
                                    
                                    leonardo.build.mcu=atmega32u4
                                    leonardo.build.f_cpu=16000000L
                                    leonardo.build.vid=0x2341
                                    leonardo.build.pid=0x8036
                                    leonardo.build.usb_product="Arduino Leonardo"
                                    leonardo.build.board=AVR_LEONARDO
                                    leonardo.build.core=arduino
                                    leonardo.build.variant=leonardo
                                    leonardo.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    micro.name=Arduino/Genuino Micro
                                    
                                    micro.vid.0=0x2341
                                    micro.pid.0=0x0037
                                    micro.vid.1=0x2341
                                    micro.pid.1=0x8037
                                    micro.vid.2=0x2A03
                                    micro.pid.2=0x0037
                                    micro.vid.3=0x2A03
                                    micro.pid.3=0x8037
                                    
                                    micro.vid.4=0x2341
                                    micro.pid.4=0x0237
                                    # If the board is a 2341:0237 use 2341:8237 for build and set
                                    # other parameters as well
                                    micro.vid.4.build.vid=0x2341
                                    micro.vid.4.build.pid=0x8237
                                    micro.vid.4.build.usb_product="Genuino Micro"
                                    micro.vid.4.bootloader.file=caterina/Caterina-Genuino-Micro.hex
                                    
                                    micro.vid.5=0x2341
                                    micro.pid.5=0x8237
                                    # If the board is a 2341:8237 use 2341:8237 for build and set
                                    # other paramters as well
                                    micro.vid.5.build.vid=0x2341
                                    micro.vid.5.build.pid=0x8237
                                    micro.vid.5.build.usb_product="Genuino Micro"
                                    micro.vid.5.bootloader.file=caterina/Caterina-Genuino-Micro.hex
                                    
                                    micro.upload.tool=avrdude
                                    micro.upload.protocol=avr109
                                    micro.upload.maximum_size=28672
                                    micro.upload.maximum_data_size=2560
                                    micro.upload.speed=57600
                                    micro.upload.disable_flushing=true
                                    micro.upload.use_1200bps_touch=true
                                    micro.upload.wait_for_upload_port=true
                                    
                                    micro.bootloader.tool=avrdude
                                    micro.bootloader.low_fuses=0xff
                                    micro.bootloader.high_fuses=0xd8
                                    micro.bootloader.extended_fuses=0xcb
                                    micro.bootloader.file=caterina/Caterina-Micro.hex
                                    micro.bootloader.unlock_bits=0x3F
                                    micro.bootloader.lock_bits=0x2F
                                    
                                    micro.build.mcu=atmega32u4
                                    micro.build.f_cpu=16000000L
                                    micro.build.vid=0x2341
                                    micro.build.pid=0x8037
                                    micro.build.usb_product="Arduino Micro"
                                    micro.build.board=AVR_MICRO
                                    micro.build.core=arduino
                                    micro.build.variant=micro
                                    micro.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    esplora.name=Arduino Esplora
                                    esplora.vid.0=0x2341
                                    esplora.pid.0=0x003C
                                    esplora.vid.1=0x2341
                                    esplora.pid.1=0x803C
                                    esplora.vid.2=0x2A03
                                    esplora.pid.2=0x003C
                                    esplora.vid.3=0x2A03
                                    esplora.pid.3=0x803C
                                    
                                    esplora.upload.tool=avrdude
                                    esplora.upload.protocol=avr109
                                    esplora.upload.maximum_size=28672
                                    esplora.upload.maximum_data_size=2560
                                    esplora.upload.speed=57600
                                    esplora.upload.disable_flushing=true
                                    esplora.upload.use_1200bps_touch=true
                                    esplora.upload.wait_for_upload_port=true
                                    
                                    esplora.bootloader.tool=avrdude
                                    esplora.bootloader.low_fuses=0xff
                                    esplora.bootloader.high_fuses=0xd8
                                    esplora.bootloader.extended_fuses=0xcb
                                    esplora.bootloader.file=caterina/Caterina-Esplora.hex
                                    esplora.bootloader.unlock_bits=0x3F
                                    esplora.bootloader.lock_bits=0x2F
                                    
                                    esplora.build.mcu=atmega32u4
                                    esplora.build.f_cpu=16000000L
                                    esplora.build.vid=0x2341
                                    esplora.build.pid=0x803c
                                    esplora.build.usb_product="Arduino Esplora"
                                    esplora.build.board=AVR_ESPLORA
                                    esplora.build.core=arduino
                                    esplora.build.variant=leonardo
                                    esplora.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    mini.name=Arduino Mini
                                    
                                    mini.upload.tool=avrdude
                                    mini.upload.protocol=arduino
                                    
                                    mini.bootloader.tool=avrdude
                                    mini.bootloader.low_fuses=0xff
                                    mini.bootloader.unlock_bits=0x3F
                                    mini.bootloader.lock_bits=0x0F
                                    
                                    mini.build.f_cpu=16000000L
                                    mini.build.board=AVR_MINI
                                    mini.build.core=arduino
                                    mini.build.variant=eightanaloginputs
                                    
                                    ## Arduino Mini w/ ATmega328
                                    ## -------------------------
                                    mini.menu.cpu.atmega328=ATmega328
                                    
                                    mini.menu.cpu.atmega328.upload.maximum_size=28672
                                    mini.menu.cpu.atmega328.upload.maximum_data_size=2048
                                    mini.menu.cpu.atmega328.upload.speed=115200
                                    
                                    mini.menu.cpu.atmega328.bootloader.high_fuses=0xd8
                                    mini.menu.cpu.atmega328.bootloader.extended_fuses=0x05
                                    mini.menu.cpu.atmega328.bootloader.file=optiboot/optiboot_atmega328-Mini.hex
                                    
                                    mini.menu.cpu.atmega328.build.mcu=atmega328p
                                    
                                    ## Arduino Mini w/ ATmega168
                                    ## -------------------------
                                    mini.menu.cpu.atmega168=ATmega168
                                    
                                    mini.menu.cpu.atmega168.upload.maximum_size=14336
                                    mini.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    mini.menu.cpu.atmega168.upload.speed=19200
                                    
                                    mini.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    mini.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    mini.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_ng.hex
                                    
                                    mini.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ##############################################################
                                    
                                    ethernet.name=Arduino Ethernet
                                    
                                    ethernet.upload.tool=avrdude
                                    ethernet.upload.protocol=arduino
                                    ethernet.upload.maximum_size=32256
                                    ethernet.upload.maximum_data_size=2048
                                    ethernet.upload.speed=115200
                                    
                                    ethernet.bootloader.tool=avrdude
                                    ethernet.bootloader.low_fuses=0xff
                                    ethernet.bootloader.high_fuses=0xde
                                    ethernet.bootloader.extended_fuses=0x05
                                    ethernet.bootloader.file=optiboot/optiboot_atmega328.hex
                                    ethernet.bootloader.unlock_bits=0x3F
                                    ethernet.bootloader.lock_bits=0x0F
                                    
                                    ethernet.build.variant=ethernet
                                    ethernet.build.mcu=atmega328p
                                    ethernet.build.f_cpu=16000000L
                                    ethernet.build.board=AVR_ETHERNET
                                    ethernet.build.core=arduino
                                    
                                    ##############################################################
                                    
                                    fio.name=Arduino Fio
                                    
                                    fio.upload.tool=avrdude
                                    fio.upload.protocol=arduino
                                    fio.upload.maximum_size=30720
                                    fio.upload.maximum_data_size=2048
                                    fio.upload.speed=57600
                                    
                                    fio.bootloader.tool=avrdude
                                    fio.bootloader.low_fuses=0xFF
                                    fio.bootloader.high_fuses=0xDA
                                    fio.bootloader.extended_fuses=0x05
                                    fio.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                                    fio.bootloader.unlock_bits=0x3F
                                    fio.bootloader.lock_bits=0x0F
                                    
                                    fio.build.mcu=atmega328p
                                    fio.build.f_cpu=8000000L
                                    fio.build.board=AVR_FIO
                                    fio.build.core=arduino
                                    fio.build.variant=eightanaloginputs
                                    
                                    ##############################################################
                                    
                                    bt.name=Arduino BT
                                    
                                    bt.upload.tool=avrdude
                                    bt.upload.protocol=arduino
                                    bt.upload.speed=19200
                                    bt.upload.disable_flushing=true
                                    
                                    bt.bootloader.tool=avrdude
                                    bt.bootloader.low_fuses=0xff
                                    bt.bootloader.unlock_bits=0x3F
                                    bt.bootloader.lock_bits=0x0F
                                    
                                    bt.build.f_cpu=16000000L
                                    bt.build.board=AVR_BT
                                    bt.build.core=arduino
                                    bt.build.variant=eightanaloginputs
                                    
                                    ## Arduino BT w/ ATmega328
                                    ## -----------------------
                                    bt.menu.cpu.atmega328=ATmega328
                                    bt.menu.cpu.atmega328.upload.maximum_size=28672
                                    bt.menu.cpu.atmega328.upload.maximum_data_size=2048
                                    
                                    bt.menu.cpu.atmega328.bootloader.high_fuses=0xd8
                                    bt.menu.cpu.atmega328.bootloader.extended_fuses=0x05
                                    bt.menu.cpu.atmega328.bootloader.file=bt/ATmegaBOOT_168_atmega328_bt.hex
                                    
                                    bt.menu.cpu.atmega328.build.mcu=atmega328p
                                    
                                    ## Arduino BT w/ ATmega168
                                    ## -----------------------
                                    bt.menu.cpu.atmega168=ATmega168
                                    bt.menu.cpu.atmega168.upload.maximum_size=14336
                                    bt.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    
                                    bt.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    bt.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    bt.menu.cpu.atmega168.bootloader.file=bt/ATmegaBOOT_168.hex
                                    
                                    bt.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ##############################################################
                                    
                                    LilyPadUSB.name=LilyPad Arduino USB
                                    LilyPadUSB.vid.0=0x1B4F
                                    LilyPadUSB.pid.0=0x9207
                                    LilyPadUSB.vid.1=0x1B4F
                                    LilyPadUSB.pid.1=0x9208
                                    
                                    LilyPadUSB.upload.tool=avrdude
                                    LilyPadUSB.upload.protocol=avr109
                                    LilyPadUSB.upload.maximum_size=28672
                                    LilyPadUSB.upload.maximum_data_size=2560
                                    LilyPadUSB.upload.speed=57600
                                    LilyPadUSB.upload.disable_flushing=true
                                    LilyPadUSB.upload.use_1200bps_touch=true
                                    LilyPadUSB.upload.wait_for_upload_port=true
                                    
                                    LilyPadUSB.bootloader.tool=avrdude
                                    LilyPadUSB.bootloader.low_fuses=0xff
                                    LilyPadUSB.bootloader.high_fuses=0xd8
                                    LilyPadUSB.bootloader.extended_fuses=0xce
                                    LilyPadUSB.bootloader.file=caterina-LilyPadUSB/Caterina-LilyPadUSB.hex
                                    LilyPadUSB.bootloader.unlock_bits=0x3F
                                    LilyPadUSB.bootloader.lock_bits=0x2F
                                    
                                    LilyPadUSB.build.mcu=atmega32u4
                                    LilyPadUSB.build.f_cpu=8000000L
                                    LilyPadUSB.build.vid=0x1B4F
                                    LilyPadUSB.build.pid=0x9208
                                    LilyPadUSB.build.usb_product="LilyPad USB"
                                    LilyPadUSB.build.board=AVR_LILYPAD_USB
                                    LilyPadUSB.build.core=arduino
                                    LilyPadUSB.build.variant=leonardo
                                    LilyPadUSB.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    lilypad.name=LilyPad Arduino
                                    
                                    lilypad.upload.tool=avrdude
                                    lilypad.upload.protocol=arduino
                                    
                                    lilypad.bootloader.tool=avrdude
                                    lilypad.bootloader.unlock_bits=0x3F
                                    lilypad.bootloader.lock_bits=0x0F
                                    
                                    lilypad.build.f_cpu=8000000L
                                    lilypad.build.board=AVR_LILYPAD
                                    lilypad.build.core=arduino
                                    lilypad.build.variant=standard
                                    
                                    ## LilyPad Arduino w/ ATmega328
                                    ## ----------------------------
                                    lilypad.menu.cpu.atmega328=ATmega328
                                    
                                    lilypad.menu.cpu.atmega328.upload.maximum_size=30720
                                    lilypad.menu.cpu.atmega328.upload.maximum_data_size=2048
                                    lilypad.menu.cpu.atmega328.upload.speed=57600
                                    
                                    lilypad.menu.cpu.atmega328.bootloader.low_fuses=0xFF
                                    lilypad.menu.cpu.atmega328.bootloader.high_fuses=0xDA
                                    lilypad.menu.cpu.atmega328.bootloader.extended_fuses=0x05
                                    lilypad.menu.cpu.atmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                                    
                                    lilypad.menu.cpu.atmega328.build.mcu=atmega328p
                                    
                                    ## LilyPad Arduino w/ ATmega168
                                    ## ----------------------------
                                    lilypad.menu.cpu.atmega168=ATmega168
                                    
                                    lilypad.menu.cpu.atmega168.upload.maximum_size=14336
                                    lilypad.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    lilypad.menu.cpu.atmega168.upload.speed=19200
                                    
                                    lilypad.menu.cpu.atmega168.bootloader.low_fuses=0xe2
                                    lilypad.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    lilypad.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    lilypad.menu.cpu.atmega168.bootloader.file=lilypad/LilyPadBOOT_168.hex
                                    
                                    lilypad.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ##############################################################
                                    
                                    pro.name=Arduino Pro or Pro Mini
                                    
                                    pro.upload.tool=avrdude
                                    pro.upload.protocol=arduino
                                    
                                    pro.bootloader.tool=avrdude
                                    pro.bootloader.unlock_bits=0x3F
                                    pro.bootloader.lock_bits=0x0F
                                    
                                    pro.build.board=AVR_PRO
                                    pro.build.core=arduino
                                    pro.build.variant=eightanaloginputs
                                    
                                    ## Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328
                                    ## -------------------------------------------------
                                    pro.menu.cpu.16MHzatmega328=ATmega328 (5V, 16 MHz)
                                    
                                    pro.menu.cpu.16MHzatmega328.upload.maximum_size=30720
                                    pro.menu.cpu.16MHzatmega328.upload.maximum_data_size=2048
                                    pro.menu.cpu.16MHzatmega328.upload.speed=57600
                                    
                                    pro.menu.cpu.16MHzatmega328.bootloader.low_fuses=0xFF
                                    pro.menu.cpu.16MHzatmega328.bootloader.high_fuses=0xDA
                                    pro.menu.cpu.16MHzatmega328.bootloader.extended_fuses=0x05
                                    pro.menu.cpu.16MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328.hex
                                    
                                    pro.menu.cpu.16MHzatmega328.build.mcu=atmega328p
                                    pro.menu.cpu.16MHzatmega328.build.f_cpu=16000000L
                                    
                                    ## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
                                    ## --------------------------------------------------
                                    pro.menu.cpu.8MHzatmega328=ATmega328 (3.3V, 8 MHz)
                                    
                                    pro.menu.cpu.8MHzatmega328.upload.maximum_size=30720
                                    pro.menu.cpu.8MHzatmega328.upload.maximum_data_size=2048
                                    pro.menu.cpu.8MHzatmega328.upload.speed=57600
                                    
                                    pro.menu.cpu.8MHzatmega328.bootloader.low_fuses=0xFF
                                    pro.menu.cpu.8MHzatmega328.bootloader.high_fuses=0xDA
                                    pro.menu.cpu.8MHzatmega328.bootloader.extended_fuses=0x05
                                    pro.menu.cpu.8MHzatmega328.bootloader.file=atmega/ATmegaBOOT_168_atmega328_pro_8MHz.hex
                                    
                                    pro.menu.cpu.8MHzatmega328.build.mcu=atmega328p
                                    pro.menu.cpu.8MHzatmega328.build.f_cpu=8000000L
                                    
                                    ## Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168
                                    ## -------------------------------------------------
                                    pro.menu.cpu.16MHzatmega168=ATmega168 (5V, 16 MHz)
                                    
                                    pro.menu.cpu.16MHzatmega168.upload.maximum_size=14336
                                    pro.menu.cpu.16MHzatmega168.upload.maximum_data_size=1024
                                    pro.menu.cpu.16MHzatmega168.upload.speed=19200
                                    
                                    pro.menu.cpu.16MHzatmega168.bootloader.low_fuses=0xff
                                    pro.menu.cpu.16MHzatmega168.bootloader.high_fuses=0xdd
                                    pro.menu.cpu.16MHzatmega168.bootloader.extended_fuses=0x00
                                    pro.menu.cpu.16MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_diecimila.hex
                                    
                                    pro.menu.cpu.16MHzatmega168.build.mcu=atmega168
                                    pro.menu.cpu.16MHzatmega168.build.f_cpu=16000000L
                                    
                                    ## Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
                                    ## --------------------------------------------------
                                    pro.menu.cpu.8MHzatmega168=ATmega168 (3.3V, 8 MHz)
                                    
                                    pro.menu.cpu.8MHzatmega168.upload.maximum_size=14336
                                    pro.menu.cpu.8MHzatmega168.upload.maximum_data_size=1024
                                    pro.menu.cpu.8MHzatmega168.upload.speed=19200
                                    
                                    pro.menu.cpu.8MHzatmega168.bootloader.low_fuses=0xc6
                                    pro.menu.cpu.8MHzatmega168.bootloader.high_fuses=0xdd
                                    pro.menu.cpu.8MHzatmega168.bootloader.extended_fuses=0x00
                                    pro.menu.cpu.8MHzatmega168.bootloader.file=atmega/ATmegaBOOT_168_pro_8MHz.hex
                                    
                                    pro.menu.cpu.8MHzatmega168.build.mcu=atmega168
                                    pro.menu.cpu.8MHzatmega168.build.f_cpu=8000000L
                                    
                                    ##############################################################
                                    
                                    atmegang.name=Arduino NG or older
                                    
                                    atmegang.upload.tool=avrdude
                                    atmegang.upload.protocol=arduino
                                    atmegang.upload.speed=19200
                                    
                                    atmegang.bootloader.tool=avrdude
                                    atmegang.bootloader.unlock_bits=0x3F
                                    atmegang.bootloader.lock_bits=0x0F
                                    
                                    atmegang.build.mcu=atmegang
                                    atmegang.build.f_cpu=16000000L
                                    atmegang.build.board=AVR_NG
                                    atmegang.build.core=arduino
                                    atmegang.build.variant=standard
                                    
                                    ## Arduino NG or older w/ ATmega168
                                    ## --------------------------------
                                    atmegang.menu.cpu.atmega168=ATmega168
                                    
                                    atmegang.menu.cpu.atmega168.upload.maximum_size=14336
                                    atmegang.menu.cpu.atmega168.upload.maximum_data_size=1024
                                    
                                    atmegang.menu.cpu.atmega168.bootloader.low_fuses=0xff
                                    atmegang.menu.cpu.atmega168.bootloader.high_fuses=0xdd
                                    atmegang.menu.cpu.atmega168.bootloader.extended_fuses=0x00
                                    atmegang.menu.cpu.atmega168.bootloader.file=atmega/ATmegaBOOT_168_ng.hex
                                    
                                    atmegang.menu.cpu.atmega168.build.mcu=atmega168
                                    
                                    ## Arduino NG or older w/ ATmega8
                                    ## ------------------------------
                                    atmegang.menu.cpu.atmega8=ATmega8
                                    
                                    atmegang.menu.cpu.atmega8.upload.maximum_size=7168
                                    atmegang.menu.cpu.atmega8.upload.maximum_data_size=1024
                                    
                                    atmegang.menu.cpu.atmega8.bootloader.low_fuses=0xdf
                                    atmegang.menu.cpu.atmega8.bootloader.high_fuses=0xca
                                    atmegang.menu.cpu.atmega8.bootloader.file=atmega8/ATmegaBOOT-prod-firmware-2009-11-07.hex
                                    
                                    atmegang.menu.cpu.atmega8.build.mcu=atmega8
                                    
                                    ##############################################################
                                    
                                    robotControl.name=Arduino Robot Control
                                    robotControl.vid.0=0x2341
                                    robotControl.pid.0=0x0038
                                    robotControl.vid.1=0x2341
                                    robotControl.pid.1=0x8038
                                    robotControl.vid.2=0x2A03
                                    robotControl.pid.2=0x0038
                                    robotControl.vid.3=0x2A03
                                    robotControl.pid.3=0x8038
                                    
                                    robotControl.upload.tool=avrdude
                                    robotControl.upload.protocol=avr109
                                    robotControl.upload.maximum_size=28672
                                    robotControl.upload.maximum_data_size=2560
                                    robotControl.upload.speed=57600
                                    robotControl.upload.disable_flushing=true
                                    robotControl.upload.use_1200bps_touch=true
                                    robotControl.upload.wait_for_upload_port=true
                                    
                                    robotControl.bootloader.tool=avrdude
                                    robotControl.bootloader.low_fuses=0xff
                                    robotControl.bootloader.high_fuses=0xd8
                                    robotControl.bootloader.extended_fuses=0xcb
                                    robotControl.bootloader.file=caterina-Arduino_Robot/Caterina-Robot-Control.hex
                                    robotControl.bootloader.unlock_bits=0x3F
                                    robotControl.bootloader.lock_bits=0x2F
                                    
                                    robotControl.build.mcu=atmega32u4
                                    robotControl.build.f_cpu=16000000L
                                    robotControl.build.vid=0x2341
                                    robotControl.build.pid=0x8038
                                    robotControl.build.usb_product="Robot Control"
                                    robotControl.build.board=AVR_ROBOT_CONTROL
                                    robotControl.build.core=arduino
                                    robotControl.build.variant=robot_control
                                    robotControl.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    robotMotor.name=Arduino Robot Motor
                                    robotMotor.vid.0=0x2341
                                    robotMotor.pid.0=0x0039
                                    robotMotor.vid.1=0x2341
                                    robotMotor.pid.1=0x8039
                                    robotMotor.vid.2=0x2A03
                                    robotMotor.pid.2=0x0039
                                    robotMotor.vid.3=0x2A03
                                    robotMotor.pid.3=0x8039
                                    
                                    robotMotor.upload.tool=avrdude
                                    robotMotor.upload.protocol=avr109
                                    robotMotor.upload.maximum_size=28672
                                    robotMotor.upload.maximum_data_size=2560
                                    robotMotor.upload.speed=57600
                                    robotMotor.upload.disable_flushing=true
                                    robotMotor.upload.use_1200bps_touch=true
                                    robotMotor.upload.wait_for_upload_port=true
                                    
                                    robotMotor.bootloader.tool=avrdude
                                    robotMotor.bootloader.low_fuses=0xff
                                    robotMotor.bootloader.high_fuses=0xd8
                                    robotMotor.bootloader.extended_fuses=0xcb
                                    robotMotor.bootloader.file=caterina-Arduino_Robot/Caterina-Robot-Motor.hex
                                    robotMotor.bootloader.unlock_bits=0x3F
                                    robotMotor.bootloader.lock_bits=0x2F
                                    
                                    robotMotor.build.mcu=atmega32u4
                                    robotMotor.build.f_cpu=16000000L
                                    robotMotor.build.vid=0x2341
                                    robotMotor.build.pid=0x8039
                                    robotMotor.build.usb_product="Robot Motor"
                                    robotMotor.build.board=AVR_ROBOT_MOTOR
                                    robotMotor.build.core=arduino
                                    robotMotor.build.variant=robot_motor
                                    robotMotor.build.extra_flags={build.usb_flags}
                                    
                                    ##############################################################
                                    
                                    gemma.vid.0=0x2341
                                    gemma.pid.0=0x0c9f
                                    
                                    gemma.name=Arduino Gemma
                                    
                                    gemma.bootloader.low_fuses=0xF1
                                    gemma.bootloader.high_fuses=0xD5
                                    gemma.bootloader.extended_fuses=0xFE
                                    gemma.bootloader.tool=avrdude
                                    gemma.bootloader.lock_bits=
                                    gemma.bootloader.unlock_bits=
                                    gemma.bootloader.file=gemma/gemma_v1.hex
                                    
                                    gemma.build.mcu=attiny85
                                    gemma.build.f_cpu=8000000L
                                    gemma.build.core=arduino
                                    gemma.build.variant=gemma
                                    gemma.build.board=AVR_GEMMA
                                    
                                    gemma.upload.tool=avrdude
                                    gemma.upload.maximum_size=5310
                                    
                                    menu.cpu=Processor
                                    
                                    ######################################
                                    ## Sensebender Micro
                                    
                                    MysensorsMicro.name=Sensebender Micro
                                    
                                    MysensorsMicro.upload.tool=arduino:avrdude
                                    MysensorsMicro.upload.protocol=arduino
                                    MysensorsMicro.upload.maximum_size=30720
                                    MysensorsMicro.upload.maximum_data_size=2048
                                    MysensorsMicro.upload.speed=57600
                                    
                                    MysensorsMicro.bootloader.tool=arduino:avrdude
                                    MysensorsMicro.bootloader.unlock_bits=0x3F
                                    MysensorsMicro.bootloader.lock_bits=0x0F
                                    MysensorsMicro.bootloader.low_fuses=0xE2
                                    MysensorsMicro.bootloader.high_fuses=0xD2
                                    MysensorsMicro.bootloader.extended_fuses=0x06
                                    MysensorsMicro.bootloader.file=DualOptiboot/optiboot_atmega328_pro_8MHz.hex
                                    
                                    MysensorsMicro.build.board=AVR_MICRO8
                                    MysensorsMicro.build.core=arduino:arduino
                                    MysensorsMicro.build.variant=micro
                                    MysensorsMicro.build.mcu=atmega328p
                                    #MysensorsMicro.build.f_cpu=8000000L
                                    
                                    MysensorsMicro.menu.cpu.8Mhz=Atmega328 8Mhz
                                    MysensorsMicro.menu.cpu.8Mhz.build.f_cpu=8000000L 
                                    
                                    MysensorsMicro.menu.cpu.1Mhz=Atmega328 1Mhz
                                    MysensorsMicro.menu.cpu.1Mhz.build.f_cpu=1000000L
                                    

                                    I'm using a Mac if it is important.

                                    1 Reply Last reply
                                    0
                                    • A Offline
                                      A Offline
                                      alexeinz
                                      wrote on last edited by
                                      #450

                                      Is it possible to use the ftdi or isp vcc / gnd to connect a pir ?
                                      or do i need to source separate power and gnd for pir ?

                                      mqtt gw 1.4 /openhab / zwave

                                      1 Reply Last reply
                                      0
                                      • hekH Offline
                                        hekH Offline
                                        hek
                                        Admin
                                        wrote on last edited by
                                        #451

                                        @gloob
                                        Maybe a little late, but the Sensebender is now available to be downloaded directly in the IDE using board manager.
                                        https://github.com/mysensors/ArduinoBoards

                                        @alexeinz
                                        You can use the same power/ground plane (and any of the digital inputs). Also note that the pir might need to be modified to handle 3v3.
                                        https://forum.mysensors.org/topic/1088/battery-powered-pir

                                        A 1 Reply Last reply
                                        0
                                        • hekH hek

                                          @gloob
                                          Maybe a little late, but the Sensebender is now available to be downloaded directly in the IDE using board manager.
                                          https://github.com/mysensors/ArduinoBoards

                                          @alexeinz
                                          You can use the same power/ground plane (and any of the digital inputs). Also note that the pir might need to be modified to handle 3v3.
                                          https://forum.mysensors.org/topic/1088/battery-powered-pir

                                          A Offline
                                          A Offline
                                          alexeinz
                                          wrote on last edited by
                                          #452

                                          @hek ...so to clarify , I can use the VCC and Ground of the ISP portion to power the sensor?
                                          ( my pir already modded for 3.3 )

                                          mqtt gw 1.4 /openhab / zwave

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


                                          13

                                          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