8000 GitHub - ltfiend/fus3d-chonky: Sync of my Fus3d Chonky Project
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

ltfiend/fus3d-chonky

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fus3d Chonky

After seeing the original Chonky Palmtop I realized I had many of the same parts on hand already and given my current interest in ergo mech keyboards it was a perfect fit. However I had some different requirements. A 5 row keyboard wasn't going to work for me so I expanded the keyboard trays and overall size to support the extra row. The monitors I had were the RPI 7" display so the design needed to be reworked for that. The resolution on the RPI screen is worse than the originally spec'd one but it is still useable. I wanted to be able to use the RPI Video out to support additional monitors so I reoriented the RPI and exposed those ports. I also wanted to use up the extra space provided on the screen bezel so I added some neopixels, a RPI camera, and a I2C screen. Additionally the power button, multimeter and XT60 hookup have been adjusted for space.

Additional Requirements

  • Ability to disconnect keyboard from RPI to use it on other systems
  • Camera for Video Conferencing
  • Exposed HDMI ports for external monitor connections
  • Corne keyboard with 6 rows (instead of 5 as on the original Chonky)
  • oled screen for keyboard
  • pimoroni trackball for keyboard

Todo

  • Enable non-working components (trackball, oled)
  • Add clasps to the outside to keep it closed in transit
  • Battery status on RPI
  • Speakers
  • Keyboard LEDs (I avoided this at first due to some power concerns I had but I think I'd rather have it, at least a general backlight if not full RGB per key)
  • Expand on keymaps

Design

Thanks to a8ksh4 for making the onshape links available. Using them, I was able to modify the parts for my needs. Other than the hinges and keyboard slider parts everything has been adjusted for the 6 row keyboard size. The display bezel and components have almost all been remade from scratch to accomodate for the different screen and added components.

This version still has a multimeter connected to the LS pin of the Ampripper 3000. This should give "battery voltage when discharging and system voltage when charging". I put the multimeter on a momentary button so that I can check status periodically without having it in my face the whole time. Also the LS pin of the ampripper is always on so the multimeter wouldn't turn off when the EN pin is disconnected.

Onshape Models

Wiring

Most of the wiring follows the original design. I have mounted a USB hub but it's not wired in at the moment (I don't trust myself to solder to USB on the PI to be honest, I just have bad luck with those sorts of connections). The XT60 has been moved to the front display to allow the battery to be completely disconnected from the electronics and facilitate using the keyboard without the raspberry pi.

Each of the screen components is wired with JST SM connectors so they can be removed or adjusted. The raspberry pi connections are also terminated in this way.

Two lever release connectors serve as the power and ground distribution. These are held down with a touch of hot glue.

Keyboard

I'm using a more conventional QWERTY layout keyboard with customizations for tmux and nvim as desired. My main keyboard is a dactyl manuform so many of the keymappings will be taken from that. Keymaps are uploaded but are currently incomplete.

The left side of the keyboard uses an Elite-C while the right side uses a pro-micro. This is mostly just because I didn't want to use 2 Elite-Cs on one keyboard. So far there are no problems with it this way. When updating QMK I need to make sure to image both sides, one with DFU and the other with avrdude. qmk flash works for both though so it's not a big deal. In between versions update just the left side, everything is done locally on the Chonky.

OS

The system runs Manjaro Sway on a 4Gb Raspberry Pi 4. The Sway interface which mirrors i3 functionality fits very well the corne keyboard. The trackball isn't working at the moment because I have rarely had need to use the trackball instead of keyboard driven commands and touch screen. The 800x480 resolution could definately be improved but it is very useable with the appropriate scaling / fonts. The ability to wire in an external monitor adds to the functionality of it.

Manjaro Sway

git command line status

One great feature on linux CLI is the ability to display git status information on the command line. However, on a Raspberry PI this ends up being a fairly resource intensive operation everytime you change into a directory that is part of a git repository. To make the system a bit quicker I've opted to disable this on the Pi. In Manjaro you do this by commenting out the following lines from the ~/.config/silver/silver.toml file.

~/.config/silver/silver.toml

# [[left]]
# name = "git"
# color.background = "green"
# color.foreground = "black"

Fonts / Scaling

Capturing some of the scaling settings I'm using to make the system useable:

/etc/sway/outputs/default-screen

output DSI-1 scale .8 

/etc/sway/themes/matcha-green/foot.ini

font=TerminessTTF Nerd Font Mono:pixelsize=18:fontfeatures=ss01 

/etc/sway/themes/matcha-green/definitions (not sure these are being used)

set $gui-font Noto Sans 11
set $term-font TerminessTTF Nerd Font Mono 14

~/.config/waybar/style.css

* {
...
font-family: "FontAwesome 5 Free Solid", "TerminessTTF Nerd Font", sans-serif;
font-size: 14px;
...
}

Pictures!

Sections from the Original Chonky Palmtop README

Pivot Geometry

One corner of each keyboard half moves up the center of the chassis on a straight path. The other pivot point follows some other path to acheive the desired total rotation, and we have some control over how it gets there by curving the path it follows.

We can figure out the starting and ending points of the second pivot by projecting it's location in the closed and open positions, and then drawing a path between them. See the yellow lines in the cad sketch below. We use a path that first curves down to help us dip the keyboard around the hinges that hold the display.

Power System

The PSU/Charge controller is an Amp Ripper 3k, which seems to work well satisfying the Pi 4 and display without low voltage warnings. It can be wired so an external switch, and has a signal pin to indicate low, but doesn't seem to actually be able to disconnect your system from the battery if voltage gets too low, so you should include some additional low voltage protection. It charges at up to 3a via USB-c port:

This build has two li-ion pouch cells wired in parallel, each separatly fused for 10a for short curcuit protection. There's an XT60 connection on the side in case I want to rig up a fast-charge. The li-on cells used here aren't the best choice for energy density, but they can fast charge - limited only by the gauge of the wire I connect tehm with, and if I change them later, there's room in the battery box for a bunch of 18650 cells instead.

Display Keeps the keyboard closed when folded:

Materials List

License

Creative Commons Share Alike

About

Sync of my Fus3d Chonky Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 98.7%
  • Makefile 1.3%
0