New LightBurn Features (aka I probably didn’t read the release notes months ago)

I can’t believe I missed this option being added to LightBurn. In the device settings, there is now an option to enable is the laser on when framing option. This turns on the laser with a low power setting when running the frame to make it obvious where you will be cutting/engraving. This replaces holding shift when hitting the frame button from older releases. This small quality of life improvement is much appreciated here.

Device Settings with Framing Options

Proxmox VM Misconfiguration Downtime

I’ve got a VM running a critical service on my Proxmox host. This VM doesn’t have any real data to speak of, it just runs a few automated tasks that we rely on, so the virtual disk is rather small for it. For some reason while working on the VM (likely restoring a backup from a previous problem I had), I must’ve restored the VM and made my NAS mount the location of the virtual disk. So my virtual machine has been running off my NAS for a while. Until one day, when I had to bring my NAS down for an extended period, and the service went down too. I spent a bit of time trying to get it back up before realizing that the disk was located on the NAS and the NAS wouldn’t be up for a while. Nevertheless, once the NAS was back up, I moved the disk back to the virtual host where all the other VMs run from… oops.

3D Printing Bed Treatment

We have one material for my 3D printer that is very temperamental on the build plate. Printing using it and a clean build plate will lead to the print not sticking midway through and failing, while printing on glue stick or tape leads to it sticking so well it takes 30 minutes with a razor blade to remove it. Anything that seems to help it stick, helps it stick a bit too much, and my build plate is glass, so i can’t flex it to pop the print off. In comes the dumb idea, why not use a sticky note underneath the tape. This will let us flex the print just enough to break the seal with the build plate. It worked. So here’s how to do it.

Continue reading “3D Printing Bed Treatment”

Testing the G8 Lens on the Ortur Laser Master 2

I’ve been using the ortur laser master 2 for a while now, and while I had seen plenty of chatter about the G8 lens, I didn’t think it would be that major of an upgrade for me, but I was Very wrong. I recently picked up the G8 to try it out and once it was focused, the beam was tighter than it ever could be with the stock lens. This gave me high hopes for the test cuts.

I ran one cut job on some brown AstroBright paper that I was using a few days ago. With the stock ortur lens, I found that 900 mm/min at 100% power for 2 passes would give a clean cut through and require minimal to no hand work to split the papers apart. For my test with the G8, I started with one pass, and that’s all I needed, everything was perfectly cut apart, no tabs between the pieces, nothing. I did run into one snag with that first test run, some of my cuts were inaccurate, lines not lining up and some corners shifted. I noticed while focusing the lens that it was really loose in the mount. I pulled it out, put 2 wraps of teflon tape around the threads, and put it back in the laser. Second test cut went 100% perfectly, all pieces fell apart, no shifting of lines/corners.

The G8 lens is absolutely worth getting and installing on the ortur laser master 2. The tighter focus will help with both cutting and engraving and let you run the machine faster.

NextCloud “Maintenance” Mode Error Resolution

For a while my NextCloud server decided to stop allowing my phone or desktop to upload to it due to it being in “maintenance mode”, however I could log into the webui with no problems, and nothing in the logs showed it being in maintenance mode. This started to frustrate me as I could find nothing to signify why my clients thought the server couldn’t be used. I tried a number of things:

  • Clearing out the file locks table (there were 600,000 entries in it, and I’m the only user on the server)
  • occ db:add-missing-columns
  • occ db:add-missing-indices
  • occ db:add-missing-primary-keys
    What finally worked:
  • occ files:scan –all

Finally with the files:scan –all it started working again and my app was able to start uploading to the server. If you have a NextCloud server and have been running into “maintenance mode” errors when your server is not in maintenance mode, this is certainly worth trying.

Some GitHub Issues worth checking:

BlueIris and the No Signal Camera

I recently setup a few new cameras on my BlueIris box, however one camera in particular was giving me problems. I tried a few different configurations and each time I got a no signal error. I could change the IP to another camera and all was well, but this one in particular was angry at me. I could log into the web interface and view the feeds, so I knew it was working, it just had something up in the configuration. I ended up looking at the Blue Iris status UI to see that I was getting about 1.5FPS through with a slightly lower bitrate than the camera was configured to at the time. I updated the camera config to drop the bitrate and voila, signal, smooth video.

The root cause is something in the cable, either too much interference from AC wiring, or an end isn’t as well crimped as it could be. Either way, I got my camera up in my Blue Iris instance and things worked fine after that.

Calling HASS API from Various Shells

While working on making my macro pad trigger Home Assistant automations, I found the API would be the easiest way to integrate the systems. Here’s some of my experimenting with the API and how to call it from Linux curl and PowerShell Invoke-WebRequest

Linux Curl

Using the Linux curl command is pretty straight forward.

curl -X POST http://hass.local:8123/api/services/switch/toggle -H 'Authorization: Bearer ABCDEF' -d '{"entity_id": "switch.testsubject_test_subject"}'

PowerShell Invoke-WebRequest

PowerShell is a bit more annoying to get everything right, as Invoke-WebRequest is a bit pickier on its input arguments.

Invoke-WebRequest -Method POST -Uri "http://hass.local:8123/api/services/switch/toggle" -H @{"Authorization"="Bearer ABCDEF"} -Body '{"entity_id": "switch.testsubject_test_subject"}'

Apparently windows has a build of the official Unix curl and tar commands, but my PowerShell prompts all had curl as an alias to Invoke-WebRequest. I did find that if i call curl.exe, it would run the official curl command.

Conclusion

Do be careful when copying and pasting between shells, I found that copying out of the PowerShell prompt and back in would yield an invalid token. This was also encountered in the WSL terminal as well.

The API is pretty straight forward after a little bit of trying things out. The documentation covers the capability but doesn’t have as many examples as I would have liked otherwise.

Resources

PhotoPrism MySQL DSN

Setting up the service was simple enough, I chose to run it on my UNRAID server however this meant I couldn’t use the example docker-compose file. I took all the settings from it and set it all up on my UNRAID server with the only changes being to paths for my file structure and the SQL database information. I use a MySQL database server for most of my services, so I needed to get the DSN for that server, however this was the first time I used DSNs, however it is pretty simple to setup correctly. I used PHPmyAdmin to add a user and database for PhotoPrism, and from there I used the default DSN with my username/password and host/port information

<user>:<password>@tcp(192.168.1.11:3306)/<databaseName>?charset=utf8mb4,utf8&parseTime=true

After that, everything was simple to setup and use. I logged in and was ready to start ingesting images.