OS.js Project w/Dreamcatcher4 + Raspberry Pi4 = Perfection?

I have to admit, I’m a bit saddened to hear that Othernet is leaving Skylark ( OS.js ) behind. I completely understand the need for less expensive hardware, but seems like there was a really a place for OS.js in this project. It was a platform to work from for building out extended functionality.

It felt like a stand-alone web based OS that would be great for 3rd world (non-connected) use. The fact that it was ‘OS like’ added to the usability.

I hope that an eye is kept on the project, as you can see from the OS.js Demo website…it seems to be progressing. Is the overhead involved in serving up the OS.js files too much for the new hardware platform, is that why it is being left behind? I thought since the whole thing was .js then it would be browser heavy but server light (am I wrong on this)?

Othernet is datacasting files…seems like having something on the UI side that can process different file types as elegantly as OS.js would be a plus. OS.js is growing independently…seems like that would be a good fit for just adding a few files to the stream to add Othernet specific functionality to it.

Do we really need to move on to such a limited functionality web interface moving forward?

Well, OS.js was a nice idea, but it is way to heavy for the ESP32, the old Firmware is also not a real Startingpoint to switch to a current OS.js version, so we would start from scratch there as well.
The OS Like Interface isn’t bad, mayne people like it, but a normal Webinterface will be better for the ESP32 hardware as well as custom functions.

I worked on the new Software and it already supports many file types, we will add other files in the future, i think it is the right way to go forward.

Why don’t we split the workload? Dreamcatcher4 is limited to receiving files and a basic GUI (and maybe Rest-API?) and the presentation can be handled by a ARM-based mini PC (Raspberry Class) independently of the Dreamcatcher, IF people have a need for that. The 3.x Dreamcatcher was a one-stop-solution for that but was really too expensive for “emerging markets”. Starting with a current os.js just add an interface to the DC4-API (work in progress name) and have it serve up these files.

1 Like

Should be doable as os.js has extensions that allow for connectors. I like the idea of exposing the files.

Filesystem

Official Extensions

i was thinking about a proxy to serve the DC4 Data to many Clients over a Webser (Raspberrypi etc.), but it didn’t have time for it so far. Feel free to contribute, the DC4 Firmware is on Github :slight_smile:

1 Like

Let me ask the other way around. How much of the current Skylark GUI is custom and how much is stock (old) os.js ? I’ll fiddle with the DC4 firmware soon enough, i have a couple of ESP32 boards laying around.

@caveman99 The majority of the UI is based on stock os.js, but a really old version of it. Of course, there are elements under the hood that are specific to a data receiver (mp3 encoder, etc). If there was going to be any effort on developing for Dreamcatcher 3.x, I suggest starting with Armbian, which will at least be a clean slate.

@Cheaha It’s important to understand the system constraints of the new board (DC4).

  • 240 MHz CPU
  • 4 MB flash
  • ~2 MB RAM
  • running the application, GUI, and wifi (STA+AP)

But the suggestion above makes a lot of sense. Make the DC4 a dumb-pipe; basically just an FTP server. And then any other normal computing device can provide a more appealing user experience.

2 Likes

I think this is a great idea. Looking at the requirements of OS.js the only things listed are:

OS.js Requirements

“The only dependency is Node 10 or later and git as an optional recommendation.
Docker is supported so you don’t have to install node onto your system.
Runs in any modern web browser.”

I like the idea of having the simple ui on the dreamcatcher 4 and if say the user wants to have the bigger ui to handle the day to day use hosted on a rpi or even on a server or vps on a local machine to help in the case of an user environment that has a high user count like a community center or a school.

@caveman99 Do you think it’s doable?

@tylerhoot I think that’s where we are headed with this thread and the ideas proposed. Seems like the way to go is as @caveman99 suggested. Dreamcatcher 4 would expose data files, and a Raspberry PI serving OS.js with backend access to files would represent the UI layer. I like it a lot.

Had that Idea a Month Ago :stuck_out_tongue:
I would be happy when some one like @caveman99 would take some time and setup an armbian based image with OS.js. The Current DC4 Firmware already provides APIs for getting a file tree, so that could be used to generate the File URl that could then be downlaoded by the Proxy (Raspi etc.).

@Tysonpower i already made a few bookmarks and intend to dig into this. Unfortunately even on V3 there’s not too much movement on the os.js development front but if the skylark apps (e.g. the news viewer and the weather globe, if weather data is returning) can be ported without too much hassle this is doable. The UI right now essentially displays file content OR calls system scripts for status display. The new UI doen’t have to do that with regards to the Sat Modem any more, just need to handle network connectivity and do the display stuff based on the received files.

1 Like