• PD Buddy Sink Firmware v1.2.2

    clara 6 years ago 0 commits to 1.2 since this release

    A patch release which adds a new LED blink code for when only default USB power is available. The blink code for this is 1 7/8 s on, 1/8 s off.

  • PD Buddy Sink Firmware v1.2.1

    clara 6 years ago 3 commits to 1.2 since this release

    A bugfix release which more accurately sets the current requested when the output is turned off.

  • PD Buddy Sink Firmware v1.2.0

    clara 6 years ago 8 commits to master since this release

    A new minor release, bringing support for Power Delivery 3.0 communication, programmable power supplies, requests from voltage ranges, new methods of specifying the required power level, and jumping to the STM32 DFU bootloader.


    • Requests can be made from programmable power supplies, allowing voltages to be requested at 20 mV increments from a wide range (up to 3-21 V).
    • Configuring a voltage range with the new set_vrange command provides a fallback if the preferred voltage is unavailable.
    • Higher or lower voltages from a range may be preferred; this can be set with toggle_hv_preferred.
    • The amount of current the device requests can be set as a power (set_p) or a resistance (set_r), as well as a current. These values are taken as constant over the configured voltage range.
    • Firmware upgrades are easily possible via Setup mode. Running the new boot command causes the firmware to run the microcontroller’s built-in DfuSe bootloader.

    For this release, the firmware was reorganized as a library for USB Power Delivery and an application using that library. The library is released under the Apache License, Version 2.0, and the application is still released under the GNU General Public License, Version 3.0. Both parts of the firmware are still kept in this repository, but this may change at some point.

  • PD Buddy Sink Firmware v1.2.0-dev

    clara 6 years ago 32 commits to master since this release

    A development release for version 1.2.0.


    • Firmware can now make requests from USB PD 3.0 programmable power supplies
    • Basic support for voltage ranges was added (constant current only, HV_Preferred flag works)
  • PD Buddy Sink Firmware v1.1.0

    clara 6 years ago 126 commits to master since this release

    A new minor release, bringing the ability to do Power Delivery communications in Sink mode. Two new commands were introduced to support this:

    • output: Enable or disable the power output, or read its current status.
    • get_source_cap: Print the advertised capabilities of the Power Delivery source.

    To match the old behavior, the power output is disabled by default in Sink mode, and remains disabled unless explicitly enabled by the user. If the output is enabled, the configured power is negotiated immediately and made available on the output connector. Negotiation is then done every time new configuration is written to flash, so that new power can be acquired quickly and easily.

  • PD Buddy Sink Firmware v1.0.1

    clara 7 years ago 149 commits to master since this release

    A minor bugfix release which improves the handling of invalid voltages and currents in the configuration interface.

  • PD Buddy Sink Firmware v1.0.0

    clara 7 years ago 150 commits to master since this release

    Initial firmware release for the PD Buddy Sink.


    • Two boot modes, Setup and Sink, selected by the Setup button’s state at startup.
    • Sink mode implements a simple USB Power Delivery sink, aiming for full compliance with the USB Power Delivery Specification, Revision 2.0, Version 1.3.
    • Requests the configured voltage and current if available, or a safe, low power request otherwise.
    • Provides power on the output connector only when an explicit contract is in place for the configured voltage and current.
    • Optional GiveBack support allows power supplies to temporarily remove power from the PD Buddy Sink if necessary.
    • Setup mode implements a USB CDC-ACM command-line interface allowing configuration to be loaded from and stored in flash.