The project is not just a case, it's a hacker's kit - combining sophisticated aesthetics with practical functionality in a thoughtfully crafted device
Features:
-Extra button on the front side
-Bigger corner fillet radius, looks smoother
-Back sticker with the most needed information
-Magnets on the back plate
-Extra place for a mini accumulator
Link to 3d model https://www.thingiverse.com/thing:6910398
Showcase: youtube.com/shorts/MqLLUeMdLCs?si=Wx-jNfwBe_M0qaRK
It was a great experience to work on the case.
The idea is to give the Uniker some modern features - extra button on the top and more professional look and feel :)
It's surprisingly lot of tiny details which are invisible, but matter.
For example - the fillets on the edges, helping 3d printer run more smoothly and save plastic. Or the fillets on the usb connector - for smooth connecting.







import time
from unihiker import GUI
from pinpong.board import Board, Pin
Board().begin()
gui = GUI()
btn = Pin(Pin.P16, Pin.IN)
prev_state = btn.read_digital()
while True:
current_state = btn.read_digital()
if current_state!= prev_state:
gui.clear()
if current_state == 0:
gui.draw_text(x=50, y=120, text="Button pressed", color='#0000FF')
else:
gui.draw_text(x=50, y=120, text="Button released", color='#0000FF')
prev_state = current_state
time.sleep(0.1)
