Firmware and Programming Considerations
SYZYGY Peripheral Firmware
SYZYGY peripheral firmware provided by Opal Kelly can facilitate power sequencing for peripheral designers. The SYZYGY specification requires that a pod prevent output of any signal to the carrier until the VIO rail has been detected. The recommended MCU includes analog-to-digital converters that can be used to detect valid voltage levels on the VIO, +3.3V, and +5V supplies. Logic outputs from the MCU can be used to enable circuitry on the pod.
avr-dna-fw contains reference firmware for the ATTiny 44A.
SYZYGY DNA
A SYZYGY peripheral must be loaded with SYZYGY DNA data, which contains the operating requirements for the peripheral. This DNA data is loaded onto the peripherals MCU over I2C commands. Alternatively, it can be baked into the MCU flash file for programming.
The syzygy-tools can be used to generate SYZYGY DNA binary data and combined firmware/DNA programming binaries.
More information on the SYZYGY DNA can be found in the specification.
MCU Programming
The pod MCU may be pre-programmed before PCB assembly, or it can be programmed in-system. Some distributors such as Digi-Key can provide pre-programmed chips using customer-provided firmware.
Although not required, Opal Kelly recommends including a Tag-Connect pogo-pin style programming header on SYZYGY pods for ease of programming and debugging. Tag-Connect does not require a mating connector on the PCB and it uses a minimal amount of area.
An example of the Tag-Connect interface is shown below, circled in red. This footprint accommodates the TC2030-IDC 6-pin interface.
Further information about Tag-Connect can be found here:
https://www.tag-connect.com/