Skip to content

oxplot/go-typec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Reference

USB Type-C Power Delivery Module for Go

At the moment, only sink functionality is implemented. Sink refers to a power consumer. You can use the module to request specific voltage and current from USB-C power source such as wall adapters, power banks and more.

Goals:

  • Easy to use, understand and modify.
  • Familiar to Go programmers.
  • Efficient resource utilization so it can run on microcontrollers and in embedded environments.
  • Compatibility with various port controller hardware.

Non-goals:

  • Following standard word for word.
  • Implementing all PD functionality.

There are examples in the examples directory to get you started.

Note that the timing requirements of PD messaging is rather strict. As such, in environments where communication latency is high, it may not be possible to implement a working program. For example, on a linux desktop using the MCP2221 I2C bridge to communicate with FUSB302 PD port controller, each I2C transaction latency is too high (~10ms) for things to work. Your mileage may vary.

Releases

No releases published

Sponsor this project

 

Packages

No packages published

Languages