Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flow 🞬 Zephyr RTOS. Going native #211

Closed
3Nigma opened this issue Sep 26, 2023 · 1 comment
Closed

Flow 🞬 Zephyr RTOS. Going native #211

3Nigma opened this issue Sep 26, 2023 · 1 comment
Assignees

Comments

@3Nigma
Copy link

3Nigma commented Sep 26, 2023

Flow meets Zephyr and it goes physical

Grant category

  • Educational material

Description

Wouldn't it be great if you could execute Flow transactions directly from within a bare-bone, physical, hardware platform itself? Using Zephyr RTOS as the underlying operating system, we'll gonna tackle just that.

What is Zephyr, you might ask? Well, for those who don't know, it's just another open-source, highly configurable, real time operating system (RTOS) written in C. It has support for more then 500 boards of various architectures such as ARM, x86, RISC-V, MIPS and others (with more being added all the time) with a thriving community of more then 1750 contributors, having submitted more then 84000 commits and merged more then 42000 pull requests to date. It's being decorated by 8.4k stars and often time ranks in github's monthly most trending repositories for the C language.

So it's safe to say that there's significant developer interest in this project. This also has to do with the fact that, unlike other RTOSs out there, Zephyr is under the umbrella of the Linux Foundation. This means that, both its code, and its support are of top-notch quality and won't be going nowhere soon.

In terms of security, an overlapping topic with crypto, Zephyr has its own active group dedicated to maintaining and improving it. This makes it a good web3 host in general.

All in all, Zephyr is an amazingly well engineered project, perfectly suited to house any decentralized-application. This grant aims to leverage this and bridge the knowledge gap between Flow's resource-oriented paradigm and the physical world.

Problem statement

As a developer, I want to learn to write Flow powered applications that run on non-traditional, native, bare-metal hardware.

Proposed solution

The deliverables will consist of a well-written Zephyr module project repository that will host a comprehensive demo application. The application will have 2 board targets:

  1. Nordic's nRF7002 development kit, a board that has WiFi capability so we can use it to write a closed, self-sustaining, web3 application
  2. a native POSIX, intended to be used by people who don't have access to the nRF7002 board but still want to play along from home. Zephyr's Native POSIX board targets are great if you want to run your application on the same machine that you use to write the application instead of using a physical board.

This repository will be accompanied by a, human-oriented, medium post (probably spread into 2 parts, for clarity) which will explain everything in good, fun to follow from home, detail.

Of course, emphasis will be put on both the characteristics of Flow and various security aspects of such an application.

The target audiences for this grant are:

  • C platform-developers who want to develop Flow applications
  • makers who want to use crypto in their projects
  • general, non-embedded, programmers who want to learn something cool and broaden their horizon

I believe that going ubiquitous is an obvious next step to take for Flow and heterogenous hardware platforms powered by Zephyr could be the ones that triggers this avalanche of refreshed interest.

Impact

Bringing decentralized-applications closer to the physical world to what is, essentially, an internet-of-things (IoT) development paradigm opens the possibility for new types of applications both for gaming (think of consoles) as well as a plethora of other use-cases.

If this grant is accepted and everything goes well, I do intend to use this experience to pave the way for developing a full-fledged, developer-oriented, flow-sdk C library especially tailored for usage in Zephyr applications.

Milestones and funding

Milestone Deliverables Timeline Risks USD proposal
1 - R&D and crafting of contracts Define an interesting user-journey to craft, write the smart contracts for it and research Flow's logic for serialization and gRPC execution 1 week - 1500
2 - Zephyr app A native Zephyr demo app able to be run both natively and on physical hardware, capable of interacting with Flow via the API defined at phase 1 2 weeks - 3000
3 - Article A well-written, well-edited, article that details the steps required to make this Zephyr-Flow symbiosis possible 1 week - 1500
4 - Promotion Spreading the good word to other Zephyr community developers as well as on other social media channels - - -

Total funding proposed: 6000 USD

Team

Name Role Bio Contact
Victor Senior All-In-One Software Engineer 18 years of software developer experience in both low and high level languages. Long-time AI fan. Enthusiastic spreader and sharer of good quality knowledge. Since I can remember, embedded development has occupied a special place in my heart. [email protected]
@3Nigma
Copy link
Author

3Nigma commented Dec 31, 2023

I see that this is not a priority for Flow. Withdrawing proposal

@3Nigma 3Nigma closed this as not planned Won't fix, can't repro, duplicate, stale Dec 31, 2023
@github-project-automation github-project-automation bot moved this to Closed (withdrawn or passed) in Grants Overview Aug 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Closed (withdrawn or passed)
Development

No branches or pull requests

2 participants