VisaScope module False in Chipwhisperer 3.5.4

Hi,

i am trying to connect Agilent scope mso8064A. Chipwhiperer V2 (chipwhisperer-0.12RC1) software is connected my scope with python 2.7.6. Other python versions not working. i’ve tried all versions.
PyVisa and other modules have been installed in my PC. Chipwhisperer-0.12RC1 connect my scope, just analyzer is not working in python 2.7.6. This is why, i am using Chipwhisperer 3.5.4 analyzer in python 2.7.9.
But i want to use Chipwhisperer 3.5.4 Capture , too. Chipwhisperer 3.5.4 gives this :

what am i missing? all drivers installed, scope is connected i saw keysight connection expert. :question:
Thank you.

Bahar.

It looks like class VisaScopeInterface_MSO54831D(VisaScope) is not marked as a plugin in file mso54831D.py.
Change to class VisaScopeInterface_MSO54831D(VisaScope, Plugin) and see what happens.

Also add this line to the top of the file:
from chipwhisperer.common.utils.pluginmanager import Plugin

Hi aziesemer,

thank you for reply. I changed but still i got some errors:
and i changed dso1024a.py file, too.
MSO54831D.py file (edited):


dso1024a.py: (edited)


Visascope.py: (never edit)


and i got this errors:

Regards,
Bahar.

In the new API the initialization of the parameters is mandatory.
Try to change these lines in your visascope_interface/_base.py:

        {'name':'X-Scale', 'key':'xscale', 'type':'list', 'values':self.xScales, 'value':self.xScales.keys()[0]},
        {'name':'Y-Scale', 'key':'yscale', 'type':'list', 'values':self.yScales, 'value':self.yScales.keys()[0]},
        {'name':'Y-Offset', 'key':'yoffset', 'type':'float', 'step':1E-3, 'siPrefix': True, 'suffix': 'V', 'value':0},
        {'name':'X-Offset', 'key':'xoffset', 'type':'float', 'step':1E-6, 'siPrefix': True, 'suffix': 'S', 'value':0},
        {'name':'Download Offset', 'key':'xdisporigin', 'type':'int',  'limits':(0,1E9), 'value':0},
        {'name':'Download Size', 'key':'xdisprange', 'type':'int', 'limits':(0,1E9), 'value':0},

Did the above solution work for you?

Ok, I finnaly got it up and running. I just don’t have the scope to test.
The code is:

def __init__(self):
    ScopeTemplate.__init__(self)

    scopes = pluginmanager.getPluginsInDictFromPackage("chipwhisperer.capture.scopes.visascope_interface", True, False)

    self.params.addChildren([
        {'name':'Scope Type', 'key':'type', 'type':'list', 'values':scopes, 'value':scopes[VisaScopeInterface_MSO54831D._name], 'action':self.setCurrentScope_act, 'childmode':'parent'},
        {'name':'Connect String', 'key':'connStr', 'type':'str', 'value':''},
        {'name':'Example Strings', 'type':'list', 'values':['', 'TCPIP0::192.168.2.100::inst0::INSTR'], 'value':'', 'action':self.exampleString},
    ])
    self.params.init()
    self.scopetype = None
    self.setCurrentScope(self.findParam('type').getValue(type))

def exampleString(self, param):
    self.findParam('connStr').setValue(param.getValue())

def setCurrentScope_act(self, param):
    self.setCurrentScope(param.getValue())

def setCurrentScope(self, scope, update=True):
    self.scopetype = scope
    if scope is not None:
        self.scopetype.dataUpdated.connect(self.newDataReceived)
        self.params.append(self.scopetype.getParams())

Full fix submitted here: github.com/newaetech/chipwhisperer/pull/71

Yes! That’s the solution. I will test it Agilent Scope next Tuesday in lab. :mrgreen:

Visa Scope enabled:

Plugin enabled: i.imgur.com/bQZq1Wt.png

Thank you so much.

i tested with scope actually connected but suddenly disconnected because of ascii or binary error.

InvalidBinaryFormat: Unrecognized binary data format: Could not find valid hash position

python 2.7.9 and pyVisa 1.8