Working Group

#595 Invitation to Project-Sandstar Working Group

Alper Üzmezler Thu 8 Mar 2018

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

Abstract: Project Sandstar

Background:

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

Methods:

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.

Results:

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.

Conclusion:

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 2018

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 2018

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 2018

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 2018

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 2018

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 https://bitbucket.org/ankalabs/sandstar.git sudo chmod +x sandstar/Installation/ez_setup sandstar/Installation/ez_setup

For complete detailed steps follow README.md text:- https://bitbucket.org/ankalabs/sandstar/overview

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 2018

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

Alper Üzmezler Sun 22 Jul 2018

Update #1

We have been busy since we made the annoncement on the SandStar.

A few items that has been completed is as following:

  • Cmake file created for compilation within linux
  • .Deb file is generated for the smooth installation process. We will have our deb distribution server eventually after creating automated unit testings.
  • Inner workings of exposing the sedona components as grids are generated. Please check the video here. Video
    • This will enable axon or AI to find where PID loops are linked to so we can automatically update PID's Kp, Ki, Kp parameters.

Looking for help

There are many use cases of SandStar. One of it is tag based control.

For example adding a tag to the device level to change its potential control methodology ie PID vs TStat. We could define these tags as a community.

There are other tags already defined within SandStar. You can check those within graphcommons application.

We need to get an area on project haystack and define these tags. Of course tags can change later. This is the first version. I will not worry about these tags until type system is complete.

We are also looking for programmers for :

  • Manual Unit Testing
  • Documentation -> My Turkinglish will not do justice to this project. :)
  • Improvements such as AI or analytics (real-time and historical) infused PID loops. I will explain the concept but not sure if this is the correct platform to do it as this is only related to haystack.
    • We are specifically looking for sponsors for this goal. It can be achieved soon..
  • Open Building Control is a government initiative taking data from models and creating controls logic. It spits out a json model. Also talking to LBL to add xml schema information for each sedona block within open building control application. There could a be liason within this project as well. This project is truelly interesting as generating controls logic from physical models. A person can be dedicated to this with LBL. You can check the project info on obc website.
    • Again if anyone wants to sponsor this initiative, it could be another avenue lowering engineering costs and would push industry further forward.
  • Social media liasons. We made a small video on hardware abstraction for DDC. It is a new concept and distruptive. We could create more educational videos for the market.

Currently working on

We are currently working on sHaystack which will acts as a client to other haystack services within SandStar.

Goal of this is to read vav averages from other haystack devices and map it to logic. Of course this is only one example. We can definetly come up with other use cases. If anyone interested joining to the programming wolf pack, please message in private.

Sponsorships

We are looking for sponsorships. It could be simple as creating a budget or sponsoring a feature set. We have been funding the whole effort for year and a half. I think it is in prime shape for others to join in as well. If you are hardware manufacturer, contact us. We could offer low cost on boarding engineering sessions. This is truely self describing controls platform in which has huge potential for the industry.

Stay tuned on social media, market education will be key to success. P2P haystack based controls is not just a dream anymore, we are truly close to it.

Ken Sinclair Sun 22 Jul 2018

Great work by all I am trying to understand better what you are doing thanks the video helped a lot https://www.youtube.com/watch?v=olQrQiluNA8&t=14s

Thank you, Alper, and Calvin well done

How can we Explain Sandstar in 15 sec?

Is this close?

Sandstar is a software virtual machine engine to build and modify Sedona code using haystack tagging relationships

My job as the storyteller is to explain the value of what you are doing to the world.

So I need to add English subtitles to what you are talking about and grasp the concepts of how you doing it.

You are all talking at a coding level which I understand the necessity of

Would it be possible to add an almost English comment of what the concept of coding you are suggesting will achieve?

Please keep up the great work my part as the storyteller is important to get you more resources, recognition, and money to help with your development.

Help me get the story correct

Ken

Calvin Slater Sun 22 Jul 2018

Hi Ken,

If I were to describe Sandstar in two sentences it would be:

"Sandstar is a complete open-source software project, including source code and build environment, to implement your own graphically programmable field-level DDC controller (i.e. VAVs and Fan Coils). Haystack meta-data is served at the point-level directly from the device, and DDC programs are completely portable across hardware vendors."

Alper,

Correct me if I'm wrong or this needs adjustment

Alper Üzmezler Tue 9 Apr 2019

Invitation to project Sandstar Foundation

This post should serve as an invitation to a meeting at Haystack Connect 2019!

We have been busy working on project sandstar. So far we have completed following since the last post.

  • Roof top unit pilot working over 6 months
  • Indoor air quality sensor
    • Currently wiring up led lighting with standardization to shift registers via tags.
  • VAV controller integration
  • Fix bugs
  • Created full fledged debian packages
  • Integrated sixfab rasberry pi hat.
    • This includes gps mapping.
    • A lux sensor

There are more to do of course.

  • More videos on how Sandstar is wired.
  • More documentation via fandoc.
  • Community outreach for IOT channels
  • More pilots and use cases
  • Promote so hardware manufacturers to build project sandstar powered devices.
  • Create foundation rules and elect members

For those who would like to attend please contact me so I can reserve the room.

We can split the meeting into half and half first introduce technology really quickly and talk about potential use cases and talk about creation of the foundation.


I will post date time and location once confirmed here.

Alper Üzmezler Thu 2 Apr 2020

Project SandStar IAQ

Project SandStar IAQ

  • This project consists of four different sections.
  • Project Sandstar - UART to Haystack code (open source)
  • Electronic board design (open source)
  • Industrial Design (open source)
  • Analytics Engine (licensed or integrate to your own)

Code

The first section is the integration of project SandStar into AM 4100 and indoor air quality sensor. The application converts the UART protocol and exposes all the data to Project Haystack Project utilizing project sandstar.

Project Sandstar utilization

  • Sedona Framework utilized to filter incoming data and turning on led lights.

Electronics board design

The second part is an electronic design for BeagleBone, where we have created a hat and alighting panel.

Industrial design

The third section is the industrial design, where we have created an inside plastic area to hold the electronics ports as well as plastic that we had picked where the interior plastic molding will be placed in.

Hardware

  • Beaglebone - Enhanced or any beagle that has 2.1 mm jack
  • HAT design manufactured by IoT
  • HAT lighting Panel
  • Sensor board from Cubic
  • Industrial Design custom and ready board from polycase

Custom PCB holder

  • Outside CNC'd device from polycase. ZN45

Open Software

  • Project Sandstar modeled for Cubic IAQ's UART protocol

Commercial Software

  • Ankalytik or SkySpark or send data to your cloud.

We have written a blog why we made this decision as well.

Login or Signup to reply.