Quantcast
Channel: The ever-expanding world of sigrok blogs
Viewing all 215 articles
Browse latest View live

New protocol decoder: Avago ADNS-5020


Maynuo M9812 now supported

$
0
0

We're happy to announce that libsigrok now supports the Maynuo M9812 digital load.

The driver was contributed by Aurelien Jacobs, thanks a lot!

It was written in a pretty generic way so that it probably also supports many of the other devices in the Maynuo M97 series of devices.

If you are able to test one of the other devices in that list, please let us know!

The hardware is attached via a (virtual) serial port and communication happens via a protocol on top of Modbus RTU (as documented in the user's guide)

There are also a bunch of teardown photos (plus links to the relevant ICs and their datasheets) of the device on the wiki page, if you're interested in that kind of stuff.

libsigrokdecode 0.3.1 released!

$
0
0

We're happy to announce that libsigrokdecode 0.3.1 has been released.

You can download the libsigrokdecode-0.3.1.tar.gz source tarball from sigrok.org/download as usual.

This is mostly a bugfix-release, the C library API was not changed. This means existing frontends that work with / are linked against libsigrokdecode 0.3.0 will continue to work just fine, without requiring relinking or recompiling.

However, some of the protocol decoders' output changed in ways which are not compatible with the state of the decoders in the last libsigrokdecode release. This means, if you're using any scripts to parse decoder output, or if you have any "private" protocol decoders that stack on top of one of those shipped with libsigrokdecode, you will have to do some adaptations. You're also encouraged to submit such decoders to be included in libsigrokdecode proper, of course!

In addition to all kinds of improvements and bugfixes in existing protocol decoders (PDs), you're probably most interested in what new protocol decoders are now supported (backported from git HEAD). So here's the list:

  • adns5020: Bidirectional command and data over an SPI-like protocol
  • am230x: Aosong AM230x/DHTxx/RHTxx humidity & temperature sensor
  • arm_etmv3: Decode ETM instruction trace packets
  • arm_itm: Trace data from Cortex-M / ARMv7m ITM module
  • arm_tpiu: Filter TPIU formatted trace data into separate streams
  • eeprom24xx: 24xx series I²C EEPROM protocol
  • jitter: Retrieves the timing jitter between two digital signals
  • mdio: Half-duplex sync serial bus for MII management between MAC and PHY
  • mrf24j40: IEEE 802.15.4 2.4 GHz RF tranceiver chip
  • nrf24l01: 2.4GHz transceiver chip
  • pwm: Analog level encoded in duty cycle percentage
  • rfm12: HopeRF RFM12 wireless transceiver control protocol
  • spdif: Serial bus for connecting digital audio devices
  • stepper_motor: Absolute position and movement speed from step/dir
  • swd: Two-wire protocol for debug access to ARM CPUs
  • tca6408a: Texas Instruments TCA6408A 8-bit I²C I/O expander
  • timing: Calculate time between edges

This adds up to currently 54 supported PDs in total.

Please check the libsigrokdecode NEWS file for the full list of user-visible changes in this release. As always, we're happy about bug reports, feature suggestions, comments about which protocol decoders you'd want supported next, or even better — patches :)

Happy decoding!

New protocol decoder: Jitter

$
0
0

libsigrokdecode has had support for the jitter protocol decoder for a while now (it is already shipped with the recently-released libsigrokdecode 0.3.1), but this hasn't been officially announced yet, so here goes.

The decoder allows you to retrieve the timing jitter between two digital signals. This can be useful for a number of things, e.g. finding jitter/delay between a sender and receiver (be it wired or over some form of wireless communication), or for debugging your firmware interrupt setup by checking how much jitter you have between multiple consecutive invocations of the interrupt handler that should in theory always be equally spaced.

We also added a small test-case in our sigrok-test repository so we can ensure that the PD works fine (and continues to do so upon changes).

This protocol decoder has been contributed by Sebastien Bourdelin, thanks a lot!

New protocol decoder: Stepper motor

$
0
0

Another protocol decoder that hasn't had an official announce yet is stepper_motor, a PD which decodes speed and position of a stepper motor.

The PD takes a "step" and "direction" pin as input.

You can select either steps or millimeters as unit for the decoder output.

As usual we also have a few sample dumps in the sigrok-dumps repository, and a few test-cases in sigrok-test.

The decoder was contributed by Petteri Aimonen, thanks a lot!


 

KERN scale series supported

$
0
0

We're happy to announce that libsigrok now supports various weighing scales from KERN & SOHN GmbH.

The new kern-scale driver currently supports (and was tested on) the KERN EW 6200-2NM scale and all scales from the series which have the same protocol.

The scale can report the currently measured values (both unstable and stable ones) via the RS232 cable it ships with.

The protocol is a simple (14- or 15-byte) packet-based ASCII protocol containing the measured value, the unit (gram, ounce, etc.) and an indicator of whether the measured value is stable or not.

Support for other KERN scales with a different protocol can be added easily. Please let us know if you are able to test on other devices!

Usage example:

 $ sigrok-cli -d kern-ew-6200-2nm:conn=/dev/ttyUSB0 --samples 10
 Mass: 26.920000 g
 Mass: 26.920000 g
 Mass: 134.600006 ct UNSTABLE
 Mass: 134.600006 ct UNSTABLE
 Mass: 134.600006 ct UNSTABLE
 Mass: 134.600006 ct UNSTABLE
 Mass: 134.600006 ct
 Mass: 134.600006 ct
 Mass: 134.600006 ct
 Mass: 134.600006 ct

 

New protocol decoder: Microchip MRF24J40

$
0
0

We're happy to announce that libsigrokdecode supports yet another new protocol decoder: mrf24j40.

This PD decodes the SPI-based protocol of the Microchip MRF24J40, an IEEE 802.15.4 2.4 GHz RF tranceiver chip.

As usual we also have a few sample dumps in the sigrok-dumps repository, and a few test-cases in sigrok-test.

The decoder was contributed by Karl Palsson, thanks a lot!

Hung-Chang DSO-2100 supported

$
0
0

We're happy to announce that libsigrok now supports another PC oscilloscope, the Hung-Chang DSO-2100 (also sold under different brand names such as Voltcraft or Protek).

This is a 1999-era parallel-port based device with 30MHz analog bandwidth and 100MS/s samplerate.

The hardware (see also PCB shots) is somewhat non-trivial, it uses a QuickLogic FPGA, an Analog Devices DSP/microcontroller, some SRAM and Harris/Intersil ADCs. It also has some other properties or quirks you might be interested in.

The driver was contributed by Daniel Glöckner, thanks a lot!

Since this is the first parallel-port device in libsigrok, the build system also gained detection support for libieee1284, a cross-platform parallel port access library that the driver uses.

 


GW Instek GDS-800 series supported

$
0
0

We're happy to announce that the GW Instek GDS-800 oscilloscope series is now supported in libsigrok.

These are devices ranging from 60MHz bandwidth up to 250MHz, with a samplerate of 100MSa/s (or 25GSa/s for equivalent-time sampling).

They have RS232 connectivity per default, but there are also options to extend them with GPIB or USB ports. A (publically documented) SCPI-based protocol is used for the communication.

The scopes are also sold under the Voltcraft brand name (and the code was actually tested on a Voltcraft DSO-6060C).

The driver was contributed by Martin Lederhilger, thanks a lot!

 

New protocol decoder: Modbus

$
0
0

Yes, it's that time of the week again — libsigrokdecode supports yet another protocol decoder since somewhat recently: modbus.

In the current state the PD stacks on top of the UART decoder and decodes the Modbus RTU protocol. Support for e.g. Modbus ASCII may be added later (to the same PD), possibly also Modbus TCP or other variants (as an extra decoder).

Check the PD's wiki page or Wikipedia for some more info on Modbus in general.

As always, we have a few example files in the sigrok-dumps repo and some test-cases in the sigrok-test repo.

The decoder was contributed by Bart de Waal, thanks a lot!

 

New protocol decoder: Qi

$
0
0

Another somewhat recently added protocol decoder for libsigrokdecode is the qi PD.

This PD decodes demodulated data streams used by the Qi standard for communication from the receiver to the charging station. You can read more about the Wireless power consortium's Qi standard on Wikipedia.

As always, we have a few example files in the sigrok-dumps repo and some test-cases in the sigrok-test repo.

The decoder was contributed by Josef Gajdusek, thanks a lot!

Velleman DVM4100 support

$
0
0

libsigrok now supports the Velleman DVM4100 multimeter, a 6000 counts DMM with USB connectivity.

This DMM uses the Dream Tech International DTM0660 chip, which has a similar protocol as the Fortune Semiconductor FS9721_LP3 and can even be put into a mode that exactly matches the FS9721 protocol apparently (which also means it might be used in a lot more DMMs than we currently know of).

The DTM0660 protocol parser was contributed by Matthieu Gaillet, thanks a lot!

In addition to the Velleman DVM4100 this parser is also used in the PeakTech 3415 DMM, so it's very likely that this device is now also supported. Since that's untested though, we'd be happy to hear from users that actually own the PeakTech 3415!

 

sigrok-firmware-fx2lafw 0.1.3 released!

$
0
0

We're happy to announce the sigrok-firmware-fx2lafw 0.1.3 release. This is an open-source firmware that allows you to use any of the popular Cypress FX2 based devices as logic analyzers.

The source code and pre-built firmware files are available from the usual place:

This release doesn't contain any functionality changes in the firmware per se. There have been some minor documentation updates, and some not-so-minor build system improvements (thanks to Daniel Elstner!), though. The NEWS file contains some more details.

The most important change is probably the addition of two new firmware files for FX2-based devices which have the new "official" sigrok/fx2lafw USB VID/PID pairs in their I²C EEPROM:

  • 1D50:608C: fx2lafw-sigrok-fx2-8ch.fw
  • 1D50:608D: fx2lafw-sigrok-fx2-16ch.fw

These two VID/PID pairs are available for devices that use a Cypress FX2(LP) chip directly as 8-channel or 16-channel logic analyzer, and use the respective USB-based protocol. They are not meant for other devices which just happen to also have an FX2 (e.g. in addition to an FPGA) and/or devices that use a different USB-based protocol.

The USB VID/PIDs are allocated for sigrok/fx2lafw via the awesome "Open registry for community / homebrew USB Product IDs" service of the Openmoko project.

The new firmware files require the soon-to-be-released libsigrok>= 0.4.0 (or current git HEAD). The Windows sigrok-cli installer and PulseView installer (nightly builds) we provide already include these firmware files and a libsigrok version that is new enough.

 

sigrok at the Chaos Communication Congress (32C3)

$
0
0

As in previous years various sigrok developers will be at the Chaos Communication Congress (32C3) in Hamburg, Germany. The conference takes place December 27th to 30th, 2015.

There will be a sigrok assembly (on all 4 days) with a few tables and chairs to allow for sigrok hacking and development planning, various demos and Q&A for visitors, and so on.

Apart from sigrok hacking the conference also features the usual set of awesome talks related to security, hardware hacking, and lots of other interesting topics that you shouldn't miss.

If you're interested in sigrok as user or developer, please drop by and say hello. Bring your gear (if possible) for reverse engineering and driver writing purposes. Chat with us, give us your suggestions which features you'd like to see, which devices you want to be supported, which protocol decoders you'd like to have, or even help us write some drivers/decoders!

 

New protocol decoder: MDIO

$
0
0

libsigrokdecode supports yet another protocol decoder since a while ago (which hasn't seen an official announce yet, though): mdio.

This is a PD for decoding the Management Data Input/Output (MDIO) protocol, sometimes also referred to as Serial Management Interface (SMI) or Media Independent Interface Management (MIIM).

As always, we have a few example files in the sigrok-dumps repo and some test-cases in the sigrok-test repo.

The decoder was contributed by Aurelien Jacobs, thanks a lot!

 


New logo: Works with sigrok

$
0
0

We've created a new sigrok-related logo that manufacturers or resellers of devices can use to advertise sigrok-compatible products: the "Works with sigrok" logo.

If you're developing or selling logic analyzers, oscilloscopes, multimeters, or any of the other supported device types, you can use this logo under the following conditions:

  • Your device must be fully supported in the current git master version of libsigrok.
  • The protocols used by your device must be publicly documented.
  • If your device requires additional files at runtime, redistribution of these must be permitted.
  • You must not imply any endorsement of your product by us.

See the Advertising sigrok compatible products wiki page for details.

We're happy to announce that the first user of the new logo is Hobby Components, who are selling FX2-based logic analyzer devices.

What's more, they're now also pre-configuring their FX2-based 8-channel logic analyzers (e.g. the Hobby Components HCTEST0006) to contain the new official sigrok VID/PID pairs for fx2lafw, so their devices will show up as "sigrok FX2 LA (8ch)" in e.g. PulseView and (only) work with our fully open-source firmware and software stack.

 

LeCroy LogicStudio support

$
0
0

libsigrok now supports yet another new device. This time: the LeCroy LogicStudio.

This is a 16-channel logic analyzer with up to 1GHz sampling rate (depending on the number of channels used).

The device features a Xilinx Spartan-6 XC6SLX16, and a Cypress FX2 that takes care of the USB data transfer.

There's also an interesting mix of triggering facilities that the device supports, see the protocol docs for details.

In order to use the logic analyzer you need the respective firmware/bitstream files, which you can extract from the vendor software using the sigrok-fwextract-lecroy-logicstudio script from our sigrok-util repository.

The driver was contributed by Tilman Sauerbeck, thanks a lot!

 

New protocol decoder: USB request

$
0
0

libsigrokdecode has received support for another, quite interesting protocol decoder recently: usb_request.

This PD stacks on top of the usb_packet decoder, which in turn stacks on top of usb_signalling.

It decodes USB transactions / requests from the packets received from the usb_packet decoder:

 $ sigrok-cli -i olimex_stm32-h103_usb_hid.sr \
   -P usb_signalling:dp=DP:dm=DM,usb_packet,\
   usb_request
 BULK in: [ 00 01 00 00 ] : ACK
 BULK in: [ 00 01 00 00 ] : ACK
 BULK in: [ 00 01 00 00 ] : ACK

As usual, there are a bunch of sample files in sigrok-dumps, and some test-cases in the sigrok-test repo. Further files and test-cases are welcome!

In addition to emitting annotations (for displaying in GUIs), the PD also supports (currently) one SRD_OUTPUT_BINARY output type named "pcap".

This will emit the decoded data in the widely-used PCAP format, which you can then further process in other tools such as Wireshark:

 $ sigrok-cli -i olimex_stm32-h103_usb_hid.sr -P usb_signalling:dp=DP:dm=DM,usb_packet,\
   usb_request -B usb_request=pcap > foo.pcap

Of course you could also pipe the PCAP data directly into Wireshark as well:

 $ sigrok-cli -i olimex_stm32-h103_usb_hid.sr -P usb_signalling:dp=DP:dm=DM,usb_packet,\
   usb_request -B usb_request=pcap | wireshark -k -i -

The protocol decoder was contributed by Stefan Brüns, thanks a lot!

Korad KAxxxxP series support

$
0
0

We're happy to announce that libsigrok now supports the Korad KAxxxxP series of programmable power supplies, including the popular Korad KA3005P.

These are all 1-channel lab power supplies with various different max. voltage and current properties.

Velleman also resells them under the name PS3005D and LABPS3005D, as does Farnell/Tenma using their usual model names of 72-xxxx. See the Korad KAxxxxP series wiki page for details. If you know of other vendors who resell these devices, please let us know.

The protocol used by the power supplies is documented on our wiki page, together with various quirks and bugs in the device firmware and/or vendor documentation.

If you own a not-yet-supported device from this series, you can easily add support by telling the libsigrok driver about the "ID" that the power supply returns upon the "*IDN?" command, e.g. like this. Please send us a patch if you do so!

The driver was contributed by Hannu Vuolasaho, thanks a lot!

 

libserialport 0.1.1 released!

$
0
0

We're happy to announce that libserialport 0.1.1 has been released!

libserialport is a portable, LGPLv3+ shared library written in C which allows users to talk to serial port devices on various OSes (including Linux, Windows, Mac OS X, FreeBSD, and Android).

The 0.1.1 release is compatible with 0.1.0 in that no existing APIs have been changed or removed; new ones have been added, however:

  • sp_get_port_description(): Obtain a user friendly port description.
  • sp_get_port_transport(): Obtain the underlying transport type.
  • sp_get_port_usb_bus_address(): Obtain the USB bus number & device address.
  • sp_get_port_usb_vid_pid(): Obtain the USB VID and PID.
  • sp_get_port_usb_manufacturer(): Obtain the USB manufacturer string.
  • sp_get_port_usb_product(): Obtain the USB product string.
  • sp_get_port_usb_serial(): Obtain the USB serial number string.
  • sp_get_port_bluetooth_address(): Obtain the Bluetooth MAC address.
  • sp_blocking_read_next(): Read bytes from the specified serial port, returning as soon as any data is available.

On Linux, the libudev requirement has been dropped, the library now has no additional requirements on all platforms.

FreeBSD has gained serial port enumeration support.

Additionally, there have been quite a number of bugfixes for various issues. Please read the NEWS file (and/or the git log) for details.
 
The tarball (libserialport-0.1.1.tar.gz) can be downloaded from sigrok.org, as usual.

If you notice any bugs, please report them at sigrok.org/bugzilla, thanks!

 

Viewing all 215 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>