πŸ’¬ My simple RFM dongle for Serial GW




  • Mod

    @scalz You are unstoppable, dude πŸ‘


  • Admin

    You guys are so darn productive!

    Wish I could design hardware myself.. I should really start reading the The Art of Electronics book that's been laying on my bedside table for more than 6 months...


  • Mod

    @hek said:

    been laying on my bedside table

    Maybe you can't get to it because this isn't real bedtime reading? πŸ˜‰


  • Hardware Contributor

    @hek said:

    You guys are so darn productive!

    ... unlike yourself then ...? πŸ˜ƒ I'm sure you're No1 of overall productivity here.

    @scalz Wow, yet another piece from the indisputable master of hardware production! It looks great! Thx.


  • Hardware Contributor

    A 4 pin JST SH connector for I2C (a bit like the Grove connectors, but smaller) is always handy. Look up the GSM modules for helicopters, they have small 5 or 6 pin connectors, this might fit. Then a cable with this connector allows all sorts of goodies to plug into the stub.
    I really like the design ! For the moment I need to stick to 1 mcu (I confess I have been distracted by Attiny85 and Attiny841 lately), so I need to give more love to my stamp node now.


  • Hardware Contributor

    thx thx πŸ™‚ some people plays clash of ***, between two things, I play another geek things lol
    that's always very nice to hear this from you guys πŸ™‚ but I'm sure you have nice secret gizmo or piece of software in progress πŸ˜‰ btw it seems a great book. I have some trouble for sleeping, that may be better than some medicine, lol I'm still noob&eager to learn πŸ˜†


  • Hardware Contributor


  • Hardware Contributor

    @GertSanders you're right, I will add it πŸ˜‰ I was sure I would have to add this option! thx for feedback.
    maybe you will try it who knows!
    your board is nice too, tempting to try it πŸ™‚


  • Contest Winner

    @hek I recommend read both books πŸ˜‰
    alt text


  • Contest Winner

    @scalz
    Nice work!
    But I'm very interested some details... Did you check mysensors library (and all dependencies, so overall system) on Smart atmel (SAM D family) MCUs (work and stability)?
    I can't see swd pins on the board. What kind of programming tools do you use for these MCU's?
    Thanks!


  • Contest Winner

    I'm reading a fantastic book "The Maker Movement manifesto" (http://www.techshop.ws/images/0071821139 Maker Movement Manifesto Sample Chapter.pdf).

    I think you'll gonna love this book. Since we're all makers, maybe @GertSanders and @AWI can share a bit of their hardware building skills to the other Belgium and Dutch speakers, during the (summer) meetup? I'd really love to learn at least how to make a descent print lay-out. Hence I'll buy you all a cold beer in return. But only after the lectures πŸ˜‰



  • Very nice design !!

    One question, do you sleep ? I know the answer : no !!! πŸ˜‰


  • Contest Winner

    @carlierd Sleep is overrated .


  • Hardware Contributor

    ahaha!

    @Koresh thx πŸ™‚ I just would like to say, I don't consider myself as an electronician!

    Let me explain my way, and please tell me if I'm doing wrong. I want to learn πŸ™‚

    The truth, is I started to learn microchip 10years ago because I needed it. So I'm very new at atmel. I understand about stability of circuit, the software stuff too.. So, what do you mean by work and stability??? I'm from software dev originally..

    But when I design I always try

    • to follow reference design : e.g. already made schematics (thx to opensource), datasheet, appnotes,
    • to understand what it does, add my things, hack it to have the better circuit I am able..
    • If I don't find my answer, I ask to my dad πŸ˜‰ Thx to him, he's electronician πŸ™‚ not RF expert..
    • when I have all my personal reference schematics, that's faster then, like a lib, just few hacks
    • about routing, I read articles too, how to make things good, about mixed, or escaping strategy etc.
    • in software, same thing. no hidden thing, always an answer.
    • finally, I think I should be more stable&reliable than something veroboard or wire arduino clone style. imho.

    But maybe you are mentioning the RF part which is not my best part πŸ˜‰ And I never practised it during my microchip sessions. So thx to iot, I have just started to learn some basics on RF...just good to know all the stuff about impedance matching, routing..and I iterate, iterate...lol

    So, warning!! this is for advanced! I share for fun πŸ™‚

    About this board:

    • there are round smd pads (2.54mm pitch) which are : RST, GND, 3.3V, SWCLK, SWDIO. Program it by pogopin. I use a Segger J-Link OB for programming bootloader. USB for bootloading.
    • this board comes from another board I have made (in testing):
      http://forum.mysensors.org/topic/3551/my-32bits-atsam-node-project
    • I have made my variant board in arduino ide.

    My tests :

    • not fully tested but on a good way, sorry for my lora still on my desk, so I won't order this one if I'm not sure πŸ˜‰ But I have followed a working pinmapping for the lora part, so I should not have too much surprise. I will boost on this..
    • I only tested basic raw examples yet, that I mix and hack a bit just for POC. Then it's just a matter of time/software for integration in Mysensors! Plus I know that @tbowmo has already something working Mysensors+atsam. So with a little help and labour I should be able to pack all my things, I hope πŸ˜‰ Because for the moment I have my mysensors stuff in the jumble, and I don't want to add variables...

    I hope you're ok with this? Thx for your feedback and don't hesitate to tell me if I am wrong. I will add schematic and order it asap.


  • Contest Winner

    Thanks for so detailed answer!!!

    So, what do you mean by work and stability???

    I just mean, that arduino zero is new platform and I didn't try it πŸ™‚ I've just interested how stable arduino code works on SAM D πŸ™‚

    use a Segger J-Link OB for programming bootloader.

    OK! I am loking a cheap programmer for this mcu now πŸ™‚


  • Hardware Contributor

    @Koresh lol, I'm reassured! yep you can find cheap programmer, just two swd pins needed πŸ™‚ For the moment, I like this SAMD. but still can't wait esp32 πŸ˜‰


  • Contest Winner

    @scalz said:

    @Koresh lol, I'm reassured! yep you can find cheap programmer, just two swd pins needed πŸ™‚ For the moment, I like this SAMD. but still can't wait esp32 πŸ˜‰

    I'm ganna use ST-link πŸ˜‰


  • Hardware Contributor

    @TheoL
    Huh ? Did someone say beer ?



  • Nice to see ATSHA204A included. Could this be used as a gateway on a USB port? I am not familiar within SAMD, but how does this work without USB to serial chip?


  • Hardware Contributor

    @Dwalt
    yep atsha204A is a Mysensors classic, and a very nice feature πŸ™‚ I feel better secured now, thx Anticimex πŸ˜†
    Yes it will be possible. There is already a better different GW from tbowmo. But I didn't see my option here, so I did it, and if sometimes I need something simple...or want to make a gift lol
    SAMD includes internal USB drivers. So it can be used as a client USB, or like CDC serial comm (Virtual Serial Port). So no need of usb to serial; cool πŸ™‚


  • Admin

    @Dwalt

    It acts as a serial device on the USB port. I have a GW running with atsamd21J (bigger brother to the one @scalz are using). Been using both USB and ethernet to connect to the device.

    The nice thing of an embedded USB controller, versus an external usb to serial device, is that you can make your device act as whatever usb device you want. For example make it a mass memory device, or a mouse / keyboard (HID). The sky is the limit πŸ™‚


  • Hardware Contributor

    mini update..
    So thx to @GertSanders and his ideas! Again I had to challenge myself yesterday πŸ˜†
    I have updated description but briefly I have added:

    • enlarged a little bit 😞
    • 2x 1.0mm pitch connector; one for I2C+1pin in case, and another one for JTAG programming bootloader (this was pogo pins but as averything is on top, I feel more secure with a true connector)
    • eeprom
    • routing and silkscreen
    • now, usb connector is no mandatory, but I prefer with it..

    still very few things to make looking better and I upload my files πŸ™‚


  • Contest Winner

    RFM69 has built-in authentication, is atsha chip really needed?


  • Admin

    No, it got build in encryption. Not the same.


  • Hardware Contributor

    rfm69 has encryption which just hide your data. it's bonus and useful, but it does not provide key authentication, handled by athsa. imho, authentication is more important. I should receive my pcb soon now..this time, oshpark has been a bit longer than usual for my order 😞


  • Hardware Contributor

    I have just assembled one board, and I'm testing it.
    so far I'm pretty happy. as expected, it's communicating with my other "zero" board ( the other white board, lipo etc..). yeah πŸ™‚

    I've not tried lorawan yet, I'm just using basic raw routines for radio communication between the two nodes (a part from LMIC library). and I will try lowpowerlab rev too when more time as I'm busy on other cool gizmos πŸ™‚ and then, if not already done, will try to integrate into mysensors transport. ughh, I don't know when, quite lot of work!

    0_1463687336163_2016-05-19_21-35-07.jpg

    0_1463687345049_2016-05-19_21-35-08.jpg

    you can see I have not received i2c eeprom yet, and my jst connectors too! too bad, so I sodered temporary wire for jtag πŸ™‚ in case..I'm using RFM95W 868mhz, only with whip wire antenna for the moment, I have not tried the sma, nor rfm69hcw. that will be next step after having checked the range like this..


  • Hardware Contributor

    and playing a bit with 3d design..
    0_1463743312232_usb_dongle_custom_box.PNG

    yummy πŸ™‚


  • Hardware Contributor

    few other pics, a bit better quality 😊

    I've not used oven this time. just handsoldered. 0603. I've not tried yet, to use pcb only for plugging (without connector), I will do (it could be smaller) but I prefer/more confident with a connector.
    0_1463761550575_20160520_1646271.jpg
    0_1463761570655_20160520_1646012.jpg

    funny and tiny, not so much feature, there are other boards with more pins but I wanted this one simple, with minimal mysensors things, when I will receive my jst, I will have more pins like i2c. but for the moment, I like it πŸ™‚ connected directly in usb without wire, playing with arduino, neopixel, serial and radio etc..like a child πŸ™‚


  • Hardware Contributor

    I'm playing with radiohead lib now. nothing special but that works well too πŸ™‚
    0_1463904327814_2016-05-22_09-53-53.jpg
    I have looked a bit at LMIC (radio management+protocol), for curiosity. I like the the "rtos" style, it's well done, sure, but it's mostly another protocol... there are nice things though.

    I think, the best, imho, would be to extract radiohead rfm95 driver and make something like rfm69 lowpowerlab lib. Or trying to add radiohead to mysensors..In each case, that is some stuff&debug.

    Now, I would like to have my lora nodes in mysensors...so what's next?...no, no, don't say what i haven't said ... πŸ˜†


  • Admin

    @scalz
    You could look have a look at the new minimal rf24-driver made by @tekka. It contains the bare minimal needed for communicating.

    If the radiohead/rfm95 driver can be transformed into something similar, then go ahead. πŸ™‚


  • Hardware Contributor

    @hek
    I have looked at Tekka lib, thx πŸ™‚
    For convenience, for the moment ;), I have almost repackaged radiohead and rfm95 parts into something "standalone" (like lowpowerlab certainly did for rfm69). I keep from radiohead a few more getter/setters because I like it lol.

    Basic things compiling&working, argh not in mysensors yet, as I'm still on the driver part. I'm trying to follow a bit the lowpowerlab flow, so it will be easier then for a rfm95transport. Still lot of things to check, wip..but for the moment, for a simple raw reliable (sendWithretry) sketch, I get something 17% flash, 25% ram for a 328p...compared to 49%/80% using radiohead lib. I hope things won't grow too much, I will try to get things compact as I can πŸ˜‰

    Though, there were interesting things in radiohead lib:

    • the way it's structured (a bit like mysensors, with a radio driver, spi and more general/generic layer).
    • I have not tested it but you can handle multiple int and radio for instance.

    It was a bit of work to navigate in, to be sure to not forgive something, not a nightmare lol hopefully radiohead has a great and well done documentation.
    Talking about this..do you have a doc like this for mysensors, for the description and class hierarchy? just curious πŸ™‚

    See you soon


  • Admin

    Yes we have, but it relies on contributors using doxygen (and only parts of the current code is documented properly).

    https://ci.mysensors.org/job/MySensorsArduino/branch/development/Doxygen_HTML/


  • Hardware Contributor

    @hek
    ok. I saw this before, but didn't know where it was located. great, thx πŸ™‚
    so I will install a doxygen plugin πŸ˜‰ I will try to add the docs. In code it's always useful, but like doxygen does is the next step I was searching for. I was pretty sure there was something like this: doxygen lol! I will sleep less dumb tonight πŸ˜†


  • Hardware Contributor

    As I see the development based on SAMD21 enfold, the behaviour brain I'm building for my mobile robot would be better based on that processor instead of the atmega1284p I'm using now.


  • Hardware Contributor

    I have just assembled another one for a friend. Works very well with mysensors 2 πŸ™‚
    0_1468163482216_gw_dongle.jpg
    Same pcb for the two's of course, I like the rgb led with the indication led api ;):

    • on left, long range RFM95 GW usb dongle.
    • on right, RFM69 High power GW usb dongle.
    • bottom, a multisensors I have just assembled.


  • Hi,
    Can You share sketch example for SAMD21E and RFM69 node?
    MiKa


  • Hardware Contributor

    @MiKa
    Hi.
    oki, in case i'll add some explanation.. I'll be busy for this week but you can simply use the serial gw example from MySensors for getting started, this should work. I didn't need to create a special board in arduino for this board, so if you're using it, you'll need to install&use the mattairtech SAMD21 board definition for the pin mapping.
    https://github.com/mattairtech/ArduinoCore-samd



386
Online

7.7k
Users

8.6k
Topics

92.3k
Posts