Skip to content

EEM Flashing issues when power cycling via barrel connector #98

@thomasmountney-oxionics

Description

Brief description

Flashing Fastino via bit-banging is unreliable if power cycling by plugging the barrel connector and becomes reliable when cycling using a mains switch instead.

Details

We see issues when flashing Fastinos via bit banging through a Kasli SOC using the flash_fastino.py script (https://github.com/quartiq/kasli-i2c/blob/master/flash_fastino.py). I find that after repeated power cycling using the barrel connector the connection between Kasli and Fastino degrades causing arbitration and NACK errors. Eventually the script appears to not be able to complete. This is solved by power cycling at the wall, allowing both the power adapter and Kasli to go live together.

We are concerned that this might also effect digital operation with other EEMs, though we don't have a clear example of that at this time.

How to reproduce

  1. Set up a Kasli-Soc v1.0 with a Fastino v1.2.1 connected on any EEM
  2. Power on the board by plugging a XP Power AKM65US12C2 (12 V, class II) power supply to the front panel barrel connector
  3. Follow the flashing Fastino flow found at the bottom of the page - https://github.com/quartiq/fastino
  4. Power cycle the Kasli repeatedly using the barrel connector and run the flash_fastino.py script between power cycles
    • Leave 10+ seconds between power cycles for capacitors to discharge

Repeat step 4 until NACK errors occur. Anecdotally, the arbitration and NACK errors, appear to become more frequent with more power cycles

  1. Power cycle kasli by leaving the XP Power AKM65US12C2 connected via the barrel connector and switching the mains socket the supply is connected to.
  2. Power cycle the Kasli repeatedly using the mains switch and run the flash_fastino.py script between power cycles
    • Leave 10+ seconds between power cycles for capacitors to discharge

There now are no errors

Summary

When running the flash Fastino script to bit bang the gateware through a Kasli SOC, I see errors when power cycled multiple times via the barrel connector. The issue is solved by power cycling at the wall, allowing the power adapter and Kasli to go live together.

Flash_fastino script - https://github.com/quartiq/kasli-i2c/blob/master/flash_fastino.py

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions