• Stars
    star
    227
  • Rank 174,835 (Top 4 %)
  • Language
    C
  • License
    BSD 3-Clause "New...
  • Created over 4 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

easy USB-C power for all your devices

fpx: easy USB-C power for all your devices

This repository contains the hardware design and firmware for fpx module.

Hardware

Main enabling component of fpx is STUSB4500 standalone USB-PD IC by STMicroelectronics. The rest are supporting components and an AVR ATtiny 816 which programs the NVM flash on STUSB4500 by converting configuration read from a light sensor.

The KiCad files are verified for manufacturing, and include all the part numbers.

fpx is a certified open hardware [OSHW] AU000008

Firmware

The firmware is written as a single C file with no interrupts and provided as an Atmel Studio solution. It should however be easily buildable by GNU toolchain. The source is well commented and self-documenting.

Configuration

The main configuration tool exists in the form of a web page. The Javascript part of the page documents the encoding used to transfer configuration using light flashes.

Due to its simplicity, the configuration tool can be ported to any device/platform that can pulse light with a reasonable timing accuracy (e.g. Arduino).

Licensing

All the content of this repo including the documentation, hardward design files, firmware and configuration utilities are licensed under the Revised BSD license.

History

See my blog post about fpx and its predecessor fabpide2.

More Repositories

1

pdftilecut

pdftilecut lets you sub-divide a PDF page(s) into smaller pages so you can print them on small form printers.
Go
311
star
2

pdfrankenstein

PDF Annotator of Nightmares πŸŽƒ
Go
170
star
3

fysom

Finite State Machine for Python (based on Jake Gordon's javascript-state-machine)
Python
162
star
4

fabpide2

STUSB4500 Breakout β€” Stand-alone USB PD Sink Controller
C++
90
star
5

tjtag-pi

TJTAG JTAG flash programmer for WRT54G and related routers with Raspberry Pi support
C
79
star
6

rsyncbtrfs

Backup tool combining rsync and btrfs
Shell
68
star
7

svglinkify

Export inkscape SVGs to PDF while preserving hyperlinks
Python
32
star
8

imdb2json

Convert IMDB list files to JSON
Python
27
star
9

gists

Codes that don't deserve their own repo (yet).
Python
22
star
10

msrx

Library and command line utils to use MSR605 magnetic card reader/writer
Python
20
star
11

splapr

Modular, Customizable & Affordable Split Flap Displays for Everyone!
C
20
star
12

runsheet

Real-time task scheduler and tracker for time sensitive projects.
JavaScript
12
star
13

raspberrypi-archlinux-installer

Raspberry Pi Archlinux Automated Offline Installer with Wi-Fi. Windows, Mac and more features coming.
Go
8
star
14

starenv

starenv allows populating environmental variables from variety of sources, such as AWS Parameter Store, GPG encrypted files and more, with extreme ease.
Go
6
star
15

tesla-data-privacy-request

Structure of data provided by Tesla in response to privacy data request.
Shell
4
star
16

go-typec

USB Type-C Libraries for Go
Go
3
star
17

20p

Summarize online video/audio to 20 bullet points.
Python
3
star
18

terraform-credentials-gpg

Terraform Cloud GPG Credentials Helper
Shell
2
star
19

papersizes

Go package+module defining various standardized paper sizes
Go
1
star