Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9,118 changes: 9,118 additions & 0 deletions hackpads/BlobPad/CAD/CAD.STEP

Large diffs are not rendered by default.

36 changes: 36 additions & 0 deletions hackpads/BlobPad/Firmware/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# This isn't complete because I couldn't yet find out how to use the IO expander with kmk and I'm running out of time now. (And also I think I need the ToF distance sensor to test before being able to write any working code for it).
# Basically, the keyboard will have 4 sets of 8 macros, and the left rotary encoder will switch between those.
# The other rotary encoder will switch between what the ToF distance sensor controls (screen brightness, audio volume, keyboard brightness, off) (you raise/lower your hand over the sensor to control the currently selected setting). I think this will probably need something running on the computer as well.
# The OLED will simply display both of these states controlled by the rotary encoders.


import board
from kmk.modules.encoder import EncoderHandler

from kmk.kmk_keyboard import KMKKeyboard
from kmk.scanners.keypad import KeysScanner
from kmk.keys import KC
from kmk.modules.macros import Press, Release, Tap, Macros

keyboard = KMKKeyboard()

encoder_handler = EncoderHandler()

io_expander = ... # TODO figure this out

macros = Macros()
keyboard.modules.append(macros)

PINS = [board.D8, board.D9, board.D10, board.D11]

keyboard.matrix = KeysScanner(
pins=PINS,
value_when_pressed=False,
)

keyboard.keymap = [
[KC.A, KC.DELETE, KC.MACRO("Hello world!"), KC.Macro(Press(KC.LCMD), Tap(KC.S), Release(KC.LCMD)),]
]

if __name__ == '__main__':
keyboard.go()
Binary file added hackpads/BlobPad/Images/CAD.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added hackpads/BlobPad/Images/PCB.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added hackpads/BlobPad/Images/Schematic.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions hackpads/BlobPad/PCB/hackpad/#auto_saved_files#
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/Users/blob/hackpad/_autosave-hackpad.kicad_sch
38 changes: 38 additions & 0 deletions hackpads/BlobPad/PCB/hackpad/KiCad-SSD1306-128x64-master/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# SSD1306 128x64 for kicad [![License: CC BY-NC-SA 4.0](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by-nc-sa/4.0/) [![GitHub All Releases](https://img.shields.io/github/downloads/pforrmi/SSD1306-128x64-kicad/total.svg)](https://github.com/pforrmi/SSD1306-128x64-kicad/releases)

Kicad footprints and templates for [SSD1306 128x64px OLED Display*](https://amzn.to/2YUHoEB).

<img src="https://github.com/pforrmi/SSD1306-128x64-kicad/blob/master/images/ssd1306_3d.jpg" width=500>

https://www.kicad.org

## SSD1306 as a component

You can use the SSD1306 as a module of a bigger kicad PCB project.

### for eeschema
`library/SSD1306-128x64_OLED.lib` can be used as a component in your design.


To add it to eeschema:
* Preferences
* Components libraries
* add
* navigate to the `SSD1306-128x64_OLED.lib` file

### for pcbnew

`library/SSD1306.pretty` contains a footprint of the SSD1306 module for your PCB.

To add it to pcbnew:
* Preferences
* Footprint library manager
* Project Specific Libraries
* Append with Wizard
* navigate to `SSD1306.pretty`



### Further information may be found at https://ownsmarthome.de

_The links marked with an asterisk (*) are commission links or advertising._
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
EESchema-DOCLIB Version 2.0
#
$CMP SSD1306
D SSD1306 OLED
K SSD1306
$ENDCMP
#
#End Doc Library
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
EESchema-LIBRARY Version 2.4
#encoding utf-8
#
# SSD1306
#
DEF SSD1306 Brd 0 40 Y Y 1 F N
F0 "Brd" 0 -150 50 H V C CNN
F1 "SSD1306" 0 -50 50 H V C CNN
F2 "" 0 250 50 H I C CNN
F3 "" 0 250 50 H I C CNN
$FPLIST
SSD1306-128x64_OLED:SSD1306
$ENDFPLIST
DRAW
S -250 250 250 -250 0 1 0 f
X GND 1 -150 350 100 D 50 50 1 1 I
X VCC 2 -50 350 100 D 50 50 1 1 I
X SCL 3 50 350 100 D 50 50 1 1 I
X SDA 4 150 350 100 D 50 50 1 1 I
ENDDRAW
ENDDEF
#
#End Library
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
(module SSD1306:128x64OLED (layer F.Cu) (tedit 5CF23EAC)
(fp_text reference SSD1306 (at 0 0.254) (layer F.SilkS)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_text value 128x64OLED (at -7.747 -7.62) (layer F.Fab)
(effects (font (size 1 1) (thickness 0.15)))
)
(fp_line (start 13.462 -9.017) (end 13.208 -9.005) (layer F.SilkS) (width 0.12))
(fp_line (start 13.462 7.62) (end 13.462 -9.017) (layer F.SilkS) (width 0.12))
(fp_line (start 10.122 7.595) (end 13.462 7.62) (layer F.SilkS) (width 0.12))
(fp_line (start 10.122 -9.005) (end 13.208 -9.005) (layer F.SilkS) (width 0.12))
(fp_line (start -4.699 -11.811) (end -4.699 -9.398) (layer F.SilkS) (width 0.12))
(fp_line (start 5.08 -9.398) (end -4.699 -9.398) (layer F.SilkS) (width 0.12))
(fp_line (start 5.08 -11.811) (end 5.08 -9.398) (layer F.SilkS) (width 0.12))
(fp_line (start -4.699 -11.811) (end 5.08 -11.811) (layer F.SilkS) (width 0.12))
(fp_line (start -12.978 -9.005) (end 10.122 -9.005) (layer F.SilkS) (width 0.12))
(fp_line (start -12.978 7.595) (end -12.978 -9.005) (layer F.SilkS) (width 0.12))
(fp_line (start 10.122 7.595) (end -12.978 7.595) (layer F.SilkS) (width 0.12))
(fp_line (start -13.4 15) (end -13.4 -12.3) (layer F.SilkS) (width 0.12))
(fp_line (start 14 15) (end -13.4 15) (layer F.SilkS) (width 0.12))
(fp_line (start 14 -12.3) (end 14 15) (layer F.SilkS) (width 0.12))
(fp_line (start -13.4 -12.3) (end 14 -12.3) (layer F.SilkS) (width 0.12))
(pad 4 thru_hole oval (at 4 -10.6 90) (size 2 1.6) (drill 1) (layers *.Cu *.Mask))
(pad 3 thru_hole oval (at 1.46 -10.6 90) (size 2 1.6) (drill 1) (layers *.Cu *.Mask))
(pad 1 thru_hole oval (at -3.62 -10.6 90) (size 2 1.6) (drill 1) (layers *.Cu *.Mask))
(pad 2 thru_hole oval (at -1.08 -10.6 90) (size 2 1.6) (drill 1) (layers *.Cu *.Mask))
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: 'Close stale issues and PRs'

on:
workflow_dispatch:
schedule:
- cron: '0 4 * * *'

jobs:
stale:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Checkout script repository
uses: actions/checkout@v4
with:
repository: Seeed-Studio/sync-github-all-issues
path: ci

- name: Run script
run: ./ci/tools/stale.sh
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Automate Issue Management

on:
issues:
types:
- opened
- edited
- assigned
- unassigned
- labeled
- unlabeled
- reopened

jobs:
add_issue_to_project:
runs-on: ubuntu-latest
steps:
- name: Add issue to GitHub Project
uses: actions/[email protected]
with:
project-url: https://github.com/orgs/Seeed-Studio/projects/17
github-token: ${{ secrets.ISSUE_ASSEMBLE }}
labeled: bug
label-operator: NOT
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading