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. Hardware
  3. Minimal design thoughts

Minimal design thoughts

Scheduled Pinned Locked Moved Hardware
299 Posts 34 Posters 177.6k Views 17 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.
  • tbowmoT Offline
    tbowmoT Offline
    tbowmo
    Admin
    wrote on last edited by
    #228

    @Anticimex

    btw. the only painfull thing about the current layout, is handsoldering it :) it's a nightmare.. Almost regret that I used the new footprints for resistors / capacitors, as it makes things a lot more difficult.

    1 Reply Last reply
    0
    • tbowmoT tbowmo

      @Anticimex

      I don't solder any pinheaders for the serial port, just putting the pins from the ftdi module in the holes on the micro board, and then holding it in place. Done the same thing for the ISP port, but it's a bit more problematic. The last two boards that I have assembled, is with pins in the ISP port.

      I expect to have a "standard" bootloader in the boards (Together with a standard sketch for reading / reporting sensor values), when we receive them from China, so the ISP port is not necessary for the average user. only serial port for reprogramming (if not going for OTA).

      But it might be an option for a future module, to have better access to the headers. Also might go with the nrf24 smd modules. But that's another project at the moment :)

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

      @tbowmo Sure. But after a chat with @hek I believe you have dabbled with a bootloader that can flash in new FW from the external SPI flash. This is to me very interesting because that means we can deploy FW updates OTA using the MySensor library to flash the external flash, write some EEPROM byte to inform bootloader that new firmware is available, reboot to have the FW transferred by the bootloader and then boot the new FW. And this in turn means that we can transfer the new firmware signed, therefore support signed FOTA and THAT is very much interesting to me :)
      So for me, the ideal would be that the board was preflashed with that bootloader (patched to be triggered by MySensors logic if necessary). Then there would be no requirement to have any extra headers, as you can push whatever you want, and signing can be implemented without actually changing the bootloader (headers will probably be needed during development, but that could just as well be done on breadboard).

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

      hekH 1 Reply Last reply
      0
      • AnticimexA Anticimex

        @tbowmo Sure. But after a chat with @hek I believe you have dabbled with a bootloader that can flash in new FW from the external SPI flash. This is to me very interesting because that means we can deploy FW updates OTA using the MySensor library to flash the external flash, write some EEPROM byte to inform bootloader that new firmware is available, reboot to have the FW transferred by the bootloader and then boot the new FW. And this in turn means that we can transfer the new firmware signed, therefore support signed FOTA and THAT is very much interesting to me :)
        So for me, the ideal would be that the board was preflashed with that bootloader (patched to be triggered by MySensors logic if necessary). Then there would be no requirement to have any extra headers, as you can push whatever you want, and signing can be implemented without actually changing the bootloader (headers will probably be needed during development, but that could just as well be done on breadboard).

        hekH Offline
        hekH Offline
        hek
        Admin
        wrote on last edited by
        #230

        @Anticimex

        But you would still need to set the keys...

        AnticimexA 1 Reply Last reply
        0
        • hekH hek

          @Anticimex

          But you would still need to set the keys...

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

          @hek Well, not really. If you like, you can FOTA down the personalizer with your PSK and execute it by remote on a "virgin" unit Then FOTA down your application FW. It is only when your application tells the GW that it require signing, signing actually kicks in.

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

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

            @Anticimex

            Yes, I have a bootloader, that copies external flash, to internal. It's also verified as working, with a local firmware update where I downloaded a sketch to the micro, which put another sketch into the external flash, so no OTA in the verification phase. I used DualOptiboot from lowpowerlabs (There is a copy on my github account.)

            The bootloader looks for a signature in the first couple of bytes of the external flash, if present it copies data and erases the external flash.

            I just don't know what direction things are going at the moment, as there also exists the standard MySensors bootloader. If we use dualoptiboot, we need to have FOTA code in the default application that is loaded into the device, before shipment from china.

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

              @hek, @Anticimex

              if we are going to use the external flash for OTA, then it should be included in the library? So the libraray handles the OTA packets, putting data into the external flash etc.

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

                @tbowmo
                Yes, that would be the most reliable option to allow updates un normal running mode.

                I discussed this with @Anticimex earlier today and how to combine it with signing without totally flood the network with nonce requests etc.

                Neither of us have the flash memory though ;)

                tbowmoT 2 Replies Last reply
                0
                • tbowmoT tbowmo

                  @hek, @Anticimex

                  if we are going to use the external flash for OTA, then it should be included in the library? So the libraray handles the OTA packets, putting data into the external flash etc.

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

                  @tbowmo Yep. The way I understand how things work, I suggest the following:
                  Library initiates OTA transfer stream and transmit all FW for storage in external flash. Both sender and transmitter calculates some checksum of the FW and the checksum is sent finally, as a separate command.
                  The stream data is sent with a special command that bypasses signature. The checksum is sent with a type that is included with other signed types (currently only the singing handshake commands are excluded from signing).
                  That way, if receiver require it, FOTA will also be signed since the checksum packet is signed.
                  If the receiver accepts the signature (and the checksum is valid) receiver writes the bootloader specific indicators and restarts, so bootloader can transfer the received firmware to PROGMEM, and "Bob's your uncle". Secure FOTA to your difficult-to-reach node somewhere in the house :)

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

                  1 Reply Last reply
                  0
                  • hekH hek

                    @tbowmo
                    Yes, that would be the most reliable option to allow updates un normal running mode.

                    I discussed this with @Anticimex earlier today and how to combine it with signing without totally flood the network with nonce requests etc.

                    Neither of us have the flash memory though ;)

                    tbowmoT Offline
                    tbowmoT Offline
                    tbowmo
                    Admin
                    wrote on last edited by
                    #236

                    @hek said:

                    Neither of us have the flash memory though ;)

                    Hmm we should do something about that at som point in time ;)

                    I could send you a couple of bare boards, you could practice your soldering skils on ? ;)

                    1 Reply Last reply
                    0
                    • hekH hek

                      @tbowmo
                      Yes, that would be the most reliable option to allow updates un normal running mode.

                      I discussed this with @Anticimex earlier today and how to combine it with signing without totally flood the network with nonce requests etc.

                      Neither of us have the flash memory though ;)

                      tbowmoT Offline
                      tbowmoT Offline
                      tbowmo
                      Admin
                      wrote on last edited by
                      #237

                      @hek said:

                      Neither of us have the flash memory though ;)

                      Maybe we could figure something out.. I could send a couple of empty rev. 2 boards, and you could practice your soldering skills and assemble one yourself ;)

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

                        That might be a good idea. Just hope I won't mess it up too much. Which components do I have to order in the meantime.

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

                          @hek

                          I have a BOM at mouser, but need to double check it.. (Also, might have some of the capacitors/resistors in my "private" stock, so you don't need to order them)

                          1 Reply Last reply
                          0
                          • blaceyB Offline
                            blaceyB Offline
                            blacey
                            Admin
                            wrote on last edited by
                            #240

                            @tbowmo you can sign me up too however I can handle the component side of it if you share the mouser BOM.

                            tbowmoT 1 Reply Last reply
                            0
                            • blaceyB blacey

                              @tbowmo you can sign me up too however I can handle the component side of it if you share the mouser BOM.

                              tbowmoT Offline
                              tbowmoT Offline
                              tbowmo
                              Admin
                              wrote on last edited by tbowmo
                              #241

                              @blacey said:

                              @tbowmo you can sign me up too however I can handle the component side of it if you share the mouser BOM.

                              The BOM should be available at
                              http://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=a509f9ca59

                              It should match the current PCB layout for the major number of parts. I haven't looked at the crystal yet, to see if that fits, as I have changed the footprint to the one provided by the manufacturer in china when going with rev. 2.

                              At the moment I'm considering if the crystal should be dropped from the BOM, kind of missing a real purpose for it at the moment, as I don't think that "precise timing" is necessary for a node that repports in at a regular interval.. I (for one) don't care if it reports temperature / humidity "exactly" every 60 seconds, or if it's every 55 or 65 seconds.. But others might have another priority?

                              Schematics / PCB layout is available on github : https://github.com/tbowmo/MySensorMicro (please double check BOM from mouser, and the eagle files. I might have missed something :))

                              blaceyB 1 Reply Last reply
                              0
                              • tbowmoT tbowmo

                                @blacey said:

                                @tbowmo you can sign me up too however I can handle the component side of it if you share the mouser BOM.

                                The BOM should be available at
                                http://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=a509f9ca59

                                It should match the current PCB layout for the major number of parts. I haven't looked at the crystal yet, to see if that fits, as I have changed the footprint to the one provided by the manufacturer in china when going with rev. 2.

                                At the moment I'm considering if the crystal should be dropped from the BOM, kind of missing a real purpose for it at the moment, as I don't think that "precise timing" is necessary for a node that repports in at a regular interval.. I (for one) don't care if it reports temperature / humidity "exactly" every 60 seconds, or if it's every 55 or 65 seconds.. But others might have another priority?

                                Schematics / PCB layout is available on github : https://github.com/tbowmo/MySensorMicro (please double check BOM from mouser, and the eagle files. I might have missed something :))

                                blaceyB Offline
                                blaceyB Offline
                                blacey
                                Admin
                                wrote on last edited by
                                #242

                                @tbowmo Awesome! I'm on it :+1:

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

                                  So, a small update on the rev.2 board status.

                                  I am verifying the rest of the board now, before we kick of an initial testrun of 5 boards at the manufacturer. Everything seems to be working, electrically..

                                  Unfortunately something has happened in the SPI library in arduino, so the external flash, is now crashing the arduino sketch, while initializing. Someone else has already reported it to lowpowerlabs github repo https://github.com/LowPowerLab/SPIFlash/issues/8

                                  Having had the above issues, I have already build, and disassembled two nodes, trying to debug things :s

                                  Oh the fun of debugging embedded things...

                                  update

                                  I found a solution, someone else had made the necessary changes to lowpowerlabs spiflash library (check the issue comments in the link above)

                                  I also read in the release notes for arduino 1.6.0, that they have changed the SPI library to support transactions. Will this have any effect on MySensors? (@hek, any comments?)

                                  1 Reply Last reply
                                  1
                                  • S Offline
                                    S Offline
                                    sharath krishna
                                    wrote on last edited by
                                    #244

                                    @tbowmo : if the connections are fine when can we expect he board for production ?? looks everything is fine

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

                                      @sharath-krishna

                                      We are getting closer to a launch. A production partner has been found. All on-board hardware have been verified as OK! And I'm verifying the last bits (Want to have a complete node running, before giving a GO..) Also finishing the software that should be preloaded on the atmega.

                                      Depending on how things are going, we should be able to make the first trial batch within the next couple of weeks (I hope!) which we then need to verify before starting the big machine.

                                      Going to be an exiting spring this year :)

                                      1 Reply Last reply
                                      1
                                      • D Offline
                                        D Offline
                                        doblanch
                                        wrote on last edited by
                                        #246

                                        To where will you be able to ship the nodes ? I live in France. I don't know where you are located...

                                        hekH 1 Reply Last reply
                                        0
                                        • D doblanch

                                          To where will you be able to ship the nodes ? I live in France. I don't know where you are located...

                                          hekH Offline
                                          hekH Offline
                                          hek
                                          Admin
                                          wrote on last edited by
                                          #247

                                          @doblanch

                                          It will be shipped directly from the producer to any location.

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


                                          24

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 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