I found a nifty trick with ESXi. If you want to use an NVMe Drive as your main datastore, you can install to it as normal, but the Dell R720 will not boot to it. (at least in my case, using a Kingston A2000 NVMe SSD on an Orico PCIe Adapter card)
The UEFI simply doesnt see it as a drive.
But what you can do is create a 4GB HDD partition on the vFlash SD card, and install ESXi to that.
While smaller than the minimum disk size of 8GB, the installer will run correctly.
You can then reboot the system, and boot off the 4GB vFlash partition.
Somehow ESXi seems to realise what’s going on and switches over to the NVMe drive!
When it boots up, you will find that your datastore resides on the NVMe drive.
I have a 3CX PBX at home I use for a few things, and I also have a Cisco SPA504g that I use with HamShack Hotline.
I have a second extension setup on the SPA504g for my 3CX system, but I figured it might be a good idea to get the 3CX system to register to HH as a trunk as well! That way I can also make and receive HH calls from my phone and the amazing 3CX application.
I applied for a new trunk line via the HH Support Center, and received it the following morning.
They provided me with three pieces of information; User: 30027 – This is the extension number assigned to my trunk (Try calling me!) Password: aprettygoodpasswordwashere IAX Host: hhap.wizworks.net
The IAX Host is the SIP server, and should accept a SIP Register on port 5060 with the authentication info above.
In the 3CX Management Console, I went to Trunks and clicked Add SIP Trunk.
I selected Generic as the country, and Generic VoIP Provider as the provider. The Main Trunk Number should be the extension provided above.
I filled out the info where it needs to go, and set the destination for calls to the main trunk number to go straight to my extension, so Ill get them on my mobile or PC.
This SHOULD be all that’s required! But alas, I am not that lucky today.
The trunk is failing to register. If we switch over to the 3CX Event Log, we can see the failed registration attempt.
Its worth noting here, that while the log shows the user as email@example.com, this is merely a graphical confusion, as 10001 is the internal number assigned to the trunk by 3CX, and not the actual user that it attempts to register with. 3CX Uses the SIP User ID we entered above to register, but I am still receiving a 403 Forbidden from the hhap.wizworks.net:5060 (which currently resolves to 22.214.171.124) server.
I thought this may be happening due to the second connection I already have from this address, the Cisco SPA504g handset, so I connected to my Unifi Controller and shutdown the PoE to the port the phone is connected to.
Once the phone went offline I tried registering again through 3CX, and this time it gives an error that the service is not available…
I have reached out to the HHOPS team to see if there is any issues currently with the hhap.wizworks.net server, and will update my post here when I hear back, or if I otherwise resolve the issue.
I heard back from HHOPS!
They gave a few suggestions, and I was able to get things up and running!
Rather than Generic SIP Provider I have used Asterisk as the type, and rather than 5060 for the port, I have used 4569. It is now successfully registered and appears to be working!
To finalise, I have also setup an Outbound Rule for Hamshack Hotline, where calls to numbers with a length of 5 digits get routed out the new Hamshack Hotline trunk.
I have had for the last few years, a growing pile of electronics that I called my homelab. It looked a bit sad.
I decided recently that it really deserved some love, and it’s really very rewarding to put in a bit of effort for something that looks good.
So I started looking into ideas on how to clean it up.
Initially I was planning on getting either a 9u or 12u rack/cabinet, and just leaving it in the same place. But as much as I love my servers and gadgets, I don’t think a black metal box in the living room/ kitchen looks great to guests. So I figured I should try something that looks better.
An IKEA lack was off the table, as it’s much too large for something up against the wall in my opinion, so I browsed the website for a while until I came across the TRYSIL. It’s a chest of r draws, that extends a mere 40cm from front to back. Perfect for up against the wall! And at only $129, it was just $4.05 more expensive than a 9u rack.
So I ordered one and picked it up Friday night. Assembly was pretty straightforward, just follow the pictures as you would expect. But what I didn’t do was install the bottom two draws, I left that section completely open.
I purchased two metal strips for.the hardware for about $0.80 each, and laid the two draw fronts together about the correct spacing apart, and bolted them together using the metal strips.
I then measured out and attached two butt hinfes ($4.95 for the pair) to the new door and cabinet.
I had this wall-mount server rack thing left over from a previous intention to wall mount my servers in the garage, and flipping it on its side gave me a perfect 3u mounting space.
I used M5 bolts and some washers to secure it in place, and it’s not going ANYWHERE.
This fits really well, leaving a bit of space on either side for cable management and other things.
I then test fit a PowerPoint art he back and started on my way to cutting out a hole in the base to mount a pair of 200mm fans for airflow.
In Australia you can’t do mains voltage work without a license, so I called over a sparky friend do wire things up for me.
I went out to my local Jaycar to pickup a few things I would need, and while I was there I found a 4 Port USB outlet for only $15! I grabbed this and a mounting box for it as well, this will be useful for odd things like an esp8266 to monitor temperature and drive LEDs, and the Mi-Light wifi bridge.
Now that sparky mate has installed those for me I went back to working on cutting out my hole for the fans. I probably could have cut it out before assembly but I was in the mood to get things done in one day so I didn’t want to trek out to Robots and Dinosaurs with some wood to cut out using their tools!
I cut a hole on the upper left side for a cable feed hole for ethernet connectivity, but I’m thinking I’ll replace this with a 6 way Keystone plate to keep the cabinet modular. I want to move the nbn cable NTD into the roof, so that rather than an RG-6 cable to deal with I just have CAT6…
I also got an IEC socket installed on the back to be fed from the external UPS which is too large to fit inside, this also means it’s relatively simple to unplug and move should I have to do that.
Once I had the holes cut out to my satisfaction, keeping in mind that they won’t really be seen so I wasn’t too fussed, I used cable ties to hold the two 200mm fans together, and screwed them into the underside of the cabinet over the hole.
Once I had mounted and wired up my fans, it was time to start moving my network hardware over.
I started with the switch as it will serve as the shelf for the other hardware. (don’t worry it’s properly bolted in)
I then installed the power distribution bar, NTD and pfsense router. I blacked out the pfsense because it’s a surprise for another post soon.
I affixed the Mi-Light bridge and zigbee2mqtt devices using command Velcro, and screwed in a fan controller harvested from the same PC the fans came from.
I began to test fit the various power supplies inside, there’s a few because I’m using micro PC’s as servers… I’m considering consolidating the Synology units into a single 150w PSU though.
I test fit and began cabling everything in, I have ordered a brushed 1u panel to clean up the wiring a bit more but it will be a few weeks from china.
Once everything was in, I did a final test to make sure I was happy with the airflow and the path the air seems to be taking through the cabinet, which will improve after I install the brushed plate and a blank panel.
With ally tests done and happy, I hooked up the ups and turned on all the servers one after another. I monitored them as they came back online to ensure all VMs and services started correctly, and so far only Wireguard refuses to start! 🙁
Good enough for me!
And with that the move was virtually complete!
I have since added some lights, and a DHT22 temp/humidity sensor inside to keep track of how it’s going, but temps so far seem very acceptable.
The 120mm fans bolted directly to the cabinet are audible so I would like to replace them with noctuas, mounted via rubber or foam dampeners.
Overall I’m super happy with how it turned out, everything fit perfectly, it was fun to work on and build, it looks so much better than an ominous pile of electronics next to the kitchen and dust will hopefully be a bit less an issue now!
Best of all, it looks nothing like a server cabinet!
My Home Assistant / Hass.io install was an old ResinOS image from the hass.io website running on an Intel NUC.
Occasionally I would have to reboot the machine, as it would loose network connectivity for an unknown reason (The machine was still connected, and the host OS, but Home Assistant could not connect out to the internet? as in, the logs were full of time outs and refused connections due to ‘max retries exceeded’
I wanted to migrate this over to a Ubuntu Docker install so that I had better control over the hardware and could do other tasks on the machine, and to hopefully repair the issue with connectivity.
I took a snapshot of hass.io through the web UI, copied it off as well as manually backed up the files, and then installed Ubuntu 18.04.3 onto the NUC.
I installed Hass.io following the manual install directions on the website, and then the samba addon. Copied the file back into the correct folder and rebooted. Once it was back up, I selected the snapshot and hit restore.
It took about half an hour to complete for some reason, but once it had, it was pretty much exactly how it was before I started.
There was a few things that required attention, for example Node-Red was not connecting. I didn’t do anything to it but restarting and it connected once more. There was also problems with MariaDB that I couldn’t understand, it could not connect, but was listening and running fine? I ended up just removing this addon and reinstalling it, as it was pretty simple.
Once it was all up and running again, It seemed to be working fine. I setup Portainer manually and connected it to the local docker instance, and added my other docker endpoints to it.
All was good.
Until the next day. My alarm didnt go off in the morning, which was the first red flag, I tried opening Home Assistant to adjust my Air Conditioner and it would not load, I checked Portainer and the container was still running, so it should be working? Checking the logs it looks like its running but cannot connect to the internet again. This is similar but not exactly the same messages as previously. I restarted the Home Assistant container and the logs indicated it was having connectivity problems out to the internet, but this should not stop the Local UI from working on https://IP:8123 … yet it was? I had to leave for work at this point so I figured no biggie, ill fix it on lunch over VPN.
(update: the alarm didn’t go off because the MP3 it plays is hosted on the internet, I need to switch it over to a local MP3 to remove this internet dependency)
But heres where the plot thickens.
Just yesterday I was toying with settings on my OpenVPN Server with my buddy Tom while we were trying to figure out why DNS doesnt work for local clients when connected to VPN, and something we touched must have been wrong as now my VPN is playing up and apparently he is having internet troubles too.
The next day:
So it turns out I didn’t break anything, Telstra had messed up my account for some reason and after an hour talking to them they were able to revert their changes and fix it. Now everything’s back to normal!
Almost exactly (give or take a few days) one year ago, I was browsing eBay looking at Nortel 5520 switches, I was upset that in America you could get them for $75US a pop, whereas over here they were almost $500AU each!
Fast forward to a few weeks ago, I learned of two Nortel 5520-48T-POE that were destined to go to an IT recycling company.
I was able to negotiate my hands on these two switches for $25AU each!
I got them home yesterday when I fired them up with my beautiful homemade serial cable (the one I got from Jaycar was crossover whereas the Nortel needs straight through)
I was greeted with an older version 5.0 software version!
This was no good, all versions of the software before 6.3.3 had terrible web interface.
I know many people say you should stick with the CLI, but when im in a hurry to make a change, check the status of a port, or shutdown / turn on ports, I want a simple and fast method of doing this.
So began the journey of upgrading the switch.
It started with an hour or two of research, trying to find firmware files, and documentation on the upgrade process and path.
You cannot skip major versions apparently, So I had to go from 5.0>5.1 and then to 6.3.
I was getting worried that all of the ftp servers I was finding referenced were dead links, until I stumbled upon a reddit users dropbox, which had everything I needed, PDF docs, firmware files for versions 5-6, I was set!
I found a page detailing the update procedure, which was a pretty simple command.
I reset the switch to factory settings, then gave it an IP address,
Then it was just a case of flashing the diag image, and then the main image.
A single command was all that was needed to flash each one:
5520-48T# download address 172.16.0.123 diag 55xx_diag.bin
5520-48T# download address 172.16.0.123 image 55xx_126.96.36.199s.img
These commands aren’t exact, but you get the idea.
After flashing each one the switch rebooted itself and did a pretty light show while flashing / booting.
Once the switch had rebooted, I checked the web interface by navigating to the switch IP address in Google Chrome, and was met with a warning that my browser may not support the page!
Dismissing the warning, the UI loaded, and it was far superior to the old one.
I suddenly have everything I need!
I will be installing this switch in my homelab once I can mod it to be silent, ill replace the fans with Noctua 40mm fans and see what else I can do for it.
A while ago I picked up a wi-fi enabled speaker from Target or Kmart for $50. It was advertised as on special for $80 down from $160, so I figured how bad could it be? Then when scanned in it came up as $50 so even better.
The speaker natively has Spotify connect and DLNA support, I don’t really have anything that streams to DLNA, so Spotify connect was what I had planned for it.
I did hope that I could get Home Assistant talking to it over DLNA but couldn’t find any DLNA components so wasn’t too confident on that.
The speaker itself feels well built, looks pretty decent, and sounds okay. It’s a bit bass heavy, and the PSU always sparks when you connect it (why is it 15v? Why not 12v???)
I used it for a day or two then it kind of got abandoned, as nice as a wifi speaker is, when it’s limited to just Spotify that’s less than amazing.
So fast forward a few weeks, I remembered that I have some Chromecast audio laying around doing nothing.
I had purchased them to test out the multiroom audio playback, something that has always interested me.
But after testing it out I didn’t really have a need for it.
I’m not walking around my apartment enough.
And the tv already has a regular Chromecast.
So the audios were just sitting on my modem in a triangle.
I grabbed one and hooked it up to the aux input on the wifi speaker to see how it sounds, and well, having the ability to stream content from almost any multimedia app, website or device is much more appealing than just Spotify.
Oh right I should mention that the speaker has a tendency to just, enter a sleeping state, where it disconnects from wifi, and doesn’t reconnect until you wake it up (I had to power cycle it ?)
This makes it REALLY annoying to use.
So I set out in a venture to install my Chromecast audio inside the wifi speaker,
What follows is a whole lot of work and overengineering that for the most part ended up being redundant.
I disassembled the wifi speaker and found that it does indeed have the rated speakers, and a fairly sized mainboard.
It had a wifi add on board too.
I left this in there so it will still function as its original purpose.
The plan was to disassemble the Chromecast audio, and solder wires between the aux port on the speaker and the Chromecast.
All the tests I did on this gave me faint audio on the right channel, and slightly louder audio on the right channel.
I couldn’t figure out why this was happening, as I traced all the connections and they were all correct ?
The only thing I can think of was maybe the wire is too high loss ?
Idk it was crappy hook Up wire.
Anyway I ended up just using the Chromecast short 3.5 cable. And melting a hole to plug it into the speaker.
For power I had to be a bit more creative, I wanted to run it off the existing power supply so it would be self contained.
A quick look at the main board of the speaker reveals a header with an i2c? Port on it. Including 3.3v VCC and GND!
I made a quick micro USB to wire lead and hooked up the Chromecast to the 3.3v line to see if that was enough to power it up.
Unfortunately it seems Chromecast needs more current than this port could give.
The Chromecast would power up then keep cycling between orange and white led, I think this is some sort of insufficient power indicator. Else it was just rebooting over and over haha.
Next I tried hooking up a 3.3v to 5v boost converter to see if it was just the low voltage causing the problem, but this has the same effect.
I concluded that this connector probably didn’t have enough current to power the Chromecast, which normally wants at least a good 5v 700-1000mAh of current.
I decided I would have to pull my power from the main +15v input, which obviously has to be stepped down.
So I grabbed a AMS1117 5V voltage regulator, which from memory the data sheet says can handle up to 12v (she’ll be right mate) and can output up to 1amp
Hooking this up between the 15v main input and and h Chromecast seemed to result in the same thing as before though …
It’s at this point I was wishing I had a nice big LM7805 or something.
I did however have an “adjustable voltage regulator module” from aliexpress, which was big and beefy. I wired this up to the 15v and then hooked up my multimeter to its output, it was showing 15v.
I turned it’s pot until it was a stable 5.02v which is close enough and then wired the micro USB to that.
Hooked up the Chromecast and it worked !!!
I shoved it all inside the speaker and reassembled it all.
With the speaker reassembled I gave it a test and all looked great!
Well worked great.
I remembered then, that Home Assistant had the ability to sent TTS to my TV Chromecast, I had disabled discovery of Chromecast because it kept showing up in the main view and nothing was using it,
I wondered if it could send TTS to the Chromecast audio??
So I re enabled discovery of Chromecast and restarted Home Assistant to see if it would pick it up. It did! And I had the option for TTS!
I did some setup stuff in Home Assistant that I didn’t document, but it was pretty straightforward!
Now I can send verbal notifications to the speaker’s by calling the tts service in home assistant, specifying the speaker media_player.wifi_speaker and giving it a message!
I also put another Chromecast Audio hooked up to a small Bluetooth speaker via a 3.5mm cable in the bathroom, so I can have notifications in there (this is also the only room with a sensor node at the moment!)
a notification in there could be: If the humidity reaches 100% and the window is detected as closed, verbally say ‘Please ensure window is opened to prevent mould build up’
or something like that.
Home Assistant is also able to message me via Facebook Messenger, which is handy for notifications away from home!
I might do another write up on Home Assistant another time though, once I fully understand it!
So i’ve wanted to try this one for a while, can I install a desktop GPU into a server, and pass it through to a VM for gaming on?
Well my server has 128GB RAM, 4 SSDs RAIDed together, and 16 logical processors, so like, why not add a GPU and play some games on it!?
I picked up a GT740 second hand on a buy sell facebook group, and i’ve spun up a VM running Windows 10 x64 to install steam on.
I test fit the GPU into my Dell R210, and it doesnt really fit with the fan on, so removing the fan so its just a heatsink lets it fit, but im not sure if the airflow inside will be enough to cool it down? hopefully.
Its not going in the R210 anyway, its going in the R610.
Ill power it down shortly and test fit it.
OK, I had to cut the end off one of the PCIE slots as the R610 only had x8 slots, but that wasn’t too hard, just some very careful dremel work then a small file to clean it up.
I also had to cut off the little lock part of the GPU, the part at the end of the connector, as the R610 raiser card has a large component there (intrusion detection switch maybe?)
With those two parts removed it fits in well.
The system is taking a *very* long time to boot… but it is booting.
the video is coming from the onboard graphics though.
WE HAVE ESXi!!!!
Okay it booted and detected the GPU correctly, but looks like getting NVidia pci-e passthrough is a pain in the ass…. Might look into an AMD card at some point instead. Until then Ill mark this as a maybe!
Maybe ill migrate all the VMs from the R210 over to the R610 and then setup the R210 with a desktop OS ? hmm
Over the weekend I picked up some fiber gear from the lab, took it home and decided to replace the links between rooms with it!
I brought home my trusty old Lindy switch I got years ago from ByteFoundry, some multimode OM3 cable with LC connectors, and I already had some 850nm optical transceivers at home in my tool box.
I replaced the run of copper from the core in the living room to the Lindy switch in my bedroom, it’s just sitting there for now, I’ll grab a Lack when I’m near Ikea next and mount it to that.
This solves my problem of having to do my wired network projects in the living room ! I finally have spare ports in my bedroom haha
The core switch in the living room has 3 spare SFP ports?, which leaves room for a second link to my room that I could trunk if I setup a NAS in there, and a link to my flatmates room, still leaving a spare port for a link to the veranda or garage if I setup a rack there.
There’s little benefit to this as the links are still 1gbps but the fiber has a smaller profile physically to the copper so it pleases me.
Plus it’s nice to play with fiber!
I’ll get some of that Velcro people use over cables to replace the duct tape as that’s already peeling 🙁
Here’s some photos of how it is:
I should get around to setting up a Spillpass hotspot already!
About a month ago, I set up pfSense on an old PC, and switched it to my main router around a week later once I had gotten the hang of it.
I turned our Asus DSL-N55u to bridge mode, and then pfSense was controlling the ADSL as well!
And with the Meraki MR18 handling WiFi, everything was taken care of.
now, Everything was running fine except a few things..
I have it set up with a squid cache, with max item cach size of 1gb. because it has a 500gb disk in it so I figured why not?
occasionallyyy, the i.imgur website will get weird errors and a few reloads are necessary ?
This seems to be remedied after a reboot of the cache, but im still not sure why it was doing this. maybe time sensitive cookies or something?
The other thing is this:
APPLE DEVICES ARE STUPID
I had my private DNS server in the list that DHCP hands out,
now one would expect as it isnt the ONLY DNS server that clients handle this just fine, so if they need to find testing.stupidurl they check them all, the public DNS say no, but mine says yes!
for the windows and android machines in the house this was very much the case.
but for the apple devices…. THEY KEPT *ONLY* SEARCHING MY DNS SERVER!
This meant that many actual websites and services kept reporting a DNS lookup error whenever people tried to use them.
Everybody in my house except me use apple devices so I have had to remove my DNS server, which has remedied the problem, and not too big a problem as I can just add it to my devices myself.. but still, why didn’t the apple devices query all the DNS servers and pick a working one ? =_=
The problem was consistent across Mac OS X, iOS 7, 8 on iPhones and iOS 8 on iPads….
Oh well… Heres a screenshot of pfSense for anybody interested:
Recently, an Arduino compatible IDE was released for the ESP and I’m super keen to try it out. I’ll download it later today and give it a go, ideally I want the adafruit neopixel library to work as then I can connect my coaster to the internet!
More on that in a minute.
Yesterday two things arrived in the post, my 16 neopixel ring, and my NodeMCU dev board.
Both very exciting!
Maybe I can combine the two? 😉
The dev board is because ive had difficulty flashing the ESP chips in the past so I was hoping to have better luck with a breakout board with inbuilt USB TTL and a flash button. I did! It flashed the latest NodeMCU firmware right away!
Node MCU is an alternate firmware for the ESP that has a runtime for Lua 5.1.4 inbuilt! So this is the excuse I’ve needed to learn a bit of lua!
I’ll also be using this later with the Arduino IDE and I’ll make up an image for cross referencing pins.
The neopixel ring is to be used in my ongoing quest for the most amazing coaster ever.
It will make my drink disco!
I’ve had a prototype in the past using a single RGB LED, then another using a disc of them, and this one is a ring, but they’re addressable!
What I’m hoping to get is a sort of rainbow flowing effect happening.
Ive got the code at a good starting point, for effect testing.
All I did was modify the example sketch that goes through a bunch of possible modes 😀
I’m driving it from a digispark board, and in the final build it will use a 3.7v lipo for power.
The LED ring does seem extremely bright, and gets a little hot during normal operation so I better look at dimming the LEDs as I only need enough light to light up my drink! Not the room Hahaha
There’s a few different sized ones too. The one with 16 and the one with 60 LEDs cost the same! D: sadly I don’t need that many though it’s far too big for my purpose hahaa
Maybe I can find a use for 60… Hehehhhh..
Oh and they come in strips too and individual of course! And boards… THERES LOTS OF CHOICES OK?