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.
  • 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
                                        • hekH Offline
                                          hekH Offline
                                          hek
                                          Admin
                                          wrote on last edited by hek
                                          #453

                                          Yes, it doesn't matter. GND/VCC is the same no matter where you pull it on the board.

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


                                          7

                                          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