I did a bit of investigating and its easy enough to get BendControl to start on WIndows. The easiest way is to install a JDK that has JavaFX built in (I used Azul Zulu OpenJDK) and then you can just run the jar file from the command line ( java -jar bendcontrolXXXX.jar ). All swell there. Upon launch, it won’t find a number of files but will create defaults. It creates all the necessary json data, including the default punches and dies offered by LMS.
Here’s where it gets interesting. The punches, dies, bends, and programs are all json files, one for each type. They are super readable formats. I haven’t had a ton of time to play yet, but editing these files with something like python is going to be very easy. Getting them between the machine and an external programming station seems a bit more inconvenient.
I’ll be poking at this more as time goes on. In the meantime, installing a nanokvm is easy.
1 Like
Sounds great keep up the work on this. I still don’t see how this will make it any faster due to all the warning screens. Maybe I’m missing something. I hope you are successful. Please keep us updated.
1 Like
I’m looking at it from a few angles, none are directly focused on addressing the UI prompting or making it faster. Im more interested in being able to get the bends and initial programming done in the office, on the computer, with my morning coffee in hand. That way, I’m only standing at the machine to do a little tweaking of the bends and to run parts.
Step 1, hopefully my quick hit, is to install a nanokvm in the machine so I can just access it remotely from the office for programming. It’s not ideal in my opinion, but it’s a quick win.
Step 2, the lazier approach, is to get bend control running on windows at least enough to import a backup from the machine, do the programming, and then export it so it can be reimported and used on the machine itself. Currently, Bend control isn’t real happy about not having a connection to a machine and won’t let me do anything in the UI. Emulating the orange pi and connecting it looks to be necessary to get this working. More investigation needed.
Step 3, write a standalone program that just pulls in a backup and allows the user to create the programs directly, then build a new backup file that can be reimported onto the machine. This has the advantage of being fully open to having the UI be whatever is wanted, but the level of effort here is substantially higher than the first two options.
Note that in case 2 and case 3, I mention using a backup file. At the moment, that is the only viable way to exchange data with the machine. I have no intention of “hacking” the image on the machine to get direct access to the live json files for any number of reasons, but mostly being respectful of maintaining the integrity of the system images Langmuir has created. Any work I do in this space is something that I want to happily coexist alongside official software and not become some thorn in their side.
2 Likes
@langmuir-sam Quick question before I invest any time poking around at this in code… I think it would just be good UX practice for any offline programming tool to be visually similar to the BendControl UI from a layout perspective so that users don’t have to learn two different interfaces. Would Langmuir Systems have an issue with using a visually similar UI layout? I’m not looking to use anything directly from BendControl or give the appearance that anything I write is official software from Langmuir Systems, I just want to know if there would be any heartburn if I maintain a similar layout so there is inherited UI familiarity when switching back and forth. If not, I completely understand.
So, just an update on what I had hoped to be step 1. It would seem that the idea of an HDMI splitter with the Orange Pi and NanoKVM isn’t working out so great.
Since that didn’t pan out, I looked at taking an alternate route. It wasn’t terribly difficult get logged into Armbian on the Orange Pi and install the packages necessary to enable gnome-remote-desktop. With the latest OS image release, Langmuir used overlayfs to make the root partition read only with a tmpfs overlay for read/write. This is good for both the longevity of the SD card and to solve issues with unexpected poweroff corrupting the filesystem. In order to install packages, you need to either disable the overlay or use an overlay chroot tool to launch a shell with r/w access to the lower level root fs that is actually on the sd card. You’ll need to initialize a new gnome keychain and also need to set up and start the service from the startup script that is called upon autologin of the user that is running the bendcontrol UI. Lastly, you also need to set up persistent wifi settings for NetworkManger in order to have the machine connect on boot. Network connections get reset on powerdown with the new overlayfs read only setup.
I’m not planning on creating a how-to guide at this time, but figured I’d put it out there that its quite doable to set up for vnc or rdp remote access to bendcontrol.
So far, I’ve seen no resource impact to the press by having remote access enabled. Pursue this at your own risk. One good thing is that if anything gets messed up, you can reflash the microsd card and restore form your last backup (you did grab a backup and save it to USB before poking at this, right?
).
Oh, and if you disable overlayfs to install and set up all of this stuff, do remember to turn it back on once all of your customization is done, lest you end up back in the situation where unexpected powerdown can lead to root filesystem corruption.
1 Like