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

fanouriakisharry

@fanouriakisharry

Joined June 17th, 2026

  • 18Devlogs
  • 5Projects
  • 0Ships
  • 0Votes
I'm just a teenager in love with electronics ;)
Open comments for this post

31m 23s logged

Got the tft display working!!! At first I couldn’t get it to work because the tft_eSPI library my code was using didn’t support my esp32-c6, so I switched to LovyanGFX which uses all the same functions as tft_eSPI and just needs some basic configuration, which I did with the help of Claude. I’m super excited to put it all together, see you next time!

0
0
9
Open comments for this post

3h 34m 47s logged

Devlog #4: Moving to ttkbootstrap + adding a “Build this!“button

Heyyyy! I was gonna write this devlog yesterday, but it was getting kinda late, so I decided to do it toady.

So here’s what’s new: First of all, I switched the app over from plain tkinter widgets to ttkbootstrap, to basically just make things easier. Before, the “Generate ideas!” button was just a label pretending to be a button, with custom hover colors and click bindings, because MacOS (my operating system) was applying an ugly outdated gray/silverish button with no styling, and I wasn’t able to change it.

The switch was relatively smooth, since for most commands, I just had to change the prefix from tk. to tb. Only problem was that these new widgets don’t take bg=/fg= like my previous ones did, so I had to define named styled in the beginning instead. I also added a difficulty field in the beginning, so the user can control the difficulty level of the project ideas, and also a progress bar along with the cycling messages, so the user actually knows when the Ai is thinking.

I also gave each card a “Build this! button, which once pressed, sends another prompt to the ai asking for a full guide, including components, wiring, build instructions, and code if needed. I ran into some errors along the way, mostly typos, which I debugged with the help of Ai.

Next time I’ll give the build guide it’s own screen instead of sitting underneath the entry fields, and make the colors of the app consistent between all the screens. That’s it for now, see you on the next devlog!

0
0
44
Open comments for this post

3h 43m 55s logged

Devlog #3: Displaying each idea in it’s own dedicated card

Hey there! Today, I switched from dumping all he project ideas the AI gave me into one big ScrolledText box, since just a wall of text with no specific layout or format isn’t excactly great user experience.

The main thing I changed, was swapping the text box with a scrollable list of widgets (boxes), with each widget having its own colored background, border, a Label for the project name, one for the description and the extra components and lastly one for the time and cost to make.

Since tkinter frames don’t scroll by default, I had to create a seperate canvas with a scrollbar bound to it and the cards embedded inside it. Because cards are real widgets now instead of just plain text you can use .delete(), when the user clicked the button again to regenerate ideas, it also had to clean up the previous cards before drawing the new ones, since otherwise all the ideas would just pile up one after the other.

I ran into quite some bugs along the way, such as small syntax errors and typos, which I used AI to help me debug.

Next time I’ll probably add some buttons for each card, such as a “copy idea” or a “build this one” button. That’s it for now, see you on the next devlog!

0
0
15
Open comments for this post

1h 7m 10s logged

Heyyy! Not much to say today. I hopped into KiCad and designed a schematic for my project. I won’t be using a pcb, since the shape in abnormal and will probably be more expensive to produce and wires just make more sense for my project. That’s it for today. Next up: assembly. See you on the net devlog.

0
0
8
Open comments for this post

1h 35m 59s logged

Devlog #2: Transferring project to tkinter!

Today I moved the project from a terminal-based script to an actual GUI using the tkinter library, since typing into input() prompts and just reading a wall of terminal text isn’t exactly a great user experience.

The main structure translated pretty easily: text boxes (entry widgets) for components, hours and budget, a “Generate Ideas!” button and an output area for the results.

The most difficult part was keeping the window responsive: calling the AI API directly would freeze the whole window until the response came back, so the request now runs in the background, with the result handed back to the main thread safely using root.after().

I used the same rotating status messages from the terminal version (“Brainstorming…”, “Thinking”, etc.), which now update live in the GUI while it waits.

Because this was my first time using tkinter, I used Claude to get me up to speed with the core concepts (widgets, entries, `.pack(), etc.). Once I wrote the code, I also used it to help me debug it.

Next time I’m probably gonna make the ai output structures json so I can display each project idea in it’s own “card”, and generally work in making the GUI look prettier. That’s it for today, see you on the next devlog!

0
0
20
Open comments for this post

50m 31s logged

Devlog #1: Coding MVP

Hey there! First devlog for this project! So the idea of this project is that you write what components you have, how much time you can devote and what your budget is, and AI brainstorms 5 different project ideas you can make that fit those criteria.

The project is coded in Python. First, I generated a new API key from HackAi to use as the brain, and integrated it. Then I wrote 1 master prompt which gets sent to the AI every time and includes the info the user has given (components, time available, budget), along with instructions on what format to return each idea in (name, description, extra components needed, cost, and time estimate).

I used the rich library to make the terminal output look prettier: rendering the AI’s response as formatted markdown instead of plain text, adding colors and even a colored spinner along with some phrases (such as thinking..., brainstorming..., ect.) so the user knows somethings is happening instead of just guessing if the program has frozen or not.

Next up: I’ll probably switch to Tkinter to give it an actual GUI instead of a terminal prompt. Probably gonna have text boxes for components/time/budget, a “Generate Ideas” button, and each idea shown in its own card instead of one long markdown dump.

Follow along to see how it turns out!

0
0
30
Open comments for this post

1h 58m 50s logged

Hello there! Today I worked on the code for the alarm clock! First I mapped the board’s labels (D0-D10) and the actual GPIO numbers, which was a bit tricky. After that, I copied the initialization code from the guide and then moved on to coding the UI. To get a better idea of how it would look, I hopped into lopaka.app (an online graphic design tool for screens used with microcontrollers) and designed the Settings menu, laying out the Alarm Time, Alarm Sound, and Font Color options, which I then repurposed to create the other menus as well. From there I built out a proper screen state machine, so I could actually navigate between al those menus and screens using the four buttons. Then, I asked AI for help to include some public domain music (including Fur Elise, Mountain King and Reveille) and brainstormed some ideas on how to get the local time onto the screen. My initial idea was to use an RTC, but then I realized that I had already used up every single GPIO pin already, so I switched from that idea to just pulling the real time over wifi instead. Along the way I ran into some bugs, such as my alarm time kept getting overwritten by the real clock value every frame, syntax errors and non-matching names. After I fixed those, the code compiles just fine, though I still need to test it out with the real pcb, once it gets here. Next step: harware assembly and testing! That’s for now, see you on the next devlog!

0
0
91
Open comments for this post

2h 20m logged

Heyy there! Yesterday I designed the PCB for my alarm clock, and today I finished the enclosure. I struggled a bit because the guide used Onshape and I was using Fusion 360, so I had to improvise a little bit, but I think it turned out pretty nice. So, for starters, I added the pcb and the screen as .step files and then extruded a tough enclosure around them, making sure to leave enough clearances. Afterwards, I added a cutout which the screen could slide into and then added supports for the pcb with holes for the heatset inserts. Then I made the lid, where I also added holes in the edges, so I can screw it on the main body. Then I added cutouts for the keys, the buzzer and and two more so you could see the XIAO and the hackclub logo along with my initials. I’m feeling pretty good with how it turned out. Hope you like it too! Next up is gonna be writing the code, so follow along! See you on the next devlog!

0
0
21
Open comments for this post

1h 6m logged

Heyyyy! First devlog for this project! Oh how I love these hackclub missions. I’ve already done the hackpad (waiting for the kit to arrive) and really liked it, so the moment I saw this one I knew I had to try it out! What I focused on today, was designing the pcb in KiCad. I decided to make it so the user can navigate a menu where they can change the time the alarm rings, etc. For that I’ll be using 4 switches: up, down, enter and back, which would also work as the snooze button. I laid everything down arranged them neatly and traced the traces. After that, I thought that it’d be really cool if I could put the hackclub logo on there, along with my initials and a qr code to my github repo, so I did that using KiCad’s Image Converter tool. I also rounded the edges of the board to look nicer. I was also thinking to put some LEDs as well to make it more interesting; maybe I’ll do that next. That’s basically it for now, see you on the next devlog! ;)

0
0
20
Open comments for this post

1h 30m 51s logged

[Note: I have logged 1h 41 min + 56 min in my hackpad project and in hackatime I can see that I have an additional 1h 7mins working on the case + 1h 5mins on the firmware. On this devlog it says “1h 28m will be logged”, when it should say 2h 12mins. I’ve requested support in slack but gotten no response, so I’m going to write this devlog with time missing in hopes that after review the time will be added.]
Hii! So today I hopped into fusion and 3d modeled a case for my Hackpad! I added perfect cutouts for the key matrix, the oled and the encoder, as well as a cutout to show off the microcontroller and also one for the HackClub logo I had added to the PCB as a fun easter egg. I debossed both the Stardance logo and a “MADE BY HF” signature onto the side margins, as well. After finishing the case, I set out to write and compile the firmware for my hackpad using QMK Firmware. However, I kept running into quite some errors along they way and used AI to help me debug some of them. I mapped macros for all the keys, including copy, cut, paste, save, undo, redo, save, copy link and select all. I’m really happy with how everything turned out. Stick around till next time for the assembly!

0
0
10
Open comments for this post

2h 27m logged

Hey there! After taking some time to fully take in my first pcb iteration, I ralized the switches were too far apart, which would result in the hackpad to not be aesthetic when assembled. Also the SEEEDUINO XIAO was placed on the wrong side, so the cable powering the hackpad would stick out the front, makeing the whole thing look ugly. To solve these issues, I redesigned the hackpad using 8 switches instead of 9, and changing the hackpad layout from vertical to horizontal. I also added M3 mounting holes to all for sides, and referenced 3d models to all components to get a finished look of the pcb assembled. That’s for now, see you on the next devlog.

0
0
15
Open comments for this post

56m 27s logged

I always macropads were so freakin’ cool, let alone building one from scratch. This was my first time using KiCad (a software I’ve always wanted to learn btw), so pardon me if it’s not that good. So basically what I did today was design the pcb. First I made the schematic including 9 switches, a rotary encoder, and a small oled display (either a .93” or a .91”, I’m not sure). Because the switches were too many to assign each one to a different gpio pin, I wired them in a matrix. After that, I assigned all the footprints, and lastly hopped into the pcb editor and drew all the traces. I used Claude to help me navigate KiCad, because I was unfamiliar with the interface. That’s for now, see you on the next devlog.

0
0
7
Open comments for this post

10h 29m 35s logged

[ Note for Hardware Reviewers: I accidentally left my Lookout Desktop timelapse running while I took a break to watch a movie. The total recorded time says 5h 48m, but my actual work time was around 3h 17m (the last 2.5 hours is just a gray screen). I already talked to the @Fraud Squad on Slack about this and they said it’s all good, and that they’ll deduct the extra time after the project gets approved. You can reach out to them if you need to double-check! ]

Hey everyone!
Since my last devlog, I’ve made a lot of progress on my lockbox. I started working on the design of the enclosure in Fusion, trying to figure out how to make everything fit inside without making it look bulky and ugly. I watched some tutorials on youtube (not included in the time) on how to design the hinges, and modified the design so it accommodates the specific needs of the project. I also started working more seriously on the code and UI. I designed the different screens on lopaka.app and started putting them together using different functions. I also designed the home screen, which is going to be the main screen you see when using the lockbox. I’m trying to keep the UI simple, because it has to be navigatable solely using physical pushbuttons. I also spent some time optimizing the slicing settings in Bambu Studio for the 3D print so the enclosure can be printed more efficiently and hopefully come out cleaner.

That’s it for now, see you on the next devlog!

0
0
15
Open comments for this post

2h 7m 50s logged

Hey there! This is my first devlog. So, I’ve had this project idea for a long time, to build a lockbox where I can put my phone inside and lock it for a specific amount of time. There’s gonna be a TFT LCD display with a tamagotchi-inspired character who reacts to how you use the box. He’s happy when you put your phone in and lock it, celebrates when you finish a session without unlocking the box early, and is sad when you do. To start, I used chatgpt to get a first idea of how the character is gonna look, and then I drew him by hand on Piskel (a free online pixel drawing app). I’ve made 7 versions so far: idle, blink, happy, excited, celebrating, sad and sleeping. That’s it for today, see you on the next devlog!

0
0
26

Followers

Loading…