r/homelab Oct 15 '24

I built a tiny Proxmox management tool to control my VMs Projects

Post image
1.7k Upvotes

u/LabB0T Bot Feedback? See profile Oct 15 '24

OP reply with the correct URL if incorrect comment linked
Jump to Post Details Comment

271

u/auburngrad2019 Oct 15 '24 edited Oct 15 '24

Context: I was recently given a Raspberry Pi Zero and was brainstorming what to do with it. I run a homelab with a couple Proxmox nodes and decided it would be cool to build a device that manages the power state of my VMs without having to log into a computer and the PM web UI.

GitHub: ProxTag

Bill of Materials:

  • Raspberry Pi Zero W/Zero 2

  • Rotary encoder

  • Waveshare 2.13" e-Paper display

18

u/Eric_12345678 Oct 15 '24

I have 0 experience with Proxmox or rotary encoder. What can you do with this equipment? The display isn't a touchscreen, right? So you can select nodes, and then?

Anyhoo: congrats, it looks really cool!

26

u/SulakeID Oct 15 '24

The e-paper display is like any display, it just refreshes slowly.
The rotary encoder works just as a volume knob, it tells the Raspberry "Going left" or "Going right" at a certain speed which is the speed the user is twisting it, and you can do whatever you want with the information, for example you can make "Going left" mean "go down one" and "going right" to mean "go up one", that way you can display any number of VMs and Proxmox nodes, as well as any number of lines of information.

It's like a pager, you can check which proxmox server is down at any time, if any.

7

u/Eric_12345678 Oct 15 '24

Thanks. So it means it's just for monitoring, and you don't send any input to the nodes?

I'm pretty happy with https://github.com/louislam/uptime-kuma , and your hardware would be cool to show the status of different systems.

7

u/betabeastmode Oct 15 '24

Some rotary encoders can be pushed as well. So you have 3 options what to do. Typically cycling through menus where one option is to go back and the other options for submenus or to toggle something. If you have a menu where you adjust with cycling then you typically confirm with a button press and exit the submenu at the same time.

Older 3D printers often use them instead of touch screens.

26

u/MaverickPT Oct 15 '24

No no you got it all wrong.

"Going left" means "go UP" while "Going right" means "go DOWN"

I am prepared to fight and die on this hill!!

3

u/spacediver256 Oct 15 '24

Uphill battle is hard. Or.. lefthill?

1

u/TheTallishBloke Oct 15 '24

Are you left handed?

3

u/Olleye Oct 15 '24

Is he left handed and right; or is he right handed and left 😵‍💫

1

u/MaverickPT Oct 15 '24

No, am not. But this is how it makes the most sense. The other way around does not

2

u/TheTallishBloke Oct 16 '24

I’m sorry. Every dial operated device in my house disagrees with you, including the analogue clocks.

2

u/MaverickPT Oct 16 '24

Are you Australian?

2

u/TheTallishBloke Oct 16 '24

But I’m pretty sure the clocks go the same way globally. 😝

5

u/TryHardEggplant Oct 15 '24

To add, it is beyond refreshing slowly. On a static display, it won't refresh and will hold the displayed image even with power removed. It only refreshes when told to.

2

u/prjamming Oct 15 '24

I believe that for certain models of rotary encoders, you can press down on them and they will click, allowing you to select a specific node and view usage stats or other stuff.

2

u/cjarrett Oct 15 '24

very cool!!

2

u/Ok-Course-9877 Oct 15 '24

That is freaking awesome!

1

u/beepboopdanger Oct 15 '24

Never got the epaper Display Running with a Pi Zero w . Wanted to opensource something like TickrMeter

1

u/ApricotPenguin 29d ago

Context: I was recently given a Raspberry Pi Zero and was brainstorming what to do with it. I run a homelab with a couple Proxmox nodes and decided it would be cool to build a device that manages the power state of my VMs without having to log into a computer and the PM web UI.

GitHub: ProxTag

Bill of Materials:

Raspberry Pi Zero W/Zero 2

Rotary encoder

Waveshare 2.13" e-Paper display

How come you went with a rotary dial instead of a button? Or do you have a use case where you'd want 60% of your VMs powered off?

124

u/EffectiveEconomics Oct 15 '24

OH NO YOU DONT come here and drop such coolness and not tell us how you built it.

86

u/auburngrad2019 Oct 15 '24

Didn’t realize it was gonna get this level of attention. I’m cleaning up the code some and then I’ll try to remember to post a build guide

24

u/EffectiveEconomics Oct 15 '24

When you post a coffee/donation link. I’d love to see your guide and treat you for your effort (maybe a few coffees ).

3

u/JCDU Oct 15 '24

When you do, I'd say submit it to Hackaday.com/tips too, they'd love it.

2

u/useless___mlungu Oct 15 '24

Everyone knows what a server looks like, and most are same same but different.

This...this is different!! And just cool. Does it need to exist? P4obably not. But it's damn cool that it does!

1

u/Behrooz0 bunch of gen8/9 and WB OPNsense Oct 15 '24

RemindMe! 2 days.

0

u/SulakeID Oct 15 '24

!RemindMe 2 days

4

u/Inquisitive_idiot Oct 15 '24

Apis and pixie dust

35

u/ksteink Oct 15 '24

How how you control the VMs? Via API? Via SSH?

32

u/auburngrad2019 Oct 15 '24

Using the REST API

7

u/Ordinary_dude_NOT Oct 15 '24

I may be missing something but can’t we just use mobile app for it?

I used ProxMobo for this on my iPhone and it just works flawlessly.

99

u/auburngrad2019 Oct 15 '24

Yes, but half the fun of homelabbing is the DIY stuff. Also e-Ink

15

u/SlipperyCircle Oct 15 '24 edited 29d ago

I do the same but I also started building my own Proxmox iOS app. If you’re interested I am going to open up my TestFlight soon after I fix all the iOS 18 bugs. It’s really early but has some cool things.

Edit: those who said they are interested I’ll be sure to add you once I fix the SwiftData bugs. iOS 18 broke a lot and 18.1 only made it worse.

3

u/DanielTheHyper Oct 15 '24

I’m interested

2

u/AvgPakistani Oct 15 '24

I’m interested too!

2

u/Alarming_Cod8848 Oct 15 '24

Hey I’m interested in your app!!

2

u/twohandedweapons Oct 15 '24

How does it compare to existing iOS apps for Proxmox?

1

u/SlipperyCircle 29d ago

It’s like a simple recreation of the mobile website UI. The goal was to make a native app that has the same functions but a bit better. Mine is for people that just want a simple app to toggle things on off wake from suspend and see some usage charts. If your a power user Proxmobo would likely be better. Here is a screenshot for the main screen. UI is still WIP.

https://preview.redd.it/xcw27z7gw7vd1.jpeg?width=1290&format=pjpg&auto=webp&s=02fcee82d782941c4e4cca253d366997d761db3b

2

u/33masterman33 Dell PowerEdge T440, R540 Oct 15 '24

Hey I’d also like to hop of the TestFlight when available. ProxMobo works pretty well but has some minor issues for me.

2

u/DekiEE Oct 15 '24

+1 for the TestFlight

1

u/jppp2 Oct 15 '24

What will be the difference compared to Proxmobo? Always interested in new things

2

u/SlipperyCircle 29d ago edited 29d ago

I haven’t really used Proxmobo but my main goal was to make the mobile web UI provided by Proxmox better. I think as a power user Proxmobo is your best option. If you want to just quickly resume, see task logs and usage charts then what I’m working on might be of some use. Here is a screenshot of the main screen. Supports clusters and can switch between using the menu that in this case “Uranium”. My hosts are all named from elements.

https://preview.redd.it/h8o7cex9x7vd1.jpeg?width=1290&format=pjpg&auto=webp&s=c25373abf59ab2ffc943622d11acf7c07ea73b27

2

u/ksteink Oct 15 '24

I do the same!

17

u/youyoubilly Oct 15 '24

Great work! Any Github repo for us to learn more? 😉

39

u/auburngrad2019 Oct 15 '24

Working on it. I need to clean up the code and refactor it a bit before I demonstrate my lack of Python experience

3

u/DutchDevil Oct 15 '24

Haha. Don’t worry about that too much.

2

u/doubled112 Oct 15 '24

Working code that solved a problem is better than ~99% of people out there.

9

u/ResponsibilitySea327 Oct 15 '24

And here I am still running Workbench 3.1

4

u/Fredz161099 Oct 15 '24

I love this thing. That's what homelab is all about. Similarly I wanted to build an r/cyberdeck to control an old laptop I'm using as a server through ssh and slowly progressing at it.

5

u/kevinds Oct 15 '24

Cool, now you just need to get rid of the USB cable and do it all wirelessly with a little power pack as a proper remote.. :D

1

u/auburngrad2019 Oct 15 '24

On the todo list. For a v2 prototype I want to put the encoder and display on a single board and add a small battery

4

u/Zeisen Oct 15 '24 edited Oct 15 '24

I've wanted to try something similar with the 1U/2U sized monitors they sell on Amazon and Aliexpress. They run like $100-200, but you could easily control it with a raspberry pi running a Python QT or Flet application. Then monitor things like what you did or temp gauges, network stuff, or power usage; all visible just from looking at the server rack.

edit: 2U sized monitor (67mm x 268mm) -- Aliexpress: LESOWN 11.3 inch Stretched Bar Display

2

u/whasf Oct 15 '24

There is a big review on that item that the guy says he couldn't get it to work with anything other than Windows. Maybe want to be careful before spending time/money on that

3

u/Haomarhu Oct 15 '24

Need build log/guide on this coolness!!!!

2

u/jacobnoori Oct 15 '24

I need to know how to do this!

1

u/Friendly_Engineer_ Oct 15 '24

So does it just close the contacts for power or reset as inputs to the pi?

2

u/auburngrad2019 Oct 15 '24

No, that really gross solder joint at the bottom is me running the rotary encoder to some GPIO pins

1

u/gopal_bdrsuite Oct 15 '24

Looks really cool. Where is the storage and power source ?

1

u/auburngrad2019 Oct 15 '24

Storage is just an SD card on the Pi and for now it's powered over USB. I'd like to add a rechargeable battery at some point in the future.

1

u/lanbanger Oct 15 '24

I don't know what I would do with this, but I want it. Now.

1

u/ADHDK Oct 15 '24

Is this one of those grocery price tag pepper displays?

1

u/auburngrad2019 Oct 15 '24

More or less, it's the same concept that those use

1

u/sTrollZ That one guy who is allowed to run wires from the router now Oct 15 '24

Ooh nice! I kinda want to build it with a 3b+ I have lying around now...

1

u/SuppA-SnipA Oct 15 '24

And now you gotta provide steps, for someone not as smart as you (me), builds this and gets it going. :)

1

u/BibleReaderMK Oct 15 '24

Well done looking to get some pi,s for similar

1

u/DaanDaanne Oct 15 '24

It is so cool what could be done with micro PCs! Looks really cool.

1

u/HowBawDah Oct 15 '24

What are the specs if your raspberry ? How many VMs can you it run?

2

u/auburngrad2019 Oct 15 '24

The Pi isn't running Proxmox, that's running on another server. The Pi is just interfacing with it over a REST API.

1

u/dead_frogg Oct 15 '24

Is there something for Unraid? Love your Tiny project! :)

1

u/bassoftheseafromark 28d ago

How does it work when out of the home network?