GithubHelp home page GithubHelp logo

mikeboensel / hub16 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from joshajohnson/hub16

0.0 1.0 0.0 74.15 MB

A macro pad with 16 keys, two rotary encoders, a four port USB hub, and plenty of LEDs!

License: Other

C 2.31% Makefile 0.16% HTML 95.96% Python 0.61% AutoHotkey 0.97%

hub16's Introduction

Hub16

Hub16 assembled

Hub16 is a macropad with a bunch of features you never knew you needed. They include:

  • 16 Cherry MX compatible keys, along with switches in each encoder.
  • Two rotary encoders, enabling intuitive controls for a wide range of tools including CAD and photo / video editing.
  • Inbuilt USB 2.0 Hub with Type-C connectors, allowing connection to other keyboards, memory sticks, wireless receivers and more!
  • VIA and QMK compatibility, including a "macro" mode enabling the keys to be dynamically remapped on a host computer.
  • 11 addressable RGB LEDs to display state, or just light your desk up.

Project Status

Project is stable, with assembled boards available at Tindie.

Hub16 on desk

Getting Started Guide

Detailed Info

Repo Contents

  • Documents contains all documentation and images for the project.
  • Firmware contains both the source and precompiled binaries for Hub16.
  • Hardware contains the KiCad design files for the keyboard.
  • josh-kicad-lib is my personal KiCad parts library which contains many of the parts used.
  • Mechanicals contain the plate and case design for Hub16.
  • Production contains all the files required to produce the PCB. It also contains test scripts and jigs.
  • Software contains all the VIA config, along with template script to use Hub16 as a macropad with software on your computer.

Notes on the USB Hub

The hub is a four port USB 2.0 Hub with Type-C connectors, aimed at allowing connection of keyboards, mice, memory sticks, wireless receivers, and other small devices (including a second Hub16!) to your computer.

Due to cost and space constraints, the hub has some limitations. The hub is not:

  • USB 3.x, Power Delivery, Thunderbolt, DisplayPort, etc compatible.
  • Designed to charge your phone quickly. Only 100mA is guaranteed per port.
  • Designed to work with power hungry devices such as spinning hard drives.
  • Guaranteed to provide full USB 2.0 speeds and performance on all ports.

Might you be able to charge your phone whilst copying files at full speed of a spinning hard drive over a long cable? Maybe. However Hub16 is a macropad first, USB hub second, so if you are looking for a high performance device I'd suggest picking up a dedicated USB hub and just using Hub16 as a macropad.

Errata

  • Boards assembled in 2021 will have an issue with VIA where the LED controls are incorrect. Follow these instructions to resolve
  • Boards purchased between June 12 and June 22 2020 will not go into the bootloader upon resting from software. Workaround: reset board with physical reset button on bottom of PCB. Fix: reflash the bootloader following these instructions.
  • Firmware builds prior to 27th June do not continually send characters when the encoders are depressed.
  • Firmware builds prior to 9th June have issues with the bottom right key p not functioning correctly.
  • Some rotary encoders output flipped signals (clockwise instead of counterclockwise), if after assembly your encoders appear to be sending the wrong signals, comment in line 84 in config.h, or alter the setting in your software.

If you have any questions or comments please get in touch. Asking in the No Sharp Corners Discord Discord or opening an issue / pull request will result in the quickest response.

hub16's People

Contributors

joshajohnson avatar charlesrocket avatar nathanbuckley avatar ckirmse avatar morganrallen avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.