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. My 32bits ATSAM node project

My 32bits ATSAM node project

Scheduled Pinned Locked Moved Hardware
26 Posts 9 Posters 10.0k Views 14 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
    #8

    @scalz

    Cool project! :)

    But RFM95W is not supported by MySensors yet? (at least I think that it doesn't.. Haven't seen a git commit for it in the library). So are you going to use another library for that module?

    1 Reply Last reply
    0
    • scalzS Offline
      scalzS Offline
      scalz
      Hardware Contributor
      wrote on last edited by scalz
      #9

      @tbowmo thx :)

      I'm discovering the joy of new chip :) and the stuff about sam bootloader, arduinocore, board/pin def. I have not digged so much but still good to know how things are connected.
      Hopefully I found a bootloader+board def which fits almost with my pinout, but spi part which is not in same order. Cool this story of configurable sercoms..but that still needs to adapt a little bit pins define in variants...does I understand right? Sometimes it's very confusing all this stuff of pins define between boards etc..

      I have not tested the spi part yet, but very soon I will wire at least rfm69 and nrf. I have not received my Lora. I have looked at multiple libs, don't know yet which one. My first choice may be not radiohead, I will try it sure, but I would like something "standalone". I will start with basic examples! and then "standalone" will be easier to add to mysensors transport stuff I guess (my lazy way..) But don't know yet when :confused: I would like to finish what I have started on rfm69 part.

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

        @scalz

        Do the RFM95 use the same footprint as RFM69?

        About the SPI, you might need to hack the standard arduino SPI driver a bit (I have done this for the GW module..), depending on how you have wired your sercom/SPI unit..

        1 Reply Last reply
        0
        • scalzS Offline
          scalzS Offline
          scalz
          Hardware Contributor
          wrote on last edited by scalz
          #11

          @tbowmo
          yes I have found where to hack spi pins...will give a try this evening I think. If I can't get it to work may I ask you ? :)

          To resume a little bit about rfm, there are:

          • RFM69HW : High power version (best known version)
          • RFM69W : non-high Power version, pincompatible with RFM69HW
          • RFM69CW : other non-high power version too, but not pincompatible with those above W
          • RFM69HCW : High Power version again. But we could think this one is pincompatible with the simple CW. That's not the case! This one is pincompatible with RFM95W!

          All these RFM69 are software compatible. Very confusing, isn't it? but more options!
          As you can see, I have made this board for long range fun, and personal challenge :) With RFM69 high power version and RFM95 (outdoor, and that's why there is the lipo charger maybe basic solar app) .
          But in case, I would like to have a lower power radio, I added nrf footprint. I couldn't add another low power RFM69! I will certainly have two version of this board: one long range, another RFM69CW+nrf maybe without lipo charger this time..

          1 Reply Last reply
          0
          • scalzS Offline
            scalzS Offline
            scalz
            Hardware Contributor
            wrote on last edited by
            #12

            @tbowmo
            hi. I was just thinking that I didn't give news about my mux!
            in case, I guess you already know it, but that helped me so I share:
            https://learn.adafruit.com/using-atsamd21-sercom-to-add-more-spi-i2c-serial-ports/creating-a-new-spi
            I tried the howto for i2c too. worked nice.
            so no need to hack the lib in my case. (even if I have rerouted my board to fit mattair pindefinition which I prefer because "real" pin number match to pin number in arduino..matter of taste).
            Perhaps hacking libs could give a little bit more freedom but that's already pretty flexible like this, cool :)
            I have not had lot of time for my lora modules yet, still on my desk, pfff :disappointed:

            1 Reply Last reply
            0
            • TheoLT Offline
              TheoLT Offline
              TheoL
              Contest Winner
              wrote on last edited by
              #13

              Amazing work again. I really love the name Chi-mote ;-)

              1 Reply Last reply
              0
              • scalzS Offline
                scalzS Offline
                scalz
                Hardware Contributor
                wrote on last edited by scalz
                #14

                @TheoL thx ;)

                I am really beginning to like this little 32bit chip.. mux flexibility, enough memory, the price. Even if I was planning to use my jtag smd pins with pogo, usb cdc is cool for direct connection programming and uploading is really fast!

                the only downside is, I was aware, it require to make changes in sensors libs , to add constructors for platforms defines+modifying a little bit our common wire, spi, interrupt functions. For testings purpose it's ok, but I should fork these libs to add my changes...so much work!!! for the moment I have tested/modified only few libs like SI7021, ambiant light sensors, apds9960, 9930, mems, neopixel etc., still local..

                I will now post my design files soon for those who would like to try ;) I just need to make few tests/minor decisions on my design.

                When I see those price of released lora boards...wow, sure could be better but I'm happy with my board. I thought that I could try to make my own rfm95 circuit onboard, could be cheaper and a little bit smaller. But generally, I prefer to use a FCC compliant module, especially for lora...and so I can have footprint for an other radio, more modular, who said useless lol!

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

                  @scalz

                  Most of these sensors that you mention (si7021 etc) they are I2C, so only the base I2C driver needs to be adapted, so what changes are necessary for (for example) SI7021 to get working on the atsamd?

                  1 Reply Last reply
                  0
                  • scalzS Offline
                    scalzS Offline
                    scalz
                    Hardware Contributor
                    wrote on last edited by scalz
                    #16

                    @tbowmo you're right, it's because of a wrong mapping!! If I only use something like Wire.begin(sda,scl) it didn't worked well for me. Of course this could be fixed in variant, sercom.. etc but I didn't want to change this or create mine (I prefer to stick an existing/well updated one). So the only thing I need, to "remap" my pins, is :

                    #include "wiring_private.h" // pinPeripheral() function
                         
                    #if defined(MY_ATSAMBOARD)
                        TwoWire newWire(&sercom3, 22, 23);
                    #endif 
                    

                    And in setup, or in libs..

                    #if defined(MY_ATSAMBOARD)
                        newWire.begin();   
                        // Assign pins 13 & 11 to SERCOM functionality
                        pinPeripheral(22, PIO_SERCOM);
                        pinPeripheral(23, PIO_SERCOM);
                    #else  
                       Wire.begin();
                    #endif  
                    

                    And then I need to use my newWire object instead of common Wire.
                    rough example, not beautiful, that should be better done I know..but it's rough test and for my bad mapping. When remapped to the right pindef boards, that should work like it should do..
                    Hum..I will give another try to Wire.begin(x,y) to see, you make me not sure now...:confused:
                    In other hand, how libs manage if someone want to play with another i2c? Wire function and begin() are hardcoded in libs, so it use default i2c bus mapping...

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

                      @scalz

                      I've made "local" copies of SPI / TwoWire libraries (Local as in mysensors specific), which are added to the SAMD GW hw profile in Arduino.

                      So people just choose the correct board, and everything is setup for them :)

                      1 Reply Last reply
                      0
                      • scalzS Offline
                        scalzS Offline
                        scalz
                        Hardware Contributor
                        wrote on last edited by scalz
                        #18

                        @tbowmo cool, thx :) I forgot that's included in mysensors git! I will look at your work and diffcheck to see your changes. I will try this for this rev at least even if it's working with ugly cheat ;)

                        My next rev follow mattairtech board. So I won't need this, and no arduinocore files versioncheck . I let others doing this. So I will just choose the right hardware in ide and that should work like a Zero. This is actually what I am doing but I am cheating to fix my wrong mapping.

                        Thx for your feedbacks. I agree with you, each test/learning session takes a lot of time but I will try your way and report; the way I started to look but found a trick :)

                        1 Reply Last reply
                        0
                        • scalzS Offline
                          scalzS Offline
                          scalz
                          Hardware Contributor
                          wrote on last edited by scalz
                          #19

                          @tbowmo
                          cool, finally I have made my board definition :blush:
                          maybe I was missing something during my previous attempt as it was not so hard..
                          0_1461100918782_2016-04-19_23-19-15.png
                          works nice like you said ;)
                          look at this upload speed!! not a big upload (just an example test sketch) but crazy cool :smiley:

                          thx :+1:

                          1 Reply Last reply
                          0
                          • KoreshK Offline
                            KoreshK Offline
                            Koresh
                            Contest Winner
                            wrote on last edited by Koresh
                            #20

                            Very interesting thread!
                            I hope arduino project (and any child projects) will move to more fast hardware in near future!

                            1 Reply Last reply
                            0
                            • scalzS Offline
                              scalzS Offline
                              scalz
                              Hardware Contributor
                              wrote on last edited by
                              #21

                              @Koresh oops didn't see your answer, thx seriously I'm very glad :) but there are still few things which are choking my eyes. That's why this one is not released yet. arghh, not enough time!

                              1 Reply Last reply
                              0
                              • L Offline
                                L Offline
                                lafleur
                                wrote on last edited by
                                #22

                                What the current status of your 32bit project??
                                Also what work have you done with the RFM95 radio and it integration into MySensor 2.0b??
                                I'm looking at doing some work with the RFM95 and do not want to duplicate work that may already been done or started.....

                                Thanks

                                1 Reply Last reply
                                0
                                • scalzS Offline
                                  scalzS Offline
                                  scalz
                                  Hardware Contributor
                                  wrote on last edited by scalz
                                  #23

                                  on my desk lol I have not made a box for it yet! comm is working with basic libs examples. and I'm playing with my custom Zero and sensors. And I will be more tempted when I will have received my usb dongle pcb :)
                                  so you can do it if you want. like I said I will look at it bit later, if not already integrated ;)
                                  not a big thing that mostly need to do the transport layer. time I don't have for the moment..arghh

                                  mtiutiuM 1 Reply Last reply
                                  0
                                  • scalzS scalz

                                    on my desk lol I have not made a box for it yet! comm is working with basic libs examples. and I'm playing with my custom Zero and sensors. And I will be more tempted when I will have received my usb dongle pcb :)
                                    so you can do it if you want. like I said I will look at it bit later, if not already integrated ;)
                                    not a big thing that mostly need to do the transport layer. time I don't have for the moment..arghh

                                    mtiutiuM Offline
                                    mtiutiuM Offline
                                    mtiutiu
                                    Hardware Contributor
                                    wrote on last edited by
                                    #24

                                    @scalz

                                    Hi. Where did you buy the ATSAMD21Exx MCU s ? I'm more interested about the ATSAMD21E16 variant.
                                    Thanks.

                                    tbowmoT 1 Reply Last reply
                                    0
                                    • mtiutiuM mtiutiu

                                      @scalz

                                      Hi. Where did you buy the ATSAMD21Exx MCU s ? I'm more interested about the ATSAMD21E16 variant.
                                      Thanks.

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

                                      @mtiutiu

                                      They are available from mouser.com (at least, that's where I source them from, when making prototypes)

                                      1 Reply Last reply
                                      0
                                      • scalzS scalz

                                        cool I have my Chi mote working on my custom board, after few changes in libs regarding atsam :)
                                        Next step, mysensors libs and I can't wait to receive my lora module to give a try. I have nrf smd footprint but no more in stock, so impatient that I'm thinking to unsolder one on another board :laughing:

                                        N Offline
                                        N Offline
                                        nijupp24
                                        wrote on last edited by
                                        #26

                                        @scalz Hi,
                                        i know its been long time but stil l!!!
                                        Can u please explain how it got resolved?

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


                                        19

                                        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