GithubHelp home page GithubHelp logo

linsong / sedona Goto Github PK

View Code? Open in Web Editor NEW
33.0 33.0 28.0 5.93 MB

The Sedona Framework for building smart, networked embedded devices easier.

Home Page: https://linsong.github.io/sedona

License: Other

Python 2.41% Shell 0.35% C 11.43% C++ 0.53% Java 83.97% Batchfile 0.04% Lua 1.09% Dockerfile 0.18%

sedona's People

Contributors

andreysv avatar dgiorgis-tridium avatar divisuals avatar gitter-badger avatar linsong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sedona's Issues

Not able to run mqtt at runtime

Hi,
Always we need to modify the mqtt.sax file for creating a new publisher or subscriper and messages.
Why not able to allow drag and drop to sedona workspace to create publisher or subscriper and setting port, host name etc., ?
If do that, getting "Disconnected" and "Invalide parent" error.

Ubuntu bash: makedev: command not found

Using the Ubuntu Dockerfile and following the instructions here:

I managed to get to the last line with the container up an running but I can't run makedev in Ubuntu 20

Can you point me in the right direction?

Thanks

Kit API docs return a 404

Seems the API docs are broken in the new site.

By default, the <sedona_home>/adm/makedoc.py generates api docs in build/doc/api folder. If the <sedona_home>/doc folder is setup as mkdocs home directory, api docs would not be available at that location.

Should be a fairly quick fix.

use master as main development branch

I suggest to merge develop into master, drop develop and use master as main development branch.

  1. Master branch is default landing branch if user opens project page. So he see latest news, development activity and can decide whether project is active. Currently
  2. It's recommended practice: github flow
  3. Github counts developer contributions based on commits merged into master branch:
  4. It's easier for user to find what branch to take, when a lot of active and stale branches are exist in the project.

dev build doesn't work in the latest Mac OS Catalina (10.15.3)

Similar to #4

While building sedona dev environment (using makedev), the binary compilation fails due to missing headers:

gcc -m32 -I/usr/include/machine -D__UNIX__=1 -DSOCKET_FAMILY_INET=1 -D__DARWIN__=1 -DPLAT_BUILD_VERSION=\"1.2.29\" /Users/<user>/_git/_PROJECTS/sedona/build/temp/generic-unix/*.c -O2 -o /Users/<user>/_git/_PROJECTS/sedona/bin/svm
In file included from /Users/<user>/_git/_PROJECTS/sedona/build/temp/generic-unix/datetimeStd_DateTimeServiceStd.c:9:
/Users/<user>/_git/_PROJECTS/sedona/build/temp/generic-unix/sedona.h:165:10: fatal error:
      'endian.h' file not found
#include <endian.h>
         ^~~~~~~~~~
1 error generated.

Few workarounds are available to copy header files or symlink machine/endian.h.
However, with Apple continuing to tighten the dev tools, this needs a durable solution like this one in all native header files.

improve documentation generation system

now sedona can parse kit files and generate api docs from it. But there are several drawbacks:

  • the comment in kit source file is just plain text, you can not use links or add styles to text
  • the comment spreads in kit source file, it is ok for reference about class, method etc. but it is not good for how-to kind of document

We can solve above issues by improving the doc parsing and processing script, and Markdown syntax will make the generated document more readable.

Please add more possible improvements here.

String Utility kit

In almost every decent kit, there will be some methods for string processing: endsWith, startsWith, appendStr and more. It's better to make a string utility kit to collect all these common used functions, instead of invent the wheels again and again.

clean-up the dev environment - repo, tests, etc

Few specific clean-ups planned:

  • java, sedona and native source is scattered across the 'src' directory; should be aggregated into few logical folders
  • temp directories (manifests, kits, out, test, etc) are generated in the project root folder, should be generated in 'build' or 'dist' folder
  • test compiled code (.ir) is in the kit's main folder rather than in respective '/test' folders
  • all tests are currently run together rather than individually

research on why WebService stops responding from time to time

To reproduce the issue, install web kit, add a WebService to service folder, open the web page in browser, keep refreshing the page, you will get an error page with error message "This site can’t be reached".

Seems the sedona network stops responding. We need to find out why this happen and fix it.

websocket support

WebSocket can make data communication between sedona and HTTP client(event non HTTP client) faster, that will make dashboard like application to present sedona data on UI and send control command to sedona side faster and easier.

In this ticket, we just make general websocket to work, but not implement the application level logics. You can think of this as Dasp, and the application level logics as Sox. We do the Dasp part first here, and do the Sox part later.

Some resource:

import old project development history

I don't know why old development history was not imported as project was migrated to git. It's certainly possible. For example, it's already done here.

  1. It make project to look more mature, when number of commits on master branch is 1000+ instead of 40+.
  2. Sometimes it's useful to look into project's history: git blame/log.

Port sedona to ESP32

Is there a community port of the SVM that can run on the ESP32? I know it's possible since easyio uses an esp module in their FT-04 controller. Can someone point me in the right direction to load sedona on an esp32 module?

FATAL: makesedona failed

Im stuck at this point, could really use some help.

Thanks,

SS

WARNING: java_home environment variable not setup correctly

options.version = 1.2.29
options.test = None
options.run = False
options.scode = /home/scott/sedonadev/scode/x86-test.xml
options.app = /home/scott/sedonadev/apps/test.sax
Compile [sedona.jar]
Javac [/home/scott/sedonadev/src/sedona/src]
sh: 1: /usr/lib/jvm/java-7-openjdk-amd64/bin/javac: not found
**
** FAILED [/home/scott/sedonadev/lib/sedona.jar]
**
Traceback (most recent call last):
File "/home/scott/sedonadev/adm/makedev.py", line 88, in
raise env.BuildError("FATAL: makesedona failed")
env.BuildError: 'FATAL: makesedona failed'

make SpyWeblet and SpyRESTWeblet just like normal component

now the SpyWeblet and SpyRESTWeblet create static object during svm startup if web kit is installed. It is kind of risky to user since for normal component, its object goes alive only after user adds it to wiresheet explicitly. Consider the spy weblet can access most of data, it is kind of dangerous.

User has to uninstall the web kit if he wants to disable the spy weblets.

In this task, I will make the weblets work just like normal component.

MQTT client kit

MQTT is a machine-to-machine (M2M)/"Internet of Things" connectivity protocol. It's lightweight and open protocol, more details here: http://mqtt.org/

This task will develop a MQTT client kit on sedona platform.

REST API for spy

Currently, spyWeblet (servlet) serves simple, fixed web (HTML) pages. By serving only the data (JSON) using REST APIs, the presentation would be decoupled from data, offering greater flexibility on client side (REST/ JSON can feed another web application for mobile/ desktop use.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.