[SOLVED] New UZB dongle, Z-Wave PC controller immediately exits (or crashes) with no error message

Tags: #<Tag:0x00007f2fb53e00f8>

@dastrix80 @leif

For all who have a Silabs account and like complicated things, follow these steps:

Login to Silabs. Then click on this link.

Or click through: Silabs » Products » Development Tools » Software » Z-Wave » Embedded SDK

  1. Download “Z-wave SDK 6.81”
  2. Accept license agreement in next window
  3. after download (step 1.) --> download “PC Controller 5.30
  4. once you’ve downloaded it you will get a “shared link” to “PC Controller 5.38

5. maybe you have to wait a little while until “SDK 6.81.05 Active” is shown…


Thank you! That is very helpful. How did you manage to find that?
With that I will forgive your snarky comment from before. :slight_smile:

While 5.38 is the current version it can also be downloaded here

1 Like

That was a long journey… :wink: Actually by accident. I was looking for something else on the Silabs site. :grinning:

1 Like

Haha, that’s really amazing :slight_smile: Even an 8200 in there. All sockets controlled by Z-Wave? Any plans for an Omnia 11 or BreakAway One binding in openHAB? :slight_smile:

Just installed it, setup a new ZStick and paired a Aeotec device. All instant! This tool will be very handy. I assume I can just take my production zstick that is causing some grief and try and switch nodes on/off with it that are part of the network.


Actually not Z-Wave! I did buy a large amount (50 or so) Neo CoolCam Z-Wave plugs that I planned to use for this… and then I realized the wiring would be a mess, plus I was still on Fibaro so the UI would have been a mess too. So, instead I did it with web relays! Four 8-channel web relays (of the ZMWEB variety) each in its own custom enclosure with eight 220v power jacks. I was looking for photos from when I built them (or rather, when my housekeeper’s daughter built them, after I built a prototype and then taught her to solder!) but for some reason couldn’t find the pictures.

All my NF-based things (BreakawayOne, Omnia.9) can already easily be controlled from openHAB by HTTP requests :). Not much to gain from a binding, i think?

Nice going! Yes, you can absolutely use your production ZStick with it, that’s exactly what I meant.

1 Like

Dang, looks like I misjudged you. You are helpful.

Here, I put together my Z-Way RPi system again and got the screenshots you were looking for.

I’m not downgrading my stick for you :). But the version I’m running, the latest to my knowledge, is 5.36.


Hey everyone thank you for these tips. I’m BEYOND frustrated with UZB and trying to get it to work with PC Controller.

I had the same issue with the PC Controller crashing when it detected UZB. So I read the topic and decided to try an upgrade the firmware in hopes that it will fix the crash. I soon realized that z-wave.me no longer supports the Windows version and the on the website it outdated and no longer works to update the firmware. So I learnt how to install Lubuntu and downloaded and installed v.3.0.0 of the z-way software. However when I try to upgrade the firmware from Expert -> Network -> Controller Info -> Firmware Update, it shows me that it can update the bootloader from 5.25 to 40196 but then when I try to update it it gives me an error Unable to update data. /ZWave.zway/ZMEBootloaderUpgrade

I was wondering if anyone had any tips on how to update the firmware on the UZB to get it to work with PC Controller or if I can use an older version of the firmware which works with PC Controller.

What does not work with the original firmware?
My UZB is four years old, never been updated, works without any issues.

Same symptoms as the first post from @leif
I start PC Controller, it detects the UBZ and then the program exits (or crashes, no errors, just disappears). My stick appears to be running 5.25

No. I meant what did not work in regards of openHAB.

I wasn’t trying anything with openHAB, just trying to get PC Controller from zwave to work and I came across this topic. Apologize if it’s off product but this is the only reference I could find to the issue while searching for a solution. Anyways I finally solved it and will post an update if it helps anyone with the same situations.

1 Like

Mine has firmware 05.05, SDK Version 6.51.06 (=bootloader 13481) and it is running with “Z-Wave PC-Controller 5.30” and 5.38

Which SDK Version is shown in Z-Way? which UUID ??

1 Like

For folks who want to use the UZB Z-Wave stick with Z-Wave PC Controller 5.38.

Please note if your stick firmware has firmware 5.25 or 5.26 you’ll see PC Controller crash/exit as soon as it detects the z-wave stick. I was able to get it to work finally after updating the firmware to version 5.33 and also 5.34 with SDK version 6.81.01

Unfortunately the ONLY way to update the Z-Wave stick firmware is to download latest v3.0.0 of Z-Way-Server. While there is an older windows version 2.3.3, DO NOT use this as it’s outdated and cannot update your firmware.

Couple of things to note during this process

  1. Do NOT use Ubuntu 18.04 or newer, the upgrade process will fails because it uses CURL4 where as the z-way-server requires CURL3 and it will keep failing with the error Unable to update data. /ZWave.zway/ZMEBootloaderUpgrade when you try to upgrade from the UI.
  2. After installing the stick in your linux machine you need to give it write permissions, by default it only has read permissions and because of which when you try to start the z-way-server it will give an error on the console Cannot open device, permission denied. Open a new console and type in sudo chmod 666 /dev/ttyACM0 EVERY time you see this error on the console running the z-way-server. This will be multiple times during the upgrades process (after each upgrade)

Steps to update the firmware

  1. Install Ubuntu 16.04 (I create a Ubuntu live USB stick so I could run this off a USB drive just for the firmware update)
  2. Download the Z-Way-Server v3.0.0 (z-way-server-Ubuntu-v3.0.0.tgz). It’s a TGZ file you’ll have to untar it, right click on it in File explorer in Ubuntu and click on Extract here. It’ll extract all the file into a folder called z-way-server
  3. Connect the UZB stick into a USB port
  4. Open a terminal console and type in sudo chmod 666 /dev/ttyACM0, keep this terminal open
  5. Open a NEW terminal console and go into the z-way-server directory and start the z-way-server by typing in LD_LIBRARY_PATH=./libs ./z-way-server. The server should start and it should detect the UZB stick controller
  6. Open a browser window and goto localhost:8083, it’ll ask you to create a password and login, skip the instructions/intro
  7. Change the browser URL to localhost:8083/expert, this should open the expert pages from where you can update your firmware
  8. Click on Network -> Controller Information, this page should show you the current firmware version as show on this post 35 above by @leif.
  9. Updating firmware
    1. Click on Firmware Update and then it should prompt you to update your bootload from 5.25 to 40196. This is a quick process and in your z-way-server console you should see it update the bootloader and then try to restart the stick and it’ll give an error about not being able to open the device and device persmissions
    2. Now open your other terminal and retype sudo chmod 666 /dev/ttyACM0, it should allow the z-way-server to now read/write to your stick again. If the server times out (after 5 retries), no worries, just shutdown the z-way-server (Ctrl + C) and then restart it again with the command LD_LIBRARY_PATH=./libs ./z-way-server and it should detect your stick again (don’t close the browser window!)
    3. Go back to Network -> Controller Information page, go back to the Firmware Update page, now it should prompt you to update the firmware from 5.25 to 5.26
    4. Click on firmware update and you should see the debug command flying by on your z-way-server terminal screen as it updates, it’ll take a few minutes. Once it’s done, after the stick is rebooted, same as before you need to reset the permissions from your other terminal as show in step 9.2 above.
    5. Repeat the above steps 9.4 and 9.5 until you’re on the latest version of the firmware or the one your want (I tested it 5.33 and 5.34 and it gave me no more update options thereafter, so that’s where I stopped).
  10. Once the firmware is updated you should be able to use it with PC Controller 5.38

I hope this helps folks and they won’t have to struggle the way I did


@hunnypuppy @leif

Very interesting that there are two different latest firmware versions. While @leif has version 5.36, the version of @hunnypuppy is 5.34.

@hunnypuppy @leif

Only out of interest: which bootloaderCRC do you have now?

Mine is 48059.


You will get this, when you are in above mentioned window (post #35) and then click on “Show controller data


there is a chance to brick the UZB-Stick when updating the firmware. I got this answer in the zwave.me forum bricked device zwave.me forum

Sorry to inform you, but there is a known issue in some UZB manufactured by our partners on license base that after upgrade they become bricked.

I will try another one :wink:

Update: 2nd device also bricked when updating from 5.27 (preinstalled) to 5.36 using
zway 3.0 on raspberry.

best, ypoosn

bootloader 40196 and the firmware doesn’t show me any options to upgrade beyond 5.34

/: None (09:46 AM)

    nodeId: 1 (09:46 AM)

    homeId: -771274748 (09:46 AM)

    SUCNodeId: 1 (09:46 AM)

    isPrimary: true (09:46 AM)

    isInOthersNetwork: false (09:46 AM)

    isRealPrimary: true (09:46 AM)

    isSUC: true (09:46 AM)

    SISPresent: true (09:46 AM)

    libType: Static Controller (09:46 AM)

    SDK: (09:46 AM)

    ZWlibMajor: 6 (09:46 AM)

    ZWlibMinor: 2 (09:46 AM)

    ZWLib: 1 (09:46 AM)

    ZWVersion: 6 (09:46 AM)

    ZWaveChip: ZW0500 (09:46 AM)

    APIVersion: 05.34 (09:46 AM)

    manufacturerId: 277 (09:46 AM)

    vendor: Z-Wave.Me (09:46 AM)

    manufacturerProductType: 1024 (09:46 AM)

    manufacturerProductId: 1 (09:46 AM)

    bootloaderCRC: 40196 (09:46 AM)

    firmwareCRC: 18024 (09:46 AM)

    capabilities: 2,3,4,5,6,7,8,9,10,11,16,17,18,19,20,21,22,23,28,32,33,34,35,36,39,40,41,42,43,44,45,46,55,56,57,58,59,63,65,66,68,69,70,71,72,73,74,75,76,77,79,80,81,83,84,85,86,87,88,94,95,96,97,98,99,102,103,120,128,144,146,147,152,180,182,183,184,185,186,189,190,191,208,209,210,211,212,238,239,242,244,245,247 (09:46 AM)

    controllerState: 0 (09:46 AM)

    nonManagmentJobs: 0 (09:46 AM)

    lastIncludedDevice: 0 (09:46 AM)

    lastExcludedDevice: 0 (09:46 AM)

    secureInclusion: true (09:46 AM)

    oldSerialAPIAckTimeout10ms: 150 (09:46 AM)

    oldSerialAPIByteTimeout10ms: 15 (09:46 AM)

    curSerialAPIAckTimeout10ms: 10 (09:46 AM)

    curSerialAPIByteTimeout10ms: 10 (09:46 AM)

    countJobs: false (09:46 AM)

    memoryGetAddress: 25856 (09:46 AM)

    memoryGetData: 157,4,70,104 (09:46 AM)

    memoryManufacturerId: None (09:46 AM)

    memoryType: None (09:46 AM)

    memoryCapacity: None (09:46 AM)

    functionClasses: 2,3,4,5,6,7,8,11,18,19,21,22,23,32,33,34,35,36,39,41,42,43,44,45,57,58,59,63,65,66,68,70,71,72,73,74,75,76,77,80,81,82,83,84,85,86,87,94,96,97,98,99,128,146,147,186,190,208,209,210,211,242,243,244,245 (09:46 AM)

    functionClassesNames: SerialAPIGetInitData,SerialAPIApplicationNodeInformation,ApplicationCommandHandler,GetControllerCapabilities,SerialAPISetTimeouts,GetSerialAPICapabilities,SerialAPISoftReset,SerialAPISetup,SendNodeInformation,SendData,GetVersion,SendDataAbort,RFPowerLevelSet,GetHomeId,MemoryGetByte,MemoryPutByte,MemoryGetBuffer,MemoryPutBuffer,FlashAutoProgSet,NVMGetId,NVMExtReadLongBuffer,NVMExtWriteLongBuffer,NVMExtReadLongByte,NVMExtWriteLongByte,ClearNetworkStats,GetNetworkStats,GetBackgroundRSSI,RemoveNodeIdFromNetwork,GetNodeProtocolInformation,SetDefault,ReplicationReceiveComplete,AssignReturnRoute,DeleteReturnRoute,RequestNodeNeighbourUpdate,ApplicationNodeUpdate,AddNodeToNetwork,RemoveNodeFromNetwork,CreateNewPrimary,ControllerChange,SetLearnMode,AssignSUCReturnRoute,EnableSUC,RequestNetworkUpdate,SetSUCNodeId,DeleteSUCReturnRoute,GetSUCNodeId,SendSUCNodeId,ExploreRequestInclusion,RequestNodeInformation,RemoveFailedNode,IsFailedNode,ReplaceFailedNode,GetRoutingTableLine,GetPriorityRoute,SetPriorityRoute,RFPowerLevelGet,SendTestFrame,SetPromiscuousMode,PromiscuousCommandHandler,WatchDogStart,WatchDogStop,ZMEFreqChange,ZMERestore,ZMEBootloaderFlash,ZMECapabilities (09:46 AM)

    softwareRevisionVersion: v2.3.3 (09:46 AM)

    softwareRevisionId: 25bdd65bc580b075ba69b766a4113866403c0036 (09:46 AM)

    softwareRevisionDate: 2017-04-13 21:53:20 +0300 (09:46 AM)

    uuid: f0a57bf559c4a1aa19a89c1f7a9cf3ef (09:46 AM)

    caps: 0,0,255,5 (09:46 AM)

    frequency: EU (09:46 AM)

    deviceRelaxDelay: 15 (09:46 AM)

    statistics: None (09:46 AM)

        backgroundRSSI: None (09:46 AM)

            channel1: 173 (09:47 AM)

            channel2: 179 (09:47 AM)

            channel3: 127 (09:47 AM)

        RFTxFrames: 0 (09:46 AM)

        RFTxLBTBackOffs: 0 (09:46 AM)

        RFRxFrames: 0 (09:46 AM)

        RFRxLRCErrors: 0 (09:46 AM)

        RFRxCRC16Errors: 0 (09:46 AM)

        RFRxForeignHomeID: 0 (09:46 AM)

        priorityRoute: None (09:46 AM)

            dstNodeId: None (09:46 AM)

            routeType: None (09:46 AM)

            speed: None (09:46 AM)

            hops: None (09:46 AM)

    homeName: (2019-07-30)

    homeNotes: (2019-07-30)
1 Like


5.34 seems to be OK (based on your steps). But now it isn’t active anymore.

Probably you went: 5.27/40196 --> 5.33/40196 --> 5.34/40196

And @leif went: 5.27/40196 --> 5.36/40196

See here:

You can also view them (active or incative) here.

I don’t want to confuse anyone here, why the 5.27, 5.33, 5.34, 5.36 are now shown as “inactive or hidden”, probably only zwave.me knows it. (6-7 weeks ago, they were “active”).

But (above picture) is the only plausible explanation why some have 5.34 and others 5.36.