In this post, I'm going to explore the different threading options on 3- and 4-series processors. I find it difficult to keep everything straight when working in different Crestron environments, so hopefully this post will be a good refresher when I need it. What are threads? Threads are an execution path through your program. See … Continue reading Multithreaded Programming
Author: Kiel
SIMPL Module Best Practices
When I started programming Crestron systems, there were two other programmers on my team. One was a senior programmer who had been doing it for years already; the other was a junior programmer who had been doing it for a year maybe? I feel like I fit into the middle slot between them quite nicely. … Continue reading SIMPL Module Best Practices
SIMPL Best Practices
I recently received an email asking if I could document some of the things I wished I had known when I started Crestron programming. I didn't touch Crestron until the twilight years of the 2-series (2010), but it was thankfully a solid platform to learn SIMPL Windows on. I had several years of AMX under … Continue reading SIMPL Best Practices
Another WordPress update
It looks like WordPress has another new theme and new blocks that don't work with my old theme. So here we are, a new theme!
Writing “Correct” Programs
Lately, it feels like I've had a problem making sure my programs are "correct." I'm hoping if I write about it, I'll see a pattern that I can fix. It's frustrating for everyone when bugs slip into commissioned systems, and it reflects badly on custom programming as a whole when these errors aren't caught before … Continue reading Writing “Correct” Programs
Programming on the Road
I've been traveling for work recently and kicking myself for not bringing an RMC3 along. It's not that I enjoy Crestron programming every waking minute of the day. A lot of times, I try to test programming out before I ship it off to someone as a "fix." As control system programmers, we're in a … Continue reading Programming on the Road
ATEM Mini Pro
Blackmagic Design makes some cool production switchers that are reasonably priced and work great. They even distribute an SDK to control them from Windows or Mac programs. Controlling from Crestron is tougher, but not impossible. Some third-party products have sprung up to make it easier, too. In this post, I'm going to walk through how … Continue reading ATEM Mini Pro
VirtualBox Headless
Collected from the wonderful documentation at https://www.virtualbox.org/manual/ch07.html. To see which VMs are available, type: $ VBoxManage list vms "dev-site" {2e39d6cc-c307-44f6-b73e-a6f95e0f17b0} To only see running VMs, type: $ VBoxManage list runningvms And to start it: $ VBoxManage startvm "dev-site" --type headless Waiting for VM "dev-site" to power on... VM "dev-site" has been successfully started.
HTML5 Cleanup
The last post took me way too long to write (like an entire month), and I think it's the format of trying to step through every single change, every single time that's slowing me down. We're going to be moving into program sizes where that just isn't going to work. But before we make that … Continue reading HTML5 Cleanup
HTML5 Huddle Room
For our first room type, we're going to program a very simple huddle room. It will focus around a PC-based codec that we won't control directly. These spaces are typically low-cost and plentiful, but only allow 3 or 4 people to use them. Keep It Simple Huddle Room design is easy: keep it simple, keep … Continue reading HTML5 Huddle Room