Working Group

#595 Invitation to Project-Sandstar Working Group

Alper Üzmezler Thu 8 Mar

Hello haystack community, this is an invitation to the Project-Sandstar working group.

Abstract: Project Sandstar


Sandstar integrates sandstar engine, haystack and sedona into a seamless whole:


Device template is created in order to abstract system calls to GPIO, I2C, UART and other hardware level communication. Within this file we have utilized a tag called “channel”. A zinc in the form of grid with records where “channel” tag which is type number is generated. Within the zinc file we are forming all tags necessary to convert raw data into cur val data form. This consists of tags that defines programming data type, port definition, sandstar engine, localization conversion and last regular haystack tags are defined for application abstraction. Sandstar C/C++ engine consumes both files and communicates to both Sedona and Haystack rest api.


Abstraction in both hardware level and point definition level enables us to generate portable Sedona code. With the abstraction of IO, sedona code can be written in a way it covers all potential input, output and setpoint types. With the power of haystack ops (Rest api), we can add a record to the sandstar engine thus enabling the branch of the Sedona code that is waiting to be activated. We call this feature meta-morphing programing. On the roadmap, having haystack client in sedona will help us to have P2P device communication along with historical data and analytics based control.


Sandstar project will change how we think of DDC. Major improvements are hardware independent sedona code, historical data based control logic, driver abstraction via haystack can be achieved now. With the improvements to haystack ops where Sedona components can be created changed deleted and linked, artificial intelligence can be utilized to generate and improve upon human generated DDC code.

Call to action:

Read Project-Sandstar intro doc

Project Sandstar Intro PDF

Investigate tags on Graph Commons

Sandstar GraphCommons

Join us

Join to working group, ask questions, stay tuned for videos and last repo location.

Looking forward talking and hearing from industry experts, programmers in order to further standardize this project.

Calvin Slater Wed 14 Mar

This is a great idea!

Sedona is a solid DDC framework. I have noticed that many of our customers, building owners, and consultants are aware, and in search of, unitary controller products that do not require proprietary DDC programming tools. The demand is there. With new hardware emerging based on Apps processors becoming cheaper and more commonly available, the time for Sedona framework as well as Haystack servers to be implemented on all field devices is here.

This idea would seem to solve the issue of proprietary kits for IO. I think its a fantastic idea. Let me know how I can help. I will looking forward to updates.

Richard McElhinney Tue 20 Mar

Count me in Alper! :)

When do I see code!!!!

This is a worthy effort and is a space that hasn't been explored yet. I'm very interested to see where this working group goes.

If I can be of assistance I will be!

Cheers, Richard

Alper Üzmezler Fri 13 Apr

Release of Sandstar

Before world goes into chaos and I head to a trade show, I wanted to release the code. Stop by if you are attending the event.

Here is the source code. We will email the working group, create videos and learning tutorials. Programmers would be welcome help us with authentication scheme. Poco library does not have sham-256 on scram authentication, we might need to write that from scratch. All concepts will be documented very soon. We will be adding tasks on the bitbucket too.

Sandstar Repo

Calvin Slater Fri 13 Apr

A quick note if you want to start running the code right now like I did. It is best to install this package with root access. However the latest Debian images makes it harder and harder to enable the root user on ssh. If someone knows the process on the current image let me know. It is much more than just changing the config file for the sshd. Alper says you must use the serial access now for root. I didn't have a cable handy so I just manually stepped through all the commands on the ez_setup script, then sudoed and chmoded some stuff until it ran. Keep in mind this was a week ago so the install script might be different now.

Kushal Dalsania Sat 14 Apr

Hello Calvin,

1] Now there is no need for root access to install/setup sandstar environment on device. Just provide execute permissions to ez_setup script and run it as shown below:-

git clone sudo chmod +x sandstar/Installation/ez_setup sandstar/Installation/ez_setup

For complete detailed steps follow text:-

2] There's no need for serial cable to have root access. By the way there is no need to have root permissions. You can always use sudo from default user. Even if you want to enable root user permanently, login to default user (debian), and edit /etc/ssh/sshd_config file under sudo permissions. Within this file change PermitRootLogin value to yes, reboot device and then login as root user.

I think I cannot upload screenshots for detailed understanding. If you need screenshots for all steps I can mail you.

Calvin Slater Sat 14 Apr

Thanks Kushal! Im going to do a fresh image install this weekend so I will have the latest versíon.

Login or Signup to reply.