On 06/10/2016 11:40 AM, Neil Armstrong wrote:
> Hi Lars,
> Thanks for your quick reply
> 
> On 06/09/2016 06:13 PM, Lars-Peter Clausen wrote:
>> Hi,
>>
>> Thanks for the update. I also did some work on the what Hubert released this
>> year.
>>
>> Part of this I created a generic software event based session source. It's
>> cross platform and even works on Windows. You can find it here:
>> https://github.com/analogdevicesinc/libsigrok/tree/sr_event
> 
> Great, it's basically how I managed the sync, but I also passed the refill 
> size through the PIPE.
> Having such event sync will make the generic-iio work under Windows.
> 
>>
>> The other thing is that we always need to use the threaded approach. The
>> get_pollfd() is unfortunately conceptually broken and can result in
>> deadlocks and crashes. We going to deprecate this API in libiio since it
>> can't be used safely.
> 
> It's safer for sure.
> 
>>
>> Also have a look at the work-in-progress iio_buffer_cancel() API
>> (https://github.com/analogdevicesinc/libiio/commit/2f00d5ead5f96d025b57af60a1fc17bc2083767f).
>> This was also motivated by the sigrok support so we can interrupt the
>> refill() operation and cancel the thread. The is most important if e.g. the
>> network connection fails in that case we don't want to get stuck in the 
>> thread.
> 
> This will help for these corner cases.
> 
>> And one more thing is support for querying the channel type and modifier
>> from libiio (https://github.com/analogdevicesinc/libiio/tree/channel_type).
>> This allows to remove the rather ugly (and unreliable) regex in the IIO
>> sigrok driver.
> 
> It's clearly better to have this in libiio.
> But we still need a better way to get the sample informations like size or 
> signed.

This is already possible using iio_channel_get_data_format().

> 
> Another good work would be to be able to get float values from libIIO, thus 
> simplifying the applications using libIIO.

Sigrok supports integer analog samples. The problem is pulseview doesn't.
What's necessary is to add C++ bindings for sr_analog_to_float() and then
use that in pulseview rather than blindly assuming that the payload data is
floats.

> 
> For 0.4.0 and 0.3.0 we plan to make a stable driver based on libiio 0.6.0, 
> but for sigrok master I'll be pleased to switch to these enhancements !
> 
> Neil
> 
>> - Lars
>>
>> On 06/09/2016 05:27 PM, Neil Armstrong wrote:
>>> Hi Sigrok community,
>>>
>>> This is a follow-up from the first draft of a Generic IIO driver for Sigrok 
>>> posted at [1].
>>>
>>> Since, I made a backport for the 0.3.0 release and PPA packages to run it 
>>> on current Ubuntu distributions.
>>>
>>> The 0.4.0 version is on-going but our ultimate goal is to have it 
>>> upstreamed part of the official sigrok release.
>>>
>>> The sigrok IIO development is part of the next BayLibre ACME support via 
>>> the IIO infrastructure, to be able to gather measurements from the Host 
>>> instead of the on-device sigrok instance.
>>>
>>> The new repository is https://github.com/baylibre-acme/libsigrok
>>>
>>> IIO development branches are :
>>>  - libsigrok-0.3.x-iio for the 0.3.x branch
>>>  - libsigrok-0.4.x-iio for the 0.4.x branch
>>>
>>> Before rebasing on master, I would like to have a review of the current 
>>> implementation.
>>>
>>> The implementation differs from the previous draft by using channel_group 
>>> instances for each IIO device of a context.
>>> This gives ability to get multiple probes at the same time, but also be 
>>> able to get a single one by disabling the unwanted groups.
>>>
>>> For the next steps, please tell me how I can submit a new draft.
>>>
>>> [1] https://sourceforge.net/p/sigrok/mailman/message/34728951/
>>>
>>> Regards,
>>> Neil
>>>
>>> ------------------------------------------------------------------------------
>>> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
>>> patterns at an interface-level. Reveals which users, apps, and protocols 
>>> are 
>>> consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
>>> J-Flow, sFlow and other flows. Make informed decisions using capacity 
>>> planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
>>> _______________________________________________
>>> sigrok-devel mailing list
>>> sigrok-devel@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/sigrok-devel
>>>
>>
> 


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
_______________________________________________
sigrok-devel mailing list
sigrok-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sigrok-devel

Reply via email to