Jump to content

Welcome to Smart Home Forum by FIBARO

Dear Guest,

 

as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.

 

As a member you can:

  •     Start new topics and reply to others
  •     Follow topics and users to get email updates
  •     Get your own profile page and make new friends
  •     Send personal messages
  •     ... and learn a lot about our system!

 

Regards,

Smart Home Forum by FIBARO Team


ZM5304 uart communication


Recommended Posts

Not really possible... because you probably won't be able to create meaningful messages like that.

 

You have to talk the right serial protocol. The default firmware, according to my understanding, is the standard controller application. In that case, the serial protocol is simply called... "Z-Wave Serial API". And its specification is public.

 

See "INS12350-Serial-API-Host-Appl.-Prg.-Guide". I attach it here for your convenience, the official source is on the Silabs forum.

 

Please login or register to see this attachment.

 

If you have not read the 1000 other pages in the SDK then you won't understand a single word of that document though... The document assumes you have in-depth knowledge of Z-Wave development.

 

I think you have contacted me about this via PM and in that case I am going to repeat my advice:

 

1) A Z-Wave network cannot functions without a controller. You need a controller like a Fibaro Homecenter or any other "controller". This module on its own is not enough, you have to run some software on a host.

2) Z-Wave devices can do device-to-device communication via association(s) - but point 1 still applies. You need a controller (both the chip with the controller firmware and controller software.  to create a network and add devices to that network. There are portable controllers, device's like ZRC-90 if I recall correctly that can function as a controller, create a primary and add devices to its network. I have never used a portable controller like that.

3) If you want to see how a controller works and what this "Z-Wave Serial API" looks like...  Download the source of open-zwave 

Please login or register to see this link.

 - They actually implement the serial protocol as described in that INS12350 document...

 

BTW I don't think more than 10 users on this forum understand your question... We rarely discuss the development of Z-Wave products here... I am tagging @tinman in case he is bored of Christmas shopping and wants to chime in... I'm only an amateur, but I enjoy tinkering with Z-Wave.

Link to comment
Share on other sites

  • Topic Author
  • Thanks for replying man but I just asked that whether it is possible that to communicate with ZM5304 module with pc via uart communication thats it. Anyway thanks for your reply.

    Link to comment
    Share on other sites

    3 minutes ago, Manish Kumar Thakur said:

    is possible that to communicate with ZM5304 module with pc via uart communication

     

    I don't own one but according to the docs UART0 on that module is available for communication (see "Figure 3.1: Example of a host microcontroller based application using UART0" on the data sheet). That is pin 4 TX and 5 RX on that module.

    Link to comment
    Share on other sites

    Good luck with your project! BTW I've used Python and pySerial to do "Serial API" protocol, to control a Zwave.me UZB1 (= should be same API as your module).

    Link to comment
    Share on other sites

    Interesting, the unit is designed as a modem. No GPIO, just UART and USB.

    Wich firmware it can run? Controller? Static controller? Or Slave?

    Link to comment
    Share on other sites

    Afaik it is simply a series 500 chip, so it runs anything you design... It has a reset pin to toggle the uart into ISP mode (says the data sheet, I don't have one to test). So if you design a slave application that supports "basic set" but instead of using gpio pins, it outputs the words "turn on" or "turn off" via uart... Sounds doable. If you want a slave, I would suggest a Z-Uno though. Unless... Tinman once found a link of a breakout board of a series 500 (on Aliexpress) but I think it is no longer available. I quickly checked, digi key sells ZM5304 at about 7-8 USD but without gpio, I don't think this device is for me. I am inclined to think, the "serial API" is the primary intention of this device. But I am not a professional Z-Wave developer, I might be jumping to conclusions.

     

    Edit, we already had a chat about breakout boards :)

     

     

     

    Edited by petergebruers
    • Thanks 1
    Link to comment
    Share on other sites

    On 12/24/2018 at 5:50 PM, jack.daniels said:

    Interesting, the unit is designed as a modem. No GPIO, just UART and USB.

    Wich firmware it can run? Controller? Static controller? Or Slave?

     

    static, static single or bridge controller are (only) officially supported/certified, but of course the silicon is the same, so you can build slave as well. 
    ZM5304  is using SD3503, which have (except the "nc - reserved" pins) no I/O, as you need SPI, UART and USB pins for programming/production/firmware.

    For sure it is perfect for modem applications, nice thing is e.g. bridge mode (with Controller SDK), to build-up zwave over tcp.

     

    On 12/24/2018 at 12:25 PM, petergebruers said:

    I am tagging @tinman in case he is bored of Christmas shopping 

     

    Santa was indeed here, playing with SDK 700 and new scope^^ 

    • Like 3
    • Thanks 1
    Link to comment
    Share on other sites

    4 hours ago, tinman said:

    static, static single or bridge controller are (only) officially supported/certified, but of course the silicon is the same, so you can build slave as well.

     

    Thank you for confirming ly idea. AFAIK the SmartThings hub uses one of those ZM5304 (see FCC photos). So the use case indeed appears to be the design of a gateway. Select an ARM SoC + memory, add a ZM5304 and you've got a Z-Wave capable gateway.

     

    There appears to be a complete Serial API example in the SDK but I haven't tested it yet. It seems to support all libraries so theoretically I could build a bridge firmware to run on my Aeotec stick. To test the Z/IP gateway (as you have suggested), for example. Not sure why I would want to do that though :)

     

    4 hours ago, tinman said:

    Santa was indeed here, playing with SDK 700 and new scope^^

     

    Very nice! Have fun!

    Edited by petergebruers
    Link to comment
    Share on other sites

    One detail in your post struck me. It took a while to sink in:

     

    12 hours ago, tinman said:

    you need SPI, UART and USB pins for programming/production/firmware.

     

    I was able to program my Aeotec Stick with only a CP2102 (it has to be that chip, it does not work with for example FT232) with only UART0 connected + manual toggle of reset pin. No SPI pins, no programmer needed. So IMHO the ZM5304 should be programmable - firmware updatable (although it does not expose the SPI pins). But I don't have one to test that... The manual says: "The UART0 or USB interface can be used to access the Z-Wave stack available in the on-chip Flash memory, or to easily upgrade the modem firmware.".

     

    OFF TOPIC

     

    This might all be very academic soon, as you own the 700 kit this means Silabs ditched the Sigma design and released a Z-Wave device based on their ARM SoC technology.

     

    Ah! On the Silabs website...

     

    The Silicon Labs Z-Wave 700 Zen Gecko SiP Module, ZGM130S, is a fully integrated Z-Wave module, enabling rapid development of Z-Wave solutions.

     

    Please login or register to see this link.

    Link to comment
    Share on other sites

    2 hours ago, petergebruers said:

    This might all be very academic soon…

    Ah! On the Silabs website...

    The Silicon Labs Z-Wave 700 Zen Gecko SiP Module, ZGM130S, is a fully integrated Z-Wave module, enabling rapid development of Z-Wave solutions.

     

    not sure if SDK is public already, i do participate beta kit, but it's easy to test: download simplicity studio, login with your silabs account and check if you see Z-Wave available to download for you 

    Please login or register to see this image.

    /monthly_2018_12/image.png.880e5d28734fddb8fcedbad2d0db6ea8.png" alt="image.png.880e5d28734fddb8fcedbad2d0db6ea8.png" />

     

    Link to comment
    Share on other sites

    I am sorry, I do not understand your question: "My wave access is not granted how to make it as granted.". I do understand the individual words and their meaning, the language is not a problem. But I cannot make sense of the question in the context of this topic. It might be me...

     

    To help you I need more information:

    1. Can you please provide context. What is "your network". How many devices and how are they connected? What kind of Z-Wave devices? What controller software do you run?
    2. If you are talking about putty: what are you trying to send and what do you expect back? What does "granted" mean?
    3. If you are talking about the Silabs website... What are you trying to do? What access do you need/want?
    4. If you have a running code sample, please post the code. I can read code in C, C++, Go, Lua, Python and a bunch of other programming languages.

    I am not at home, I probably cannot answer today. If you want some background on how to use the Serial API, I can post an example (but probably not today).

    Link to comment
    Share on other sites

  • Topic Author
  • Thanks, Peter for the reply 

    I was saying in the previous post that Z-wave request is blocked in Simplicity studio. What to do to make it as enable I'll post one screenshot so you will get what I was telling.,

    Please login or register to see this attachment.

    Link to comment
    Share on other sites

    • 2 weeks later...

    Sorry for my late reply... I somehow have missed your answer to my question! And I had to test that new software myself to find out. I have installed Simplicity studio 4 and I get the same "Request Access" button as you. Clicking on that button leads to a general page on their web. I guess you have to somehow participate the beta, like @tinman did.

     

    For now, I will keep using KEIL compiler + the 6.81 SDK...

    Link to comment
    Share on other sites

    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.

    Guest
    Reply to this topic...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

    ×
    ×
    • Create New...