( Prior version 0.4.0 thread here: http://forum.embeddedcc.com/viewtopic.p ... 720&p=9856 )
BCS Desktop is designed primarily as a touchscreen app (although a touchscreen is not needed). The application gives you a very fast and customizable interface that requires no programming to use.
This updated version has been tested on Windows 7/8/10, Ubuntu Linux, Raspberry Pi and Mac OSX 10.10.5 (Yosemite).
In addition to making this compatible with the Mono cross platform .NET framework, this version fixes several UI related issues (quirks) as well as cleans up some unnecessary controls.
The files can be downloaded from here: http://www.surfcitybrewing.com/download ... -0.5.3.zip (installed file version will be 0.5.3).
Installation and setup instructions:
Download and unzip the package contents to a folder on your computer. For windows, simply run the EXE. (Setup for Linux, Raspberry Pi & Mac will be outlined in the next post.)
On the "Setup Options" tab, enter your BCS IP address and username/password (if auth enabled). BCS-Desktop will immediately start polling real-time data from your BCS. To populate all the controls with your defined object names, click on "Get BCS Config". Once all objects have loaded their names, you can start to customize your layout by clicking on the checkbox titled "Enable Customization". You can move/resize all controls and even load images to them. There are 3 empty images that can be used to add kettles or equipment backgrounds.
There is an empty layout configuration that has all BCS controls for both a 460 & 462. If you are running on a 460, simply select the unused items and change their visibility to false and/or move their position off screen. If you want to play with my current layout configuration, simply load it from the "Setup Options" screen by clicking on the "?" icon to open a file browser dialog. You can then select config-layout-jonw.xml to load my sample config.
If you wish to have multiple layouts (e.g. one for fermentation and one for brewing), simply copy the config-layout.xml file to a new name and make your customizations to it. I suggest using the naming format of config-layout-xyz.xml as the file browser to find layout files filters to "config-layout*.xml by default.
You can load different layouts from the command line by specifying the layout file in the format: BCS-Desktop.exe /layout:config-layout-ferm.xml
BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
-
- Site Admin
- Posts: 1726
- Joined: Sun Jul 18, 2010 7:51 am
- Bot?: No
- Location: Huntington Beach, CA
- Contact:
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
Installation instructions for Ubuntu & Debian Linux and Raspberry Pi
Install your Ubuntu or Debian Linux operating system according to the distro instructions. For Raspberry Pi, start by installing Raspbian on the Rpi. You have two options: Either download the latest version of Raspbian or download Noobs. If you’ve never installed Raspbian before, the easiest and quickest way is to probably install by using Noobs (directions here: https://www.raspberrypi.org/downloads/raspbian/ ).
Once your operating system is properly installed, you will need to add the Mono .NET packages. This is done by first adding the Mono project package repository. You will also need to perform an update/upgrade process of the installed packages.
This is done with the following commands (copy and execute individually):
Once that is completed, you will need to install the actual Mono .Net packages. You can do that by issuing the following commands:
You are now ready to install BCS Desktop. Start by either downloading the ZIP file to your computer via the download link, or install an SSH app for transferring files to the machine (see comments below). Create a folder for BCS-Desktop and unzip the contents to that folder. Ensure that the current user has write capabilities to the files in that folder. You can run the program by either typing "mono BCS-Desktop.exe" at a terminal window (command line) or you can use the built in file explorer to launch the BCS-Desktop.exe program. You may need to create a file association so the program is opened with mono.
If you have a different version of Linux, you can reference how to install the Mono .NET packages using the following instructions: http://www.mono-project.com/download/#download-lin .
Here's a couple of tips you might want to note regarding using your Pi.
Verify your screen resolution by running the command "fbset –s"
My installation auto-selected 1600x1200 even though I was on a monitor that was 1920x1080.
How to change your resolution is listed here: https://www.raspberrypi.org/documentati ... fig-txt.md
If you wish to connect to your Linux or Pi device from your computer, I suggest downloading and SSH program. My preference is WinSCP: https://winscp.net
Another useful feature to add to your Pi is the ability to connect to it via a remote console using either VNC or RDP. Since RDP is built into Windows, I prefer that method.
To install RDP: sudo apt-get install xrdp
To install VNC: sudo apt-get install tightvncserver
Installation instructions for Mac
Current support on Mac/OSX is provided via Wine and/or WineBottler. Running the BCS-Desktop on Mac is as easy as just adding the Wine.App file to the BCS-Desktop installation folder. I tested with the source from here: http://winebottler.kronenberg.org/ They include a combination package of both Wine and WineBottler, so you have flexibility on which to use. Note that with this distro, you simply mount the image file as a disk and drag/drop a single file to setup Wine. It doesn't get much easier than this. The Wine app already includes the necessary Mono files so no additional file or package installation is necessary.
Running on an older Core-2 Duo Mac Mini w/ OSX 10.10.5 (Yosemite) and only 2G of RAM performance was excellent. Setting the BCS refresh to 300 ms did not encounter any errors and touch actions are instantaneous.
Install your Ubuntu or Debian Linux operating system according to the distro instructions. For Raspberry Pi, start by installing Raspbian on the Rpi. You have two options: Either download the latest version of Raspbian or download Noobs. If you’ve never installed Raspbian before, the easiest and quickest way is to probably install by using Noobs (directions here: https://www.raspberrypi.org/downloads/raspbian/ ).
Once your operating system is properly installed, you will need to add the Mono .NET packages. This is done by first adding the Mono project package repository. You will also need to perform an update/upgrade process of the installed packages.
This is done with the following commands (copy and execute individually):
Code: Select all
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
sudo apt-get update
sudo apt-get upgrade
Code: Select all
sudo apt-get install mono-complete
sudo apt-get install mono-vbnc
You are now ready to install BCS Desktop. Start by either downloading the ZIP file to your computer via the download link, or install an SSH app for transferring files to the machine (see comments below). Create a folder for BCS-Desktop and unzip the contents to that folder. Ensure that the current user has write capabilities to the files in that folder. You can run the program by either typing "mono BCS-Desktop.exe" at a terminal window (command line) or you can use the built in file explorer to launch the BCS-Desktop.exe program. You may need to create a file association so the program is opened with mono.
If you have a different version of Linux, you can reference how to install the Mono .NET packages using the following instructions: http://www.mono-project.com/download/#download-lin .
Here's a couple of tips you might want to note regarding using your Pi.
Verify your screen resolution by running the command "fbset –s"
My installation auto-selected 1600x1200 even though I was on a monitor that was 1920x1080.
How to change your resolution is listed here: https://www.raspberrypi.org/documentati ... fig-txt.md
If you wish to connect to your Linux or Pi device from your computer, I suggest downloading and SSH program. My preference is WinSCP: https://winscp.net
Another useful feature to add to your Pi is the ability to connect to it via a remote console using either VNC or RDP. Since RDP is built into Windows, I prefer that method.
To install RDP: sudo apt-get install xrdp
To install VNC: sudo apt-get install tightvncserver
Installation instructions for Mac
Current support on Mac/OSX is provided via Wine and/or WineBottler. Running the BCS-Desktop on Mac is as easy as just adding the Wine.App file to the BCS-Desktop installation folder. I tested with the source from here: http://winebottler.kronenberg.org/ They include a combination package of both Wine and WineBottler, so you have flexibility on which to use. Note that with this distro, you simply mount the image file as a disk and drag/drop a single file to setup Wine. It doesn't get much easier than this. The Wine app already includes the necessary Mono files so no additional file or package installation is necessary.
Running on an older Core-2 Duo Mac Mini w/ OSX 10.10.5 (Yosemite) and only 2G of RAM performance was excellent. Setting the BCS refresh to 300 ms did not encounter any errors and touch actions are instantaneous.
-
- Posts: 31
- Joined: Tue Oct 13, 2015 10:43 pm
- Bot?: No
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
Nice work! I'll be downloading for Mac and RasPi. Thanks for sharing and your hard work! Looks great!!
-
- Site Admin
- Posts: 1726
- Joined: Sun Jul 18, 2010 7:51 am
- Bot?: No
- Location: Huntington Beach, CA
- Contact:
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
If you have downloaded the 0.5.0 version prior to this post, you may encounter an error when trying to activate the customization panel when using the default layout file config-layout.xml.
You can either download a new fixed copy or simply edit the xml file and set the value for "Loc_X" to 1 for the object BCS_Desktop.
Thanks brewstarke for the quick report!
You can either download a new fixed copy or simply edit the xml file and set the value for "Loc_X" to 1 for the object BCS_Desktop.
Thanks brewstarke for the quick report!
-
- Posts: 63
- Joined: Thu Dec 27, 2012 7:19 am
- Bot?: No
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
No Thank YOU Jon!
This thing is awesome. Can't wait to get this running on a dedicated system in the brewhouse.
As an FYI - I was just fiddling around with the layout and triggered that same error by moving one of the temp panels off the top of the page. No biggie- just hit the continue button and move it back but thought I'd let you and others know that it can happen.
A few Q's for you...
Can I add a duplicate timers to the layout? By that I mean I have a few of my processes run off an 'step timer' for a Protein rest (if I do one), my dough in, and mashout. I'd like to add that timer next to each of those steps so you can see how much time is left on that process by just looking across the one line.
I attached my layout to help explain what I'm thinking.
Also, is there a way to unbundle the process groups? Similar to above I was thinking of aligning my processes in a column so I basically run from the top down- I have it set up essentially that way by stacking the two groups but thought it may be more seamless if I had the two sets of processes shuffled in together a bit more. ie. step 1 of process 2 appearing above step 7 of process 1...
This thing is awesome. Can't wait to get this running on a dedicated system in the brewhouse.
As an FYI - I was just fiddling around with the layout and triggered that same error by moving one of the temp panels off the top of the page. No biggie- just hit the continue button and move it back but thought I'd let you and others know that it can happen.
A few Q's for you...
Can I add a duplicate timers to the layout? By that I mean I have a few of my processes run off an 'step timer' for a Protein rest (if I do one), my dough in, and mashout. I'd like to add that timer next to each of those steps so you can see how much time is left on that process by just looking across the one line.
I attached my layout to help explain what I'm thinking.
Also, is there a way to unbundle the process groups? Similar to above I was thinking of aligning my processes in a column so I basically run from the top down- I have it set up essentially that way by stacking the two groups but thought it may be more seamless if I had the two sets of processes shuffled in together a bit more. ie. step 1 of process 2 appearing above step 7 of process 1...
-
- Site Admin
- Posts: 1726
- Joined: Sun Jul 18, 2010 7:51 am
- Bot?: No
- Location: Huntington Beach, CA
- Contact:
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
Thanks. There's a lot of hours into this and even more in the 1.0 release version!brewstarke wrote:No Thank YOU Jon!
This thing is awesome. Can't wait to get this running on a dedicated system in the brewhouse.
I'll have to do some more "bounds checking" on the coordinate values. Windows does let you drag things off the left and top of the screen, but I've set the spinner adjustment controls for the locations to have a minimum value of 0 (not negative like off the screen causes). I'll fix that up.brewstarke wrote: As an FYI - I was just fiddling around with the layout and triggered that same error by moving one of the temp panels off the top of the page. No biggie- just hit the continue button and move it back but thought I'd let you and others know that it can happen.
Edit: I can't reproduce this. Can you send me a PM with a screenshot and exactly how you get the error? Are you on 0.5.2?
Both of these requests are handled in the future 1.0 release.brewstarke wrote: A few Q's for you...
Can I add a duplicate timers to the layout?
Also, is there a way to unbundle the process groups?
-
- Posts: 31
- Joined: Tue Oct 13, 2015 10:43 pm
- Bot?: No
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
I've been playing around with this on mac. I have figured out how to run, but it keeps crashing. Trying to see if I can track down the cause. Seems to be the debugger within Mono. I'll post progress.
-
- Posts: 31
- Joined: Tue Oct 13, 2015 10:43 pm
- Bot?: No
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
@JonW, would you be willing to share your BCS backup file? For some reason your Layout file within the app seems more stable for some reason? If I could load your config into my BCS to match your App Layout File, I could move forward testing this on Mac. With the default layout file the App seems to crash before I can look around. PM me if your willing.
-
- Site Admin
- Posts: 1726
- Joined: Sun Jul 18, 2010 7:51 am
- Bot?: No
- Location: Huntington Beach, CA
- Contact:
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
If you're on the latest El Capitan, I don't don't know what the status is for Mono compatibility. There are alpha and beta test versions available at the OSX page for the Mono project. http://www.mono-project.com/download/#download-mac
Here's a link to my BCS backup file: http://www.SurfCityBrewing.com/download ... -jonw.json
Are you getting any stack trace or error messages? Which EXE version are you running?
Here's a link to my BCS backup file: http://www.SurfCityBrewing.com/download ... -jonw.json
Are you getting any stack trace or error messages? Which EXE version are you running?
-
- Posts: 31
- Joined: Tue Oct 13, 2015 10:43 pm
- Bot?: No
Re: BCS Desktop App (V 0.5.0) for Windows, Linux, Mac & Rpi
Im on Mac OSX 10.10.5, Yosemite. But, I think the latest version of Mono changed the directory it installs to on ALL Mac OSX versions to comply with the changes within El Capitan. I followed the link you posted above in the install instructions for mac. I downloaded and installed Mono. On Mac you have to execute the App from a terminal window normally by typing, "mono BCS-Desktop.exe" However I was getting an error, No such file or directory.
I dug this up on another Forum of how to get .exe file to run on Mac using Mono. I personally don't know what it does
, but it worked. In terminal I copy/paste:
export PATH=$PATH:/Library/Frameworks/Mono.framework/Versions/Current/bin/
then type: mono
then: drag and drop the Folder containing the unzipped file, and press enter.
This will successfully run the App, but it is very unstable and crashes. I think Mono is at fault and not your App. I do not know much about Mono, this is the first time I've used it. I will continue to research and play with it.
I do not think I am getting any stack trace or error messages.
I am running 0.5.2.
Below is from when I run the file until when it eventually fails (About 5-10min??):
mono /Users/Josh/Desktop/BCS\ App/BCS-Desktop-0.5.0/BCS-Desktop.exe
2015-10-24 19:11:54.671 mono[513:16533] WARNING: CFSTR("Copyright \37777777702\37777777651 Embedded Control Concepts 2015") has non-7 bit chars, interpreting using MacOS Roman encoding for now, but this will change. Please eliminate usages of non-7 bit chars (including escaped characters above \177 octal) in CFSTR().
I dug this up on another Forum of how to get .exe file to run on Mac using Mono. I personally don't know what it does
![Confused :?](./images/smilies/icon_e_confused.gif)
export PATH=$PATH:/Library/Frameworks/Mono.framework/Versions/Current/bin/
then type: mono
then: drag and drop the Folder containing the unzipped file, and press enter.
This will successfully run the App, but it is very unstable and crashes. I think Mono is at fault and not your App. I do not know much about Mono, this is the first time I've used it. I will continue to research and play with it.
I do not think I am getting any stack trace or error messages.
I am running 0.5.2.
Below is from when I run the file until when it eventually fails (About 5-10min??):
mono /Users/Josh/Desktop/BCS\ App/BCS-Desktop-0.5.0/BCS-Desktop.exe
2015-10-24 19:11:54.671 mono[513:16533] WARNING: CFSTR("Copyright \37777777702\37777777651 Embedded Control Concepts 2015") has non-7 bit chars, interpreting using MacOS Roman encoding for now, but this will change. Please eliminate usages of non-7 bit chars (including escaped characters above \177 octal) in CFSTR().