ChipShouter - fault_trigger_glitch and fault_temp_sensor

Hi,

I am in the midst of my first attempts with the ChipShouter, and I’m using a CW Lite for trigger. For some reason I keep getting fault_trigger_glitch fault. I am not sure how to address that at the moment. Here’s my code:

for i in range(0, 1):
    
    scope.glitch.ext_offset = 2000
    scope.glitch.repeat = 1
    
    cs.armed = 0
    cs.clr_armed = 1
    
    scope.io.glitch_lp = True
    scope.arm()
    
    shift_jtag_pwd_under_reset(jprog, FALSE_PASSWORD, attempts=1, reset=True) # Trigger toggled here
    
    scope.io.glitch_lp = False

    if ret:
        print('Timeout - no trigger!')

My CS info:

api_version         = 0.0.0
armed               = False
voltage = 
    set      = 250
    measured = 21
pulse = 
    width        = 150
    repeat       = 5
    deadtime     = 20
    actual width = 160
state               = fault
faults_current      = []
faults_latched      = ['fault_trigger_glitch']
temperature_mosfet  = 29
temperature_diode   = 27
temperature_xformer = 34
arm_timeout         = 2
hwtrig_term         = False
hwtrig_mode         = False
emode               = False
mute                = False
absent_temp         = 1
pat_enable          = True
pat_wave            = 1111111111111111111111111111111111111111111111
reset_config        = 0
reset               = False
board_id            = .............

boot_enable         = 0

Update: Managed to get the device working. If someone is interested, I will post a minimal working script.

However what happens now is that the CS latches fault_temp_sensor very often. Glitching frequency is about 2 times per second; after about a minute I get that temperature error. Is there a minimal glitching rate? Two glitches per second appear to be very limited, I hope that’s not a hardware limitation. I am not using air cooling.

Here’s the device setup. Take a look at the temperature fields:

api_version         = 0.0.0
armed               = False
voltage = 
    set      = 444
    measured = 20
pulse = 
    width        = 500
    repeat       = 1
    deadtime     = 10
    actual width = 160
state               = fault
faults_current      = ['fault_temp_sensor']
faults_latched      = ['fault_trigger_glitch', 'fault_temp_sensor']
temperature_mosfet  = 65535
temperature_diode   = 65535
temperature_xformer = 65535
arm_timeout         = 2
hwtrig_term         = False
hwtrig_mode         = False
emode               = True
mute                = False
absent_temp         = 1
pat_enable          = False
pat_wave            = 11111111111111111111111111111111111111111111110
reset_config        = 0
reset               = False
board_id            = ..............

boot_enable         = 0

Hi,

You’ll need to use trigger_safe to avoid faulty temperature readings: ChipSHOUTER® Python API Documentation — ChipSHOUTER 1.0.0 documentation

EDIT: Also, what ChipSHOUTER firmware verison are you on? The original trigger_safe implementation was bugged, but has since been fixed. I can get some new firmware to you if necessary.

Alex

Hi,

I tried using trigger_safe in the following manner:
prepare_CS()

while True:
    try:
        while not cs.trigger_safe:
            continue
        
        cs.voltage = random.randint(400, 450)
        scope.glitch.ext_offset = random.randint(100, 400000)

        scope.io.glitch_lp = True
        scope.arm()

        ret = scope.capture()
        scope.io.glitch_lp = False

        if ret:
            print('Timeout - no trigger!')
            
    except Exception as e:
        cs.armed = 0
        print('CS Failure!')
        time.sleep(5)
        prepare_CS()

It does not work as I thought it would, I still get temperature errors. Can you post a minimal example of correctly triggering the chip shouter?

Also, please let me know how to find firmware version. I could not find it in the Python API docs.

Thanks

Yeah, that code looks okay. You can get the firmware version via cs.board_id. It’ll be the part after the colon.

Alex

Hi,

The firmware version is ‘GKHZ2N:2.0.1\n’. I am seeing a lot of fault_temp_sensor faults, my glitch setup is about once every 2 seconds.


api_version         = 0.0.0
armed               = False
voltage = 
    set      = 450
    measured = 20
pulse = 
    width        = 400
    repeat       = 5
    deadtime     = 10
    actual width = 160
state               = fault
faults_current      = ['fault_temp_sensor']
faults_latched      = ['fault_trigger_glitch', 'fault_temp_sensor']
temperature_mosfet  = 65535
temperature_diode   = 65535
temperature_xformer = 65535
arm_timeout         = 2
hwtrig_term         = False
hwtrig_mode         = False
emode               = True
mute                = False
absent_temp         = 1
pat_enable          = False
pat_wave            = 11111111111111111111111111111111111111111111110
reset_config        = 0
reset               = True
board_id            = GKHZ2N:2.0.1

boot_enable         = 0

@Alex_Dewar Hi, can you let me know if I am using the most recent CS firmware? I am experiencing a lot of faults, and the temperature values do not seem right.

Thanks