You are browsing as a guest. Sign up (or log in) to start making projects!

Jeshu

@Jeshu

Joined June 10th, 2026

  • 14Devlogs
  • 4Projects
  • 2Ships
  • 15Votes
Just a normal human
Open comments for this post

15m 49s logged

Dev Log: HackPad1 Custom Enclosure

Status: CAD Complete | Ready for Slicing & 3D Printing

Finally completed the custom enclosure for HackPad1.

The enclosure is a simple two-piece design that houses the 9-key switch matrix, OLED display, rotary encoder, and the USB-C microcontroller. Since this was my first proper CAD project in Fusion 360, I spent a good amount of time understanding the workflow while designing it.

Top Plate

The biggest issue I faced was creating the top plate.

Fusion 360 kept selecting the PCB and switch bodies instead of the sketch, making it difficult to select the regions between the switches for extrusion.

To work around this, I first created a solid 1.5mm plate covering the entire top. Then I turned the sketch back on and used a -1.5mm cut extrusion to create all nine switch cutouts. This approach worked well and saved a lot of time.

USB-C Cutout

Next, I worked on the USB-C opening.

I projected the USB connector onto the back wall and added some clearance so that different USB-C cables would fit comfortably.

While checking the design, I realized the back wall was too thick. A standard USB-C cable wouldn’t be able to fully connect because it would hit the plastic before reaching the port.

To fix this, I created a recessed pocket around the USB opening, reducing the wall thickness only in that area. This allows the cable to plug in properly while keeping the rest of the enclosure strong.

Finalizing the Design

Once everything was in place, I saved the project as a Standard Design and exported both the top plate and bottom enclosure as mesh files for printing.

Hackatime

Unfortunately, I couldn’t track today’s work on Hackatime because I couldn’t find a Hackatime extension for Fusion 360.

Although today’s work won’t appear in my Hackatime stats, it took a considerable amount of time. Since I’m completely new to CAD and Fusion 360, a large part of the process involved learning the software, understanding different tools, and refining the design through multiple iterations.

0
0
7
Open comments for this post

46m 56s logged

Devlog #2: Routing Done, Copper Everywhere, and Finally Zero DRC Errors

Alright, so the custom macropad PCB is finally done! We finished routing the entire board, fixed all the DRC errors, and exported the final manufacturing files. Huge W for the team.

First, one painful confession.

I completely forgot to start the KiCad WakaTime plugin before working. 😭 Every single hour spent routing traces, fixing footprints, solving DRC errors, and figuring things out… none of it got tracked. My stats are absolutely gone.

Anyways, here’s how everything went.

Routing the PCB

After finishing the schematic, it was finally time to route the PCB.

Since the LEDs draw a decent amount of current, I couldn’t just use the default trace widths everywhere. So I created custom Net Classes in KiCad.

  • +5V and +3V3 power lines were routed using thicker 0.4mm and 0.5mm traces.
  • Data lines were routed using the default trace width.

Routing itself took way longer than I expected. Some traces were straightforward, but others needed multiple attempts before everything fit properly without creating new issues.

DRC Errors Everywhere

Once the routing was done, I ran the DRC check.

That’s when KiCad decided to throw a whole list of errors at me. 😭

Most of them were Board Edge Clearance Violations because a few traces had gone too close to the Edge.Cuts boundary.

So I went through them one by one, removed the problematic traces, routed them again properly, and kept checking until every single error disappeared.

Definitely one of those “fix one thing, two more things break” moments.

Copper Pour

Next came the ground plane.

I added a Copper Pour on the bottom layer (B.Cu) so that all the GND connections could be made properly.

Funny thing is, I first clicked on the Non-Copper Zone tool by mistake and spent a couple of minutes wondering why nothing was happening. 😭

After selecting the correct tool, the entire bottom layer got filled with ground copper.

That created another issue though.

Some traces were too close to a few switch pads, so the copper couldn’t connect properly and KiCad started showing Thermal Relief errors.

A little bit of manual routing later, I created enough space, refilled the copper, and everything connected perfectly.

Silkscreen Adventures

A custom PCB without custom artwork doesn’t feel complete.

Adding text was easy, but adding our logo took way more effort than expected.

Here’s what went wrong:

  • I accidentally exported the image as a schematic symbol (.sym) instead of a footprint (.kicad_mod).
  • Then I realised KiCad doesn’t even let you resize images directly inside the PCB Editor.

So I resized it again using the Bitmap Converter, opened it in the Footprint Editor, and copied the artwork directly onto the PCB.

Bit of a jugaad solution, but if it works, it works. 😌

0
0
1
Open comments for this post

1h 2m 19s logged

Devlog #1
Macropad Schematic Finally Coming Together!Alright, so here’s the update on my 3x3 macropad project for the upcoming hardware event. This is literally my first electronics project, so I honestly expected the KiCad schematic to be a complete mess with wires going everywhere. Surprisingly, I managed to keep it clean and organized, and it actually looks pretty professional.What I’ve finished so far:3x3 Switch Matrix:Instead of using nine separate GPIO pins for all the switches, I made a proper switch matrix. I connected the MX-style switches using 1N4148 diodes to prevent ghosting. I also used Global Labels for the rows and columns, so the schematic stays clean without random wires crossing everywhere.The Brain (Seeed XIAO RP2040):I added the Seeed XIAO RP2040 and mapped the switch matrix to it. The columns are connected to D0, D1, and D2, while the rows are connected to D3, D6, and D7.OLED Display:I finished wiring the 0.91-inch OLED display. I made sure the pin order matches the actual module (GND - VCC - SCL - SDA) so I don’t accidentally mess it up while designing the PCB. It’s powered using 3.3V, and the I2C lines (SCL and SDA) are connected to D4 and D5.What’s left to do:2 EC11 Rotary Encoders:I still need to add both rotary encoders to the schematic. I’ll map their A/B channels for things like volume and brightness control, along with the push-button pins.20 SK6812 MINI-E RGB LEDs:Next is the RGB lighting. I need to daisy-chain all the LEDs properly and connect the data line to D8.So yeah, the main functionality is pretty much done. The switch matrix, RP2040, and OLED are all sorted. Once I finish adding the rotary encoders and the RGB LEDs, the schematic will be complete and I can finally start routing the PCB.

0
0
2
Ship

I built Spotify Glass Widget, a lightweight Windows widget that shows the currently playing Spotify track with album art, media controls, and a glassmorphism UI. The biggest challenge was making everything work properly on Windows, especially the System Tray support, app packaging, and improving the responsiveness of the media controls. If you're testing it, please uninstall the previous version before installing the new one, and make sure Spotify is running.

Try project → See source code →
Open comments for this post

3h 41m 30s logged

Devlog #3 – Spotify Glass Widget v1.0.2This week was mostly about fixing problems and improving the overall experience instead of adding flashy features.The biggest change was adding a proper System Tray Edition. The widget can now run quietly in the Windows system tray instead of taking up space on the taskbar, and it also starts automatically when Windows boots. This makes it feel much more like a real desktop utility.I also added a proper application icon. In the previous version, reopening the widget after minimizing was annoying because it didn’t have its own icon. That’s fixed now.Another feature I added is a built-in volume slider, so you can control your system volume directly from the widget without opening the Windows volume controls.Behind the scenes, I reworked the media controls to make them much more responsive. Play, Pause, Next and Previous now react almost instantly. I also improved the volume slider animation and polished the overall UI to make everything feel smoother.I removed the Copy button as well since almost nobody was using it. Keeping the interface simple makes the widget cleaner and easier to use.This update is available in two versions:Classic Edition – Runs like a normal Windows application.System Tray Edition – Runs from the Windows system tray and starts automatically with Windows.Overall, this update wasn’t about adding lots of new features—it was about making the widget feel polished, faster, and something I can actually keep running every day.Next up, I’ll be working on adding more customization options and improving the overall Glass UI experience.

0
0
6
Open comments for this post

47m 4s logged

Devlop#2

added volume option and removed the copy option.
need the implement the functinality for voume. it has been a hard way to make the css work

0
0
5
Ship

What I made
Limux OS is a fully web-based operating system simulation that perfectly bridges the gap between retro-hacker aesthetics and ultra-modern UI design. Cloaked in a custom frosted-glass theme, it features a highly interactive hacker terminal, a draggable window manager, and a suite of pre-packaged daily utility apps including an auto-saving Notes tool, a dynamic Calculator, an integrated Music Player, and a hardware-linked Camera interface.

What was challenging
Building a robust Window Manager from scratch without relying on heavy frontend frameworks like React or Next.js proved to be quite challenging. Managing dynamic z-indexes, drag-and-drop boundary math, and DOM state purely using vanilla JavaScript required strict logic and deep focus on my part. I also had to resolve complex browser rendering quirks, such as overriding the default WebKit scrollbars and adjusting CSS Flexbox to ensure the terminal auto-scrolled perfectly without pushing the input line out of bounds.

Try project → See source code →
Open comments for this post

36m 2s logged

devlog #7

just updated the music player app. after spending soo much time debugging. i updated it with a clean ui which slides down as a widget

0
0
2
Open comments for this post

1h 3m 5s logged

devlog#6
stuck at making my own mp3 player.spent around 1 and half hour only working on this. i’m still new on storing the local mp3 player and play them. i’ll be hosting the od after i resolved the issue.

0
0
1
Open comments for this post

59m 41s logged

devlop#5

so today i made some changes in the os.

  1. i changed my about me section from app to topbar section when shows when hover.
    2.added some clean looking app icons
    3.made my calendar widget same as about me when is visible when hover.

will be focusing on making each app now.

0
0
2
Open comments for this post

1h 10m 18s logged

devlop #3

today i created a live calendar widget at top right, also added 2 app functionalities.
1.about me app
2.terminal (going to add more functions tomorrow)
i’m thinking of making my about me container to glass finish maybe terminal too(but i want the terminal to be linux type) lets see :)

comment if you have any suggestions. Thanks.

0
0
2
Open comments for this post

27m 55s logged

This is my first devlog. I just started building my OwnOs and completed part2 in the guide. it’s a normal website with just clock function for now.

0
0
14

Followers

Loading…