An open source two key macro-pad modeled to look like a cartoony melting popsicle

Related tags

Hardwaremacropopsicle
Overview

macropopsicle

An open source two key macro-pad modeled to look like a cartoony melting popsicle.

alt text

Build instructions

Parts List

-1x Top case half (3D printed)

-1x Bottom case half (3D printed)

-1x Switch plate (3D printed)

-1x Ice Cream piece (3D printed)

-1x Ice cream bite (3D printed)

-2x Key caps cherry style (3D printed or sourced)

-1x Popsicle stick

-2x Cherry style switches

-3x Black wires (for ground)

-2x Colored wires (for data)

-5x short M3 bolts

-3x long M3 bolts

-Solder (consumable)

-1x Adafruit QT Py - SAMD21 Dev Board

alt text

A note on the dev board: Boards of a similar form factor to the Adafruit QT Py - SAMD21 may also work with this case without needing any modifications. However the Adafruit QT Py - SAMD21 is the only board that has currently been tested and confirmed to work.

Fabrication

All parts except the development board, wires, switches, popsicle stick and bolts need to be fabricated the parts have been designed for 3D printing however they could also be made through other fabrication methods such as machining.

All parts are designed to print with very little to no support material. All parts feature large flat surfaces I recommend printing with these face down on the build plate if using a filament extrusion 3D printer.

Assembly

The case consists of five pieces main pieces.

Of the five pieces the two main halves, colored orange provide the majority of the structural support.

Before assembling the case insert the switches into the switch plate.

alt text

Soldering:

Wiring diagram:

alt text

Solder the 1 black wire onto the ground pin of the dev board make sure the wire does not poke through to the side. Then splice the remaining two wires onto the ground wire.

Next Solder the data wires onto the A1 and A2 pins, once again make sure the wires do not poke through to the other side of the dev board.

Once all wires have been soldered onto the dev board. Solder one ground wire and one data wire onto the leads of each switch. The polarity does not matter.

Software:

-Before assembling the case ensure that the firmware has is loaded onto the dev board and that all wiring is correct.

If using Circuit Python load the Circuit Python boot loader. Please see the instructions for your specific dev board to install circuit python.

Once the dev board is flashed with the Circuit Python boot loader add the code that will allow our macro pad to function. The code file (code.py) is included with this repository

Drag and drop the code file onto the Circuit Python drive.

Some libraries are also required for this code to function. Links are included below. Adds all libraries to the Libraries folder on the Circuit Python Drive.

Mechanical Assembly:

The keyplate is secured by four 4mm long bolts into the top case half.

alt text

The white small bite piece is secured to the lower case half with a single bolt 4mm bolt.

alt text

Position the microcontroller in place (use the tweezers if neccessary to ensure it's properly seated)

alt text

The larger white piece secures first to the lower orange case half and then to the upper case half once fully assembled.

alt text

alt text

Assemble two halves are assembled togeather using three 20mm long bolts.

alt text

All pieces which have bolts seated into them have holes designed to allow M3 bolts to screw into the plastic.

Once the popsicle case is assembled the keycaps and popsicle switch can be press fitted into place. Your macropopsicle is should now be assembled and appear like the one in the image at the top of this document.

alt text

License

I have invested time and resources providing this open source design. If you have benefited from this design being open source, please consider making a small donation if you are able to. Donations are never expected but always appreciated, donations will help me create more open source designs in the future.

Designed by Dylan Rice / oxisidia.

Creative Commons Attribution/Share-Alike, all text above must be included in any redistribution. See license.txt for additional details.

Code for the paper "Planning with Diffusion for Flexible Behavior Synthesis"

Planning with Diffusion Training and visualizing of diffusion models from Planning with Diffusion for Flexible Behavior Synthesis. Guided sampling cod

Michael Janner 310 Jan 07, 2023
A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge device

holiday-star balena ❤️ adafruitIO Introduction A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge devic

Ayan Pahwa 3 Dec 20, 2021
My 500 LED xmas tree

xmastree2020 This repository contains the code used for Matt's Christmas tree, as featured in "I wired my tree with 500 LED lights and calculated thei

Stand-up Maths 581 Jan 07, 2023
A flexible data historian based on InfluxDB, Grafana, MQTT and more. Free, open, simple.

Kotori Telemetry data acquisition and sensor networks for humans. Documentation: https://getkotori.org/ Source Code: https://github.com/daq-tools/koto

83 Nov 26, 2022
Provide Unifi device info via api to Home Assistant that will give ap sensors

Unifi AP Device info Provide Unifi device info via api to Home Assistant that will give ap sensors

12 Jan 07, 2023
Various programs in Atari BASIC for #FujiNet for Atari 8-bit

FujiNet Various programs in Atari BASIC for #FujiNet for Atari 8-bit FujiNet-3D Tic Tac Toe In 1978, Scott Adams wrote a 3-D Tic Tac Toe game, for pla

Kay Savetz 2 Jan 01, 2022
A simple small scale electric car was build which can be driven by remote control and features a fully autonomous parking procedure.

personal-autonomous-parking-car-raspberry A simple electric car model was build using Raspbery pi. The car has remote control and autonomous operation

Kostas Ziovas 2 Jan 26, 2022
A python module for interacting with rolimon's, a roblox value site.

rpi - rolimon's python interaction rpi is an open source python-based rolimon's api wrapper. It provides an end-to-end pipeline in which each componen

Acier 11 Nov 08, 2022
A custom mechanical keyboard inspired by the CFTKB Mysterium

Env-KB A custom mechanical keyboard inspired by the CFTKB Mysterium Build Guide and Parts List What is to do? Right now for the first 5 PCBs I have, i

EnviousData 203 Jan 04, 2023
Hook and simulate global mouse events in pure Python

mouse Take full control of your mouse with this small Python library. Hook global events, register hotkeys, simulate mouse movement and clicks, and mu

BoppreH 722 Dec 31, 2022
Example code to sending USB Gadget multimedia keys via Python

Send Multimedia USB HID Keys via Python As an USB Gadget in Linux This gives a simple script with zero dependencies that can easily run on any Linux d

DevOps Nirvana 2 Jan 02, 2023
MicroPython driver for 74HC595 shift registers

MicroPython 74HC595 A MicroPython library for 74HC595 8-bit shift registers. There's both an SPI version and a bit-bang version, each with a slightly

Mike Causer 17 Nov 29, 2022
HACS gives you a powerful UI to handle downloads of all your custom needs.

HACS (Home Assistant Community Store) Manage (Install, track, upgrade) and discover custom elements for Home Assistant directly from the UI. What? HAC

HACS 3.2k Jan 04, 2023
A script and GUI for controlling stepper motors from an arduino

A script and GUI for controlling stepper motors from an arduino (nema 23 in my case but should work for others in general)

Pip 2 Aug 01, 2022
Scapy: the Python-based interactive packet manipulation program & library. Supports Python 2 & Python 3.

Scapy Scapy is a powerful Python-based interactive packet manipulation program and library. It is able to forge or decode packets of a wide number of

SecDev 8.3k Jan 08, 2023
从零开始打造一个智能家居系统

SweetHome 从零开始打造智能家居系统的尝试,主要的实现有 可以扫码添加设备并控制设备的Android App 可以控制亮灭的灯,并可以设置在Android App连接到指定Wifi后自动亮起 可以控制开关的窗帘,机械结构部分自己设计并3D打印出来 树莓派主控,实现Http请求接口和ZigBe

金榜 5 May 01, 2022
A simple portable USB MIDI controller based on Raspberry-PI Pico and a 16-button keypad, written in Circuit Python

RPI-Pico-16-BTn-MIDI-Controller-using-CircuitPython A simple portable USB MIDI controller based on Raspberry-PI Pico, written in Circuit Python. Link

Rounak Dutta 3 Dec 04, 2022
A Python script to monitor the latest block on an LCD.

PiHole-Monitoring A Python script to monitor the latest block on a lcd display. The first number represents the dns queries from the last 24h, the sec

Maxi 4 Dec 05, 2022
Zev es un Bot/Juego RPG de Discord creado en y para aprender Python.

Zev es un Bot/Juego RPG de Discord creado en y para aprender Python.

Julen Smith 3 Jan 12, 2022
AERO 421: Spacecraft Attitude, Dynamics, and Control Final Project.

AERO - 421 Final Project Redevelopment Spacecraft Attitude, Dynamics, and Control: Simulation to determine and control a satellite's attitude in LEO.

Gagandeep Thapar 3 Dec 16, 2022