Live data from Hacker News

Mongoose OS – An Open Source Operating System for the Internet of Things

mongoose-os.com

51–60 of 102 posts

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#51
post #12

> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…

Seems to be the latter, fairly typical "its GPL unless you want to pay us for a different license" https://github.com/mongoose-os-libs/mqtt/blob/master/LICENSE

It seems that it lacks the "or (at your option) any later version" part. Which is quite sad.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#52
post #33

> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…

GPL does not allow static binaries from both GPLed code and commercial code. A workaround is a plugin mechanism with dynamic loading of .dll or .so libraries. But that won't fly on a microcontroller.

.dll won't help with GPL, only with LGPL (IANAL)

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#53
post #15

> Prototyping and Scripting Engine > Micropython Moving to production (C/C++) or factoring out critical pieces to C/C++ is not trivial VS. > mJS - JavaScript engine for prototyping and C/C++ for production I don't know much about it, but from the surface it seems that the problem is exactly the same? What is the benefit of prototyping in JS instead of Python? In the end, either you refactor everything purely in C, or…

The advantage is time. Many (most?) embedded environments are overly difficult (IMHO), and/or proprietary. Also, even in a good environment, C/C++ typically requires more lines of code than dynamic languages like Python or JS. Therefore, the industry has been looking for ways to combat both the below par developer experience, and the development time. Samsung's Jerryscript [1] is another example. That said, I think t…

Sure, I think I see the reasoning behind: reduce the time to market for embedded products.

But I'm mostly wondering the actualy benefit of choosing mJS instead of micropython to do so. It seems that both are capable of handling this problem, however mJS seems aiming at a compromise between JS and C, and my opinion on this is that it will introduce huge overheads on any projects. This mostly stems from my being wary of multi-language projects.

The process involved in embedded platforms seems heavy enough as it is, no need to blur the lines further.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#55
post #48

If you're considering embedded OS options, please look at these two (completely free) projects from the Linux Foundation: Yocto project creates a custom embedded distro based on your needs https://www.yoctoproject.org/ Zephyr supports hardware that can't easily run Linux https://www.zephyrproject.org/

Sure, try to run those on e.g. TI CC3200 microcontroller.

Yocto does not seem to support CC3200.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#56
post #33

Earlier quoted context omitted.

GPL does not allow static binaries from both GPLed code and commercial code. A workaround is a plugin mechanism with dynamic loading of .dll or .so libraries. But that won't fly on a microcontroller.

.dll won't help with GPL, only with LGPL (IANAL)

I think you have it backwards, if I am interpreting your very brief statement fully correctly...

If you are building a library and you want it to be open source but also usable by products that are not open source, you can use LGPL. If you are building a proprietary library and you want to keep it proprietary, but link it into a GPL application, I think there is nothing is stopping you from doing that.

You still have an open-source application, it just won't work without the proprietary library.

(This sounds like it should be against the letter of the GPL, but as a thought experiment, pretend someone else wrote the library. Say, Nvidia, and you are Linus. You have no control over how their library gets licensed, and there is no person or body which can stop you from releasing your own code as GPL, even if it may have branches that depend on proprietary code.)

Doing OSS this way is most certainly against the spirit of the GPL, but I think it is within the letter.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#57
post #41
post #15

> Prototyping and Scripting Engine > Micropython Moving to production (C/C++) or factoring out critical pieces to C/C++ is not trivial VS. > mJS - JavaScript engine for prototyping and C/C++ for production I don't know much about it, but from the surface it seems that the problem is exactly the same? What is the benefit of prototyping in JS instead of Python? In the end, either you refactor everything purely in C, or…

Speaking from experience, using MicroPython is trivial and often "good enough", as are implementing modules for MicroPython in C should they be needed (C isn't my first language by a long shot, but I managed to write a module for MicroPython with little problem). Also, MicroPython has pretty much all the features of core Python whereas mJS appears to have pretty much all the useful features of JS removed. Why not jus…

Indeed, share the vision of the product instead and how does it add value to the existing ecosystem.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#58

Bit of a confusing name, when there is already an extremely popular mongodb node.js framework called Mongoose

Also confusing as there is a small mammal that eats snakes called mongoose.

Also confusing when there is a vehicle in the Halo series called Mongoose. Confusing, confusing...

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#59

> GPLv2 license: FREE FOR NON-COMMERCIAL USE This confuses me, the GPLv2 doesn't say anything about commercial use, it merely says that you need to redistribute the source code to anyone that you distribute your software to. Have they placed additional restrictions on the GPL (which I believe you are prohibited from doing)? or are they just trying to highlight that they are dual-licensing it under a license that isn'…

That's an odd phrasing for sure.

I assume what they mean is that you can purchase a special license which allows you to use moongoose without GPL (typically for proprietary use), for example, x264 and x265 (well known GPL licensed encoders for h264 and h265) does exactly this.

Re: Mongoose OS – An Open Source Operating System for the Internet of Things

#60
post #55
post #48

Earlier quoted context omitted.

Sure, try to run those on e.g. TI CC3200 microcontroller.

Yocto does not seem to support CC3200.

That's right, cause Linux cannot run on the large class of microcontrollers - particularly, those with less than 4M of RAM. Mongoose OS is targeting that category.
Post reply on HN