Computer HUD by pazu 3d model
3dmdb logo
Thingiverse
Computer HUD by pazu

Computer HUD by pazu

by Thingiverse
Last crawled date: 3 years ago
UPDATE
I have been working on this for a while now and have finally finished my version 2.
Right screen remains the same, but the left screen has been upgraded to a RasperyPi with a 5" screen as well. I've redone the website as well to display PiHole activity, weather and my solar system.
I then added a third screen on the far left using the brilliant OctoMonitor setup here: https://github.com/Qrome/printer-monitor
New STL's have been uploaded with 'HUD_V2' on them. I haven't bothered with the web stuff, but if people are interested I can upload (its not pretty, but it works).
I posted this up on reddit and few people asked for the STLs and more info on it.
From the 3D printing side of things, this uses a cheap 5" LCD from ebay with HDMI inputs and a Raspberry PI with a 3.5" backpack - the part list below is just for the screen setup.
Parts list is:
20 x 5mm M3 Bolts
2 x 20mm M3 Bolts
2 x M3 nuts
1 x Raspberry Pi (I used a 2, but any version would work)
1 x WiFi Dongle
1 x 3.5" LCD Screen, like this (https://www.aliexpress.com/item/32965280840.html) - note that I pulled the touch screen off
1 x 5" LCD Screen like this (https://www.aliexpress.com/item/32786838470.html) - note that I pulled the touch screen off
2 x Micro USB connectors and wire for power
1 x 90 Degree HDMI Connector to minimise footprint needed
All the parts are fairly straight forward to print, you will probably need to adjust the supports for the raspberry pi and LCD, I printed these to suit the units I have, but I suspect with the cheaper LCDs there will be some differences. That is why you will note there is no mounting holes for the supports - I positioned those then drilled them manually.
I had a lot of people ask about the way I had everything configured, so here is a more detailed information. Note that I won't do my own tutorials or information on stuff that already has a heap of information out there (like setting up Apache etc...), but I'll make note of it.
Overall, the Raspberry Pi Webserver runs a SQL database that collects the stats, a bash script running on the router sends stats to the SQL Database. We can then present and read the data from there.
Please refer to the Logical Diagram in the files for reference to the below steps.
1) Sophos UTM
I use Sophos UTM as my home router, its a basic PC with the Sophos image running on it, its an awesome router/firewall setup, very easy to use and very flexible.
More information is available here: https://www.sophos.com/en/products/free-tools/sophos-utm-home-edition.aspx
I won't go into detail into how to set it up as there are plenty of guides out there, but for the following information you will need it setup and working with SSH for loginuser enabled and know the root password. You will also need to save an SSH connection to the destination server - plenty of information around on that.
The Raspberry WebServer runs an SQLLite Database to record the stats for the webserver. I had used flat files originally, but I had issues with file locking when trying to write and read the data, so I switched to a basic SQL database setup.
a) Login to the UTM Box via SSH, you should be at /home/login/, but just make sure.
b) Create a BASH script using nano and copy/paste the content from Serverstats_bash in the files section. Update USERNAME@IPOFSERVER to the username and IP address of the Raspberry Pi in step 2 below. Save and exit, making sure the file name is serverstats
c) run Sudo crontab -e
d) Copy/paste the line from crontab in the file section.
e) Once step 2 below is complete, this should start sending stats to the DB
2) Raspberry Pi Webserver
This is a headless Raspberry Pi Server running Apache, PHP and SQLLite. Guides are available here:
Apache2/PHP: https://www.raspberrypi.org/documentation/remote-access/web-server/apache.md
SQLLite: http://raspberrywebserver.com/sql-databases/set-up-an-sqlite-database-on-a-raspberry-pi.html
I have a number of websites setup as VHosts, you can configure it however you want. The important bit is that the SQL Database is called serverstats.bd and sits in the same folder as the website and php files.
Look at the ZIP file called WebServer for all the respective files. The PHP file pulls the data from the SQL DB and presents it to the browser.
If all goes to plan, you should see stats and the traffic lights should also change colours depending on the load. Note that this is configured with my crappy internet speed, you will need to edit the traffic light conditions to trigger when you want them to. If you are still following at this point, it should be pretty easy to work out :)
3) Local Router LCD
So my router has a local 1602 LCD, power by an Arduino with an Ethernet shield to present the local stats on the router, Arduino code is attached, I won't go into to much detail with this one, but it needs physical RGB LEDs to show the load, and an I2C 1602 LCD. Code is commented so should be easy to follow and edit.
File is UTMDisplayV5.ino
4) Raspberry Pi Powered LCD Screen
At this point, you should be able to browse to the Raspberry Webserver above and see the stats presented, so the next step is to setup a Raspberry Pi with an LCD back pack that can see the website.
For my LCD, I needed to use the following Raspbian image: http://osoyoo.com/2016/09/13/install-raspberry-pi-3-5-touch-screen-driver-for-raspbian-jessie/
I had issues running Kiosk mode properly, so I'm using Firefox for Raspbian, autostarting that with the right website URL and then using a full screen plugin for firefox to accomplish the same thing.
I then used Unclutter to hide the mouse cursor - https://ubuntu-tutorials.com/2008/07/07/auto-hide-your-mouse-pointer-when-idle-with-unclutter/
Job done :)
5) 3D Printed casing - instructions at the very top :)
6) This is the 5" LCD that is actually a 3rd Monitor (I run dual screen) from my PC. This is very straight forward, needs 5V power (Like the raspberry pi), and an HDMI feed from the PC.
I then use Aida64 to setup something to display on it - https://www.aida64.com/
I know I have covered the setup very quickly and probably missed out a few things, but the point of this guide was to demonstrate the theory and articulate what was possible, I'm not an expert in these sort of technologies, just a lot of googling to make it work, but it works well - happy to discuss in comments.
EDIT: A few people wanted to edit the model itself, so I have shared out the Fusion Designs via these links:
Base: http://a360.co/2v5cNYU
Lid: http://a360.co/2hw2QyZ

Tags