Coder Social home page Coder Social logo

staticintlucas / goldfish Goto Github PK

View Code? Open in Web Editor NEW
198.0 14.0 36.0 8.31 MB

A small, thin, USB-C, Pro Micro compatible microcontroller

kicad arduino arduino-boards oshw mechanical-keyboard electronics microcontroller qmk-firmware goldfish tmk-firmware

goldfish's Introduction

Goldfish v2

Note

The main branch contains the design for Goldfish v2. The Goldfish v1 design is available in the v1 branch

Goldfish is a Pro Micro compatible microcontroller board designed for use in mechanical keyboards. It is based on the same Atmel ATMega32U4 chip and is programmable using the Arduino IDE or a keyboard specific firmware such as TMK or QMK. Of course it is perfectly usable for any other electronics projects too, not just keyboards.

preview

Links

Features

  • Lower board profile with the mid-mounted USB-C connector
  • Two internal pins make the USB data lines easily accessible
  • USB-C is more durable, reversible and just plain cool
  • 5 additional pins on the bottom edge of the board
  • Pin-compatible with the original Pro Micro
  • Sturdier through-hole USB connector
  • On board ESD protection for USB lines

Changes compared to Goldfish v1

  • Addition of on board ESD protection and fuse
  • All 0603 resistors and capacitors for (slightly) easier hand assembly
  • Castellated edge connectors similar to the Elite-C
  • Less obscure USB-C connector
    • Use of more commonly available components in 2022
    • Choice between multiple compatible connectors and suppliers
    • Uses USB 2.0-only connector for easier and cheaper assembly

USB-C Connectors

Manufacturer Part number
Molex 216990-0001 - 216990-0003 216990-0002
HRO - TYPE-C-31-M-13C TYPE-C-31-M-13B TYPE-C-31-M-13A
GCT USB4520 USB4510 USB4505 USB4500
Approx. thickness
1.2 mm PCB
c21p12
3.2 mm
c16p12
3.2 mm
c10p12
3.4 mm
c08p12
3.6 mm
Approx. thickness
1.6 mm PCB
c21p16
3.2 mm
c16p16
3.2 mm
c10p16
3.8 mm
c08p16
4.0 mm

Limitations compared to a Pro Micro

  • No onboard RX, TX LEDs
  • No onboard voltage regulator (this makes no difference for keyboards; a regulator is only required when power supplies of over 5.5V are used)

Vendors Selling Goldfish

Goldfish v1 rev. C

Comet (modified design based on Goldfish v1; see related projects)

Note: These products are sold by 3rd party vendors and are not 'officially' endorsed by me. I'm simply listing them here for convenience.

(Also please let me know if anything is missing from this list)

Related Projects

Alvaro by Ariamelon

  • A modified Goldfish v1 using 0603 components instead of 0402

Comet by Tokas

  • A modified Goldfish v1 using a HRO TYPE-C-31-M-12 connector

Whale by Jia Geng Chang

  • A modified Goldfish v1 using a Jing 918-418K2024S40000 connector

Goldfish-clone-JLCPCB by Jeremy J Starcher

  • A modified Goldfish v1 designed to meet JLCPCB's assembly requirements

Elite-C from keeb.io

  • An unrelated and closed source project with similar design goals

(Please let me know if anything is missing form this list)

License

Released under the Creative Commons Attribution Share-Alike 4.0 License. https://creativecommons.org/licenses/by-sa/4.0/

Original Arduino Mini Design by Team Arduino. Arduino Pro Mini Design by Spark Fun Electronics. Pro Micro Design by Spark Fun Electronics. Goldfish Design by Lucas Jansen.

goldfish's People

Contributors

dr-derivative avatar electronicsarchiver avatar staticintlucas avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

goldfish's Issues

Me brain not so good, gerber file how?

I'm relatively new to CAD and all this stuff, I decided I wanted to commission a PCB so I can handwire my keyboards. I've downloaded Gerber files before but I'm having trouble specifically with this project in which my Gerber files when I plot them on KiCAD. don't actually download as Gerber files and as some other type of file. With that said the PCB manufacturer can't support those types of files. If you can, can you either put a zip of the Gerber files or explain to me what happened? pretty please and thank you for creating this masterpiece of a microcontroller. I don't know if this is the right place to talk about this but sorry if it isn't

New logo for Goldfish

I wanted to contribute to Goldfish I designed a logo for Goldfish. If you like it, I'll send you all files.

goldfish

Question about capacitors on VCC and VBUS

Hi, sorry for opening an issue with a question, but could not find a better place to ask.

I'm an electronics newbie, so it might be a dumb question, but I cannot figure it out. Why are you using 4 x 0.1uF capacitors on VCC and 0.1uF and 4.7uF capacitors on VBUS?

When going through the datasheet for Atmega32u4 I've found that they recommend a 10uF on VBUS (so maybe you have smaller capacitance to improve reset time on reconneciton?). There's nothing about capacitors on VCC.

I've also checked ProMicro schematics, and they have a 1uF on VCC and VBUS connected together.

Sorry if it's a dumb question, but I'm looking into it for few hours already and cannot figure it out.

Board from JLCPCB not working

First I would like to say thanks for making such a neat board, I really like it!

For a keyboard project I went to make 20 of these on JLCPCB with their PCB assembly service. I couldn't find the original crystal oscillator, so I had to change it to this.

When the boards came, I soldered the original Hirose connector on but I couldn't get my PC or Mac to detect it at all via USB. I thought perhaps I needed to burn a bootloader, but I'm having trouble using a Nano as an ISP to flash it.

Here is the board, the solder work by JLCPCB and the traces look great.

image

"Stole" your schematic -- designed a new board

Just letting you know that I snagged a copy of your schematic and used it as the base of a pin-compatible board, but with different design goals.

Right now my project is not an official fork of yours, but that should be fairly easy to do.

If you'd rather I changed the name of my project because it has different goals than yours, I'm more then willing to do that as well.

Of course, either way, full credit will be given.

https://github.com/JeremyJStarcher/Goldfish-clone-JLCPCB

[Question] Changes

Hi,

I'm interested in your design but would like to know how hard it would be to change the design to:
1, include an onboard voltage regulator
2, remove the USB-connector and add soldering points for +5 and GND in in addition to the data-lines

I'm not an electrical engineer and this might be a bit out of my league to do by myself.

Thanks in advance,
Rickard

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.