Wednesday, 19 September 2018

The weird and wonderful world of the WS1361 sound level meter USB driver

WS1361 / HY1361 sound level meter

When I had the need to build an applause-o-meter, I thought I'd go the easy route and buy a cheap sound pressure meter with an USB interface. What could possibly go wrong?
It is bigger than it looks here

About the meter

As seen so often, the identical meter appears under several manufacturer labels:
  • Hongyan / Hong Yan HY1361
  • Wensn WS1361
  • Unmarked HY 1361 (My device)
There is also a model with an Card slot on the market (WS1361C / HY13611). I didn't need recording, but I'll crack the device open some time to see if I can fit a SD-module.

I don't know any details about these meters:

  • Benetech GM1356 digital usb noise level meter
  • CHEER GM1356 digital usb noise level meter
  • Sinokit SK1356 
These look like the WS1361 with the exception that they have no card slot. The WS1361 card slot is sealed with the QC label. Please let me know if you have one of these meters. They might run the same protocol.
Then again, the Tondaj SL-814 also looks similar, but runs a serial protocol on what looks like a USB-Port. But it needs a cable with a prolific pl2303 chip to connect to usb. So a similar appearance can be misleading.


The tripod mount is a nice touch, especially since the case does creak when not handled carefully. Apart from better scaling on the LCD bar graph, I can't see any reason why I should change the ranges from the 30-130db setting. Neither the resolution on the PC, nor on the LCD changes like we're used to see on multimeters.

USB Driver issues

After ordering the meter, I did a little research and prepared for the worst: No signed drivers, proprietary protocol.... a nightmare.
Things could have been so easy if the meter had presented itself as a serial interface.

The device manufacturer's web site might be this one. With installation instructions here. And a software download page here.
The instructions include disabling driver signature enforcement. Not such a great idea.
So I decided to have a closer look.

USB Details

Ok, so the important bits are:
Vendor ID: 16C0
Product ID: 05DC

This Vendor ID is registered to voti.nl. Further research on shows, that the product ID had been reserved as "shared ID for use with libusb". Not a great choice for a consumer product. But then again not really a problem.

The same VID/PID seems widely used for the USBasp Atmel programmer (ISP).
That also explains why the .inf file in the driver is called usbasp.inf and why the .cat file's signature does not match the .inf file. Probably because whe whole driver set has been "borrowed" from there and modified.

New drivers?

While the sound meter's driver, as well as older drivers I found relied on libusb-32, the later versions available for the USBasp use libusbK in a version from 2015. Unfortunately the .inf is also not signed there.

Different approach - Zadig

So what it all boils down to is, that the above Vendor/Product ID pair needs to be associated with a generic usb driver. The driver disc that came with the meter had libusb-win32 on it.
There is another option beside having a signed driver. This is well known to everyone who tried using an RTL-SDR receiver on windows. - Zadig.
There are numerous versions of this floating around. Get the latest version from the Zadig web site.
Zadig
On my system, the WS1631 is instantly recognized. As the SoundLink software appears to rely on libusb-win32, choose that as the target driver for the WS1361. Zadig installs the driver without any complaints.

Success

And sure enough, the SoundLink software is happy with that:
SoundPCLink Software
As with many cheap Chinese instruments, the software ist very limited in it's abilities. So based on the fact that it uses libusb-win32, it should be possible to write my own code. There are some hints in the links below.

Intersting WS1361 links:






25 comments:

  1. Thanks for sharing your project experience. Did you consider the SL-814 and the info provided by sigrok (https://sigrok.org/wiki/Tondaj_SL-814), doing a small python script like they show? I am thinking of getting the SL-814 to do a similar dB logging application.

    this SL-814 (although there's no USB cable with the Prolific chip included, which could be a problem if they're hard to find):
    https://www.aliexpress.com/item/Nicety-SL-814-30-130dBA-Portable-Digital-Sound-Noise-Audio-Level-Meter-Measuring-Decibel-Pressure-Logger/32913812270.html

    ReplyDelete
    Replies
    1. I did not really do a proper market research and simply went for the cheapest USB connected meter Banggood had on offer. If I had to get another one, I'd certainly go for a model that is supported by sigrok. The SL-814 is not too expensive, but it's downside is, that it does not seem to go below 40db. This is not an issue for an applause-meter, but the hum of a refrigerator or other household noises fall well below 40db.

      Delete
    2. Do you have any idea of where if faailing for me.
      Took down the 2 soundlink version on below link 12 feb 2022 as main link was dead..
      and have done the Zadic 2.4 Libusb driver update.
      on the 64 bit variant Im able to connect and it says connected at the bottom, but Im not getting any running values,and it is conneected as I can adjust the setting and can see it changes on the decibel display.. fx the clock or the span- (its like Im missing some button "start logging?" on the interface.. how does you start the logging.. is it automatic.?

      On the 32 bit version and when opening it.. im just getting, a windows-connected cycling sound like it connecting and disconnecting again and again, anf the small info box in the program does not show connected at any moment like it does on the 64bit version.

      Delete
    3. Hi, i have the same issue: The 32bit version does not connect at all. The 64bit version connects, but does not log data. When clicking on "online records" it shows one correct value, but then it sais <<'66.4' is not a valid floating point value.>> and stops recording. I am using Windows 11.

      Has anyone any further idea?

      Is there an alternative software i can use?

      Many thanks, Sebastian

      Delete
    4. Hi, i found a working version of the software here: https://www.wensn.com/?download/73.html (download did not work with chrome - but firefox worked!). Best regards

      Delete
  2. Hi Andreas, some good info there. Just to clarify, does the non SDCard model still have the slot (but with a sticker over it). I see lots of these on eBay. Ideally I want the SDCard, as I want to log outside for 24 hours. These 1361 seem like a good model for both Windows and some Raspberry Pi projects too...

    ReplyDelete
  3. The Benetech GM1356 and its variants 1356 is NOT the same device albeit sharing the same case and design!
    The Vendor ID is 64BD and device ID is 74E3. The protocol is different!

    Both devices the 1361 and 1356 share the same characteristic: the DC output (on the 1356 called PWM output) is UNUSABLE and brings only weird values.

    ReplyDelete
  4. Thanks, you saved me hours. I followed your instructions, used Zadig, selected the right driver and the Soundlink software was all up and running in less than 5 minutes.

    ReplyDelete
  5. And an important question - this 1361 meter is useful and accurate in decibel metering? Does it need a calibration with a new one or it is correct and doesn't needed?

    ReplyDelete
  6. Who download the software. The Page ist 404

    ReplyDelete
  7. hallo,
    bei mir ist die mitgelieferte CD mit der SoundLevel Software nicht lesbar! Kann man die Software downloaden, ich finde nichts!!

    ReplyDelete
    Replies
    1. Did you find the software? I am also interested.

      Delete
    2. https://cloud.mail.ru/public/GjUL/QvcRNypFh

      Delete
    3. Gonna check out your links, as topic-links is dead in the water.
      Batrakov, if this is the HY1361 software.. a big danish hug from me.

      Delete
  8. This device reminds me of that old ABBA song "Tank a Chance On me". Any other Decibel Meter with a USB logging option (that I can find) would cost more than $250. Many of the links above are dead but since I run Linux Mint (vs that other operating system) and there is a GITHUB Python project, I decided to take a chance. Amazon currently has it with a 15% discount available on checkout (and next day delivery :-)

    I suspect the model with the card slot is vaporware ... however it is still advertised on Amazon for an addition $30 and 1 to 2 month lead time.

    ReplyDelete
  9. Hi there,

    I did buy the same unit from Aliexpress, and started struggling as soon I got it out of the box ;)

    I've bought the SD card model, but for some reason, after deleting the cws file from the card, and starting the device again, no new file will ever be written to the card ! I've asked the seller what I should do, but I knew I'd be alone with this device anyway, I've never got an answer...

    The reason why I am using this device is that I want to couple it with another app running on raspbian, called Telraam.

    Telraam enables you to monitor outside traffic, and speed of the traffic.

    creating nice charts like here : https://telraam.net/fr/location/9000003744

    As the traffic generates a lot of noise, I would like to get another chart in there, that would report the number of times a vehicle generates a noise level that is above the regulated limit.

    For now, I did install a win11 VM, running on my unraid server, and got the device to get detected using zadig. But every time an event is detected I'm getting an error message in the app provided with the device.

    I'd rather run a very lightweight debian VM, install the right app and dependencies, and get a log of all the noise activity.

    Ideally, I'd like to only log events that are above xx DB, in such a format:

    Date/time -> XX DB

    That's about it.

    If you got this device to run using linux, and know how to help me getting this achieved, would you be super nice and share the steps with me ?
    Thanks !!!

    ReplyDelete
  10. I try to get this thing to work in VM, so no real concerns about the unsigned driver (really, there is nothgin else than this device running in there).

    I've tried to install the driver under win11VM, and ran into a %VALUE% is not a valid floating point value error message. This happens each time I click on online records...

    I've searched a bit on the internet and it seems the issue is due to an outdated driver. So, as I am using aVM, I bought a 2$ win7 key, installed and registered it, installed the driver again, annnnddddd, I keep getting this error.

    It displays the first volume meter record, adds it to the log (visible in the app) but then I'm getting the error message and it stops working.

    Anyone has a clue how to get rid of this ? In current state, the device is useless.

    I can swap to a debian VM, and run it from there if someone can give me instructions on how to get this running and finish with an export of the DATE/TIME -> Volume levels.

    Thanks !!!!

    ReplyDelete
    Replies
    1. This comment has been removed by a blog administrator.

      Delete
    2. Why do you think the sound level meter shows different values ​​when connected to different power sources?
      From the Power Bank 40db, and from the USB computer 50db.
      https://cloud.mail.ru/public/TTsb/9enTZ47Qa
      I noticed this when I began to monitor data on a PC in the program.

      Delete
    3. does your device power stays on? mine keeps turning off by itself

      Delete
    4. BatrakovSV I have the same problem as you

      Delete
  11. My WS1361 keeps auto power off? Anyone know how to keep it on?

    ReplyDelete
  12. For anyone interested, I've worked on a n oise monitoring script that is published here : it uses the same usb volume meter, but quite some stuff like the ability to inject the information to an influxDB dashboard and view results using grafana : https://github.com/silkyclouds/NoiseBuster

    ReplyDelete
  13. Hi, I have a Wensn WS 1361 sound level meter purchased in 2014, taking a measurement using four 1.5 V AA batteries the value shown on the display is 30 dB. If I remove the batteries and power the sound level meter with the Usb cable, the value measured in the same room at the same ambient noise conditions, varies from 47 to 48 dB !
    Does anyone have an explanation ?

    ReplyDelete
  14. I have a Wensn WS 1361 sound level meter purchased in 2014, and making a measurement in a quiet room using four 1.5 V AA batteries, the value shown on the display is 30 dB.

    If I remove the batteries and power the sound level meter with the Usb cable, the value measured in the same room under the same ambient noise conditions, ranges from 47 to 48 dB !

    Does anyone have an explanation ?

    ReplyDelete