Get started
YouTube Video - Getting Started with PepperDash Essentials
Get a CPZ
Prerequisites
Note: Essentials 3.x targets .NET 8 (
net8) and runs on 4-series processors and VC-4. The .NET 9 SDK is needed because the test projects targetnet9.0
Build From Source
- Clone the repo:
git clone https://github.com/PepperDash/Essentials.git. The default branch,essentials-3x, is Essentials v3 - Open the folder in VS Code
- Build using the dotnet CLI:
dotnet build - The CPZ (
PepperDashEssentials.<version>.net8.cpz) is written tosrc/PepperDash.Essentials/bin/Debug/net8/and copied to theoutputfolder at the repo root
Download the latest release
Essentials v3 builds are published as pre-releases (tags v3.0.0-rc.*) on Github. Download the PepperDashEssentials.<version>.net8.cpz asset. The release marked "Latest" is the 2.x line.
How to Get Started
- Using an SFTP client or Crestron Toolbox, load the downloaded (or built) cpz to the processor in program slot 1. On VC-4, add the cpz as a program and create a room for it in the VC-4 web interface.
- If using SFTP, connect via SSH and start the program by sending console command
progload -p:1
- If using SFTP, connect via SSH and start the program by sending console command
- On first boot, the Essentials Application will build the necessary configuration folder structure (
ir,sgd,pluginsandjoinmapsfolders) in the/user/program1/path. On VC-4 the path is the room'sUser/folder. - Copy a configuration file to the
/user/program1/folder. The file name must containconfigurationFileand end in.json. Essentials v3 has no built-in room types, so a room in the configuration needs a room plugin in thepluginsfolder. For a complete working example that needs no hardware, see the Essentials v3 demo. - Reset the program via console
progreset -p:1. The program will load the configuration file.
Once Essentials is running, open Essentials Developer Tools in a browser at https://[processor-ip]/cws/debug/ to see its devices, config, routing and live log. Dev Tools is bundled in the release .cpz downloads; if you built Essentials yourself, load Dev Tools as described on that page.
The following console commands also show what's going on:
devlist:1- Print the list of devices in [{key}] {name} format
- The key of a device can be used with the rest of the commands to get more information
devprops:1 {deviceKey}- Print the real-time property values of the device with key
{deviceKey}.
- Print the real-time property values of the device with key
devmethods:1 display-1- Print the public methods available for the device with key "display-1".
devjson:1 {"deviceKey":"display-1","methodName":"PowerOn", "params": []}- Call the method
PowerOn()on the device with key "display-1".
- Call the method
Next: Standalone use