Hey everyone, any hardware engineers / enthusiasts...
# our-work
l
Hey everyone, any hardware engineers / enthusiasts here ? If you like (or dislike 🤷‍♂️) working with Arduino, ESP8266s, ESP32s etc professionally or as a hobby, or if you want to get started but have found it difficult to get started, I have something super interesting for you folks then 💎 I recently finished and launched the initial release of Prism OS (prismos.dev), think of it as Android like platform (OS + APIs + Devices + Play Store) but for esp8266 (esp32 support soon) devices, I strongly believe Prism OS makes building apps and jumping into hardware development 10x easier than anything else yet if this sounds interesting then do check out https://prismos.dev or ping me on slack please 🙂 I am looking at getting an early adopters group started to get feedback, refine the platform and see how this can be useful for production level projects, and I would love for fellow hardware hackers in RemoteIndian to be a part of it, PS: Also the OS is completely open source! https://github.com/prism-os/os 😸
👏 3
m
Question: People have been using esp8266 since so many years now. Why is there no upgrade to it?
l
When I started the project ESP8266 was the hottest thing and was super super cheap too and ESP32 was just becoming available, ESP32 support is in works and given that this builds on top of arduino toolchain porting it to ESP32 or other boards wouldn't really be that difficult Would definitely like to get feedback and see how people use this project before deciding on what areas to focus future development on
h
Hi @limited-animal-95702 I work a lot on HW but everything I work on is 100% open source. I work on open source RTOSes such as ZephyrRTOS. I'm unable to find what prismOS does differently in comparison to publicly available RTOSes. If you can provide a link, I'd be happy to take a look. Good luck.
l
hey @helpful-gigabyte-47939 so Prism OS is to RTOS, what Android is to Linux kernel 🙂 You can get a better idea of this project at https://prismos.dev/the-goal would love to get your feedback on this once you do check out the link, or if you would want to discuss more regarding this, here or DM maybe ?
h
@limited-animal-95702 OK, so IIUC, you flash a minimal bootloader that enables the wireless interface to the supported boards and after that all updates can be done via an OTA mechanism via your Prism app store. Is the Prism App store code public as well, or is that how you plan to generate revenue?
w
Will share this with a friend who's into these things 😄
👍 1
l
@helpful-gigabyte-47939 yes, you can find more info on getting this up and running and installing the Prism OS toolchain at https://prismos.dev/docs/setting-up-device Prism App Store, backend services etc are not open source yet and they may or may not be open source in future depending on the direction this project goes, they mostly handle just the App Store and User management side of things and installing the apps and images over OTA, you can install apps and flash images locally to if you would prefer with the Prism toolchain setup in your system and the toolchain is open source and part of the os source repository
h
@limited-animal-95702 Very cool project and I wish you good luck with it. Some feedback if it helps: 1. Describe the underlying bootloader, kernel, toolchain in more detail 2. Describe the security of your OTA architecture. IOW, how a new image is deployed to the device. 3. Share plans on whether you plan to add support for other chipsets e.g. STM32, nRF, etc. What kernel would they run? 4. I assume you need to bundle the ESP SDK inside the Prism SDK? Is this bundling allowed? 5. Are you able to capture early debug messages and make it available to developer?
l
hey @helpful-gigabyte-47939, thanks for your detailed feedback! To answer your questions: 1. This project is built on top of esp sdk and arduino, so the underlying parts would be same as an arduino project running on esp8266, I am hoping that basing the project on top of arduino will make porting efforts relatively easy in future 2. Admittedly, this is one area I haven't focused at all on yet, would be something to make a priority once there is some traction, although the whole App Store and OTA from Prism servers for installing new apps is more of a hobbist platform thing and given the application specific nature of embedded systems I dont see that being useful in production grade applications, as of yet atleast, rather the idea is that the Prism Store and being able to easily publish and share apps and run multiple side by side acts as a gateway for new developers into the ecosystem and then their familiarity and thanks to the ease of use of Prism SDK compared to arduino or anything else would make a compelling case for them to then use this in production level apps, disconnected obviously from Prism Store and OTA architecture since they won't need to install or swap apps or even run multiple apps at once in a specific usecase scenario 3. Will add roadmap soon and the first priority is to port to esp32 and later based on feedback will port to more boards and hardware configurations 4. esp sdk is needed by prism sdk, esp sdk is not included in the bundle but rather user downloads it when they run setup_platforms.sh script as part of prism sdk setup process 5. when testing apps in development mode with prism sdk locally, developer can see errors and use logging or even take screenshots from the device for app store listing or sharing Hope that answers your queries, let me know if you have more questions and sorry for super long message 😅
h
@limited-animal-95702 How will you incorporate new SoC support ? By integrating the SoC vendor's SDK and then adding a layer to Prism to support that SDK?
l
currently since this has been built on top of arduino, any SoC that has support for arduino, porting it over would be straight forward, setup_platforms.sh currently pulls in esp sdk during setup, later it can also pull in sdk for other supported boards