Page 1 of 1

loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 16, 2020 9:33 am
by jedie
It seems loboris MicroPython_ESP32_psRAM_LoBo fork is currently unmaintained, see: https://github.com/loboris/MicroPython_ ... issues/302

There exists a ticket for porting stuff into mainline micropython: https://github.com/loboris/MicroPython_ ... issues/304

I think there are some things that can be transferred. Some drivers for example.
e.g.:

Code: Select all

static const char* const display_types[] = {
    "ILI9341",
    "ILI9488",
    "ST7789V",
    "ST7735",
    "ST7735R",
    "ST7735B",
    "M5STACK",
    "Unknown",
};

static const char* const touch_types[] = {
    "None",
    "xpt2046",
    "stmpe610",
    "Unknown",
};
Unfortunately I can't help much because I don't have enough C knowledge.

What do you think?

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 16, 2020 2:43 pm
by jedie
Oh, i found:
Screenshot_2020-01-16 ESP32 RMT Neopixel implementation · Issue #4942 · micropython micropython.png
Screenshot_2020-01-16 ESP32 RMT Neopixel implementation · Issue #4942 · micropython micropython.png (19.81 KiB) Viewed 6606 times
https://github.com/micropython/micropyt ... -515026986

:(

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 16, 2020 4:32 pm
by Capstan
"hard to know if such code was/wasn't influenced by GPL code", that's silly. You could say that about any code anywhere. I think it's just a weak excuse for NIH.

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 16, 2020 11:47 pm
by mattyt
Capstan wrote:
Thu Jan 16, 2020 4:32 pm
"hard to know if such code was/wasn't influenced by GPL code", that's silly. You could say that about any code anywhere. I think it's just a weak excuse for NIH.
At the time this was a very legitimate concern. Loboris had claimed his repo was covered under the MIT license yet there were clear uses of GPL, violating the MIT claim.

Since he removed the GPL code this is probably now usable. There is a worry that it could be argued that viral nature of the GPL means that the whole repository became GPL at the point where he included any GPL code but I think this is specious. I believe that he had just not performed due diligence in checking licenses and inadvertently included it - removing it seems satisfactory to me. But IANAL.

As far as I'm aware the port of any Lobo features would be considered. However, as covered in other posts, it's not trivial as Lobo was able to take some liberties since his fork was only for ESP32. Further, while many people have requested Lobo features, few (none?) have stepped forward to submit PR's.

I have been trying to extract some features, most recently RMT, but found that it was easier to re-think the design and re-implement. It wasn't NIH, it was simply that the design I had in mind was very different to that found in the Lobo codebase.

Anyway, I just thought a little historical context might be worthwhile sharing... :)

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Fri Jan 17, 2020 3:38 pm
by Capstan
Loboris apparently went through his code and cleaned out what little GPL there was back in 2018. But the remark by dpgeorge about it was made on Jul 25, 2019 so it looks like he still considers the repository tainted. Seems unjustified to me.

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Sat Jan 18, 2020 6:26 am
by pythoncoder
The point here is that MicroPython is used in commercial products, as are the products of George Robotics, so the legal issue is important. If you've followed discussions in the industry on the GPL, the received wisdom is that even if a developer has seen GPL code before writing his own version, his solution (and hence the entire codebase) could be challenged. Strict "clean room" conditions are required when re-implementing GPL code. The question is whether the Loboris port adopted this precaution.

The GPL is widely viewed as toxic to commercial enterprises, so extreme caution is advised.

IANAL but I do read a lot ;)

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 30, 2020 3:54 pm
by Capstan
pythoncoder wrote:
Sat Jan 18, 2020 6:26 am
If you've followed discussions in the industry on the GPL, the received wisdom is that even if a developer has seen GPL code before writing his own version, his solution (and hence the entire codebase) could be challenged. Strict "clean room" conditions are required when re-implementing GPL code. The question is whether the Loboris port adopted this precaution.
'Seen GPL code before writing his own version' wasn't the issue here. A small amount of GPL code had been included in the repository and then was removed. It had not been re-implemented. And in reality, nobody can determine what you may have seen. In my work in the industry it has been sufficient to ensure that no GPL code was present in shipped products.

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Thu Jan 30, 2020 10:28 pm
by mattyt
Capstan wrote:
Thu Jan 30, 2020 3:54 pm
'Seen GPL code before writing his own version' wasn't the issue here. A small amount of GPL code had been included in the repository and then was removed. It had not been re-implemented. And in reality, nobody can determine what you may have seen. In my work in the industry it has been sufficient to ensure that no GPL code was present in shipped products.
It's not so clean-cut. Is it possible to simply remove GPL code from a codebase? This Stack Exchange post highlights some of the different opinions on the topic.

The concept hinges around the fact that the presence of any GPL code added to a repo means that the entire codebase is covered by the GPL. As such any derivative work - even removal of the original offending code - needs to preserve the GPL over the whole codebase.

I think this is nuts but I can see the legal consistency. And just because you or I says that it's not relevant doesn't mean that it is... ;) So I can understand the concern...

If a lawyer - or someone experienced in this particular domain - could chime in that'd be nice!

Re: loboris MicroPython_ESP32_psRAM_LoBo fork

Posted: Sat Feb 01, 2020 1:40 am
by Capstan
None of that has ever been challenged in court and I don't really care how many opinions about it have been posted online. Code that had appeared in a repository at some point doesn't poison all the rest of the code there forever. If that were the case no commercial product that was successfully scrubbed could ever legally ship. Surprised to see you take this stance on it.