Is Makeblock dead?


#23

@Andreas Speaking of… I was just going to order something from makeblockshop.eu, but they are also closing shop :frowning: I guess I’ll get it directly and rather just pay for express delivery then? Do you know of any other shops that have the full line? I need sprockets and powerful motors…


#24

Hi,

Kiwi Electronics in the Netherlands sells quite a lot of Makeblock parts. Is this what you are looking for or not?

https://www.kiwi-electronics.nl/index.php?route=product/isearch&search=tandwiel&lang=en

Greetings,

PinkyPepper


#25

I’m really glad to see this thread. I am a teacher trying to use 30 mbots I inherited, and over the last two years keep using bits of my precious time to try to figure them out, and have been baffled by this company, the combination of clearly really great stuff with weird fails that crop up in so many ways. I’ve developed a pretty deep distrust. For instance I love the mblock app tutorial for ipad but it took forever to find it, and it dies in the ninth chapter. I spend a year saying “huh?” because I kept ending up on websites that seemed similar but unconnected. There is a mBlock software link that says “mBlock for PC” but has all the mac software in it. There are parts I see in pictures but can’t find when I want to order them. And on and on. So I’m relieved that it’s not me that’s going crazy. Because I’m also trying to invest a lot of my school’s resources in the mbot line, and am afraid of making a fool of myself by choosing a horse that’s dropping out of the race.


#26

Hi kwbueler,

I did not have these problems but I admit that I do not have 30 mBots.
Me, I use the application mBot on iPad and Mblock under PC. I have no additional modules and I do not do anything very complex.

However, I understand you because Makeblock is not a product like Lego. He is a little more open and he is still quite young. Indeed, there are some surprises, but the forum is still positive for me.

I would say that there is a lack of a place to find resources that people could upload. It’s not perfect but it’s still ok.


#27

As you can see from my posts, I share your concerns. I have many decades of experience in teaching, programming, etc and I have found the learning curve steep.
However, the reasons that I picked this product are:

  • it is very flexible
  • this forum has very talented users who are here to help.

I am also frustrated that some of the sensors/modules only work on some products and some are only available from China.

The roll out of mblock5 (the next software product) and how it supports the existing products will determine my future with the product.

On the documentation side, I suggest you read this link:
[Published mBot book today]

Charles is a great source for info and his book might be very helpful.

If you give the users of this forum a list of problems/questions/etc, maybe we can shine a light on this tunnel.


#28

Hi kwbueler,

Sorry to hear about the disappointing on the instructions and website.
For the issue on the chapter 9-2 of mBlock Blockly APP, here we have tested it and it works. For the issue on your side, could you let me know more info requested in this post.

For the issue that " I kept ending up on websites that seemed similar but unconnected", it will be appreciated if you can show these website. Your experience on these website is important and we will provide feedback to related department for optimizing.

For the issue "There is a mBlock software link that says “mBlock for PC” but has all the mac software in it. ", which link do you use? Normally, you can download the both the windows and MAC version mBlock software from this link.

For the issue that “There are parts I see in pictures but can’t find when I want to order them”, it is true some parts are not available for sell individually since it is special for a robot kit. But you can let us know which parts you need, we can help to check if it is available for sell individually.


#29

tech_support, I have accumulated many screen shots of what I’m referring to. But I don’t know how to get them into this forum. Could you email me, or I email you, directly to send you these screenshot of parts of your websites and what’s not working on them?


#30

Hi, @kwbueler, there is a “upload” button in the forum text editor (7th icon starting from left). With this, you could upload images or link to online images…


#31

It would be stupid to purchase from New Zealand when I’m in Norway, right? I’m just trying to find a supplier that is closer than Makeblock direct. I’ve basically given up and order straight from them. Next week I head off to Shenzhen. Would be great to visit the Makeblock office and see if I can explain my problems in person? I’ll check by their flagship store in Huaqiangbei for sure.

@kwbueler I feel your pain. I dunno who their webmaster is, but he/she sure isn’t testing things either before or after publishing. I gave up and made a course using mBot’s with Arduino since that was easier at the time. I see that there’s a new version of mBlock out now, but I presume it’s just another glossed over version that does not address the deeper problems since Makeblock does not seem to understand what the customers are saying.

@Crackel I do not think that Makeblock is very open? They’ve copied pretty much all of the code in their Arduino libraries, but they have removed all the copyrights and accreditation and written that it’s all made by Makeblock? That’s incredibly rude and unprofessional.

Don’t misunderstand me - I really love the Makeblock core product. Just a few weeks ago I placed an order for almost $500 with parts. It’s just that they do not seem to have any quality control. They’ve grown from a small 8-10 person company that managed to fulfil all obligations and even answer all questions in this forum (check the history) to a huge company where nobody seems to be properly in control?


#32

hi @jenschr,

Happy to see you on the forum, it always gives good discussion.

For Makeblock code, it is only indicated that the code is available and that the product is constantly evolving. For code parts to borrow in other free software, I’m not aware of it and I have nothing to add on that side.

Quality side, I actually had 2 problems with blocks for the product Neuron from a kickstarter but never for products from Amazon and Makeblock was excellent in support and in the replacement. As explained in the website Kickstarter, the site is to help in the development of new products. Some adjustments that I asked Makeblock were made. I love the support even if I see that they are not a big team and that the hours do not fit in Canada. However, more reason to participate positively in the forum. I had access to level 2 support, I have good services.


#33

Would you please kindly point out which part/lines of code is copied from other repositories. I take this accusation seriously. I double checked with our engineers that these Arduino libraries are originally made, including the infamous RJ25 protocol that was once the source of numerous bugs and customer complaint. As a team working with open source community for years, we are glad we opened our code and schematics to the community, and we try our best in acknowledging others’ work. We are welcome for others to right our wrongs, as long as they are detailed and constructive.


#34

@bigeyex Check out MeStepper. It’s a 99% copy of the great AccelStepper library Written by Mike McCauley. It says explicitly on his website “This software is Copyright © 2010 Mike McCauley”.

Makeblock clone (with all references to the original author removed):

Original library:
http://www.airspayce.com/mikem/arduino/AccelStepper/AccelStepper_8h_source.html

Copyright means that Mike is the only one that has the rights to copy the source. It is available under commercial license or Open Source Licensing GPL V2. Since the commercial license is not mentioned on the source file, I can only presume Makeblock does not hold such a license. The distributed source code does not follow any of therequirements for GPL V2, but not just that - Mike’s original Copyright notice is removed and instead it says that the code is Copyright by Makeblock and that it was written by Mark Yan.

The same problem exists with many other of the libraries that Makeblock distribute, but I do not have the time to document this for you.


#35

Wow. You’ve got a good one.

I wonder where did your 99% copy conclusion come from.
A moss comparison of the interface brings 24% similarity. I have to admit that it’s not easy to find good variable names for things like stepper motors. What about the implementation?
the cpp files only have a 6% similarity - mostly from the simple getters and setters.
Here are the MOSS reports
http://moss.stanford.edu/results/125341092/
http://moss.stanford.edu/results/680198587/

Actually, there is a good story behind this: the engineer in charge tried to reach out the author, but it comes without a response. So he has to rewrite everything from scratch.

Please bring other 99% clones, and thanks in advance.


#36

But anyway, we could do better.
I have told the repo maintainer to add an “inspired by” attribution in the header file.

Please give other proof on your “pretty much all of the code” accusation. Thanks.


#37

So what does this even mean?
Does this mean this forum will be archived soon?


#38

Hello,

I had stated that I would not comment for the code. But I am also a programmer and I would like to emphasize this: I have already used sorting algorithms such as: Quicksort, Binary tree sort, Bubble sort. To be impure is, in my opinion, very correct. If not, what would be taught in our schools? I apologize if I hurt a few but to understand the copyright licenses and the particularities, it is necessary more than to make a link on it.

I do not think this discussion should turn into insult. We understand that there is a tension between Makeblock and some. We also understood that the discussion will go nowhere.

Personally, if my goal would be to get help from Makeblock, I would go in respect. According to my experience and my results, I have no problem with Makeblock. We always find a solution together.

Now, if you need help. Indicate the real problem (Guaranty, Bug, Documentation, ???).
Makeblock or maybe the forum people can help you? We are listening to you, hoping that we can help.

                              (sorry for my 3 year old english)

#39

I’m not sure if you’re a programmer or not @bigeyex but sure - if you consider comments like this to be unique in any way, they are certainly not very similar:

/**
 * \par Function
 *    distanceToGo
 * \par Description
 *    The distance that Stepper should go.
 * \param[in]
 *    None
 * \par Output
 *    None
 * \par Return
 *    Return the length of Stepper's running.
 * \par Others
 *    None
 */ 

The programmers among us can easily see that this is generated documentation with little or no value. Sarcasm aside - please do a comparison of just the code alone and you’ll see that the most dominant change is renaming every mention of the word “AccelStepper” to “MeStepper” + adding the autogenerated (but empty) documentation. I’m not saying that there are no original contributions to the code copied from Mike’s library and there are certainly parts of the Makeblock libraries that are written by Makeblock. I’m just saying that this file is 99% copied and does not follow the original license in any way. More than attribution is required to follow the license.

I honestly do not think that I need to prove anything. The above example should be enough, but since you insist?

Me7SegmentDisplay is a copy of:

MeRGBLed is a copy of:
https://fsck.com/~jesse/tmp/2017-08-09/kaleidoscope/html/light__ws2812_8cpp.html

MeOneWire is a copy of:


(but with the letters “Me” added in front of many variables. I’m sure there are many more. Below is the copyright notice that should have followed the OneWire library. It clearly states that the copyright notice should be left in the code UNMODIFIED. Instead it’s replaced with “Copyright ©, 2012-2016, MakeBlock”. This is downright stealing and breaking all the licenses that came with the file.

I do not understand why you cannot see that this is copied works. As a university level teacher in programming Embedded Systems, I’m very used to looking at other peoples code and comparing it to openly available libraries. I do not understand that you cannot instantly see that MeStepper is a copy of AccelStepper? Practically all the variable names are the same, all the contents of the methods are the same.

Renaming a variable does not make it unique. It’s still the same code that came from the same place and you’ve downright ripped out everything that has to do with the original license and pasted in that this is made by Makeblock. If this was done by one of my students I’d give them an F and report them to the school administration?

Here is the copyright notice in it’s full length:

/*
Copyright (c) 2007, Jim Studt  (original old version - many contributors since)
The latest version of this library may be found at:
  http://www.pjrc.com/teensy/td_libs_OneWire.html
OneWire has been maintained by Paul Stoffregen (paul@pjrc.com) since
January 2010.  At the time, it was in need of many bug fixes, but had
been abandoned the original author (Jim Studt).  None of the known
contributors were interested in maintaining OneWire.  Paul typically
works on OneWire every 6 to 12 months.  Patches usually wait that
long.  If anyone is interested in more actively maintaining OneWire,
please contact Paul.
Version 2.2:
  Teensy 3.0 compatibility, Paul Stoffregen, paul@pjrc.com
  Arduino Due compatibility, http://arduino.cc/forum/index.php?topic=141030
  Fix DS18B20 example negative temperature
  Fix DS18B20 example's low res modes, Ken Butcher
  Improve reset timing, Mark Tillotson
  Add const qualifiers, Bertrik Sikken
  Add initial value input to crc16, Bertrik Sikken
  Add target_search() function, Scott Roberts
Version 2.1:
  Arduino 1.0 compatibility, Paul Stoffregen
  Improve temperature example, Paul Stoffregen
  DS250x_PROM example, Guillermo Lovato
  PIC32 (chipKit) compatibility, Jason Dangel, dangel.jason AT gmail.com
  Improvements from Glenn Trewitt:
  - crc16() now works
  - check_crc16() does all of calculation/checking work.
  - Added read_bytes() and write_bytes(), to reduce tedious loops.
  - Added ds2408 example.
  Delete very old, out-of-date readme file (info is here)
Version 2.0: Modifications by Paul Stoffregen, January 2010:
http://www.pjrc.com/teensy/td_libs_OneWire.html
  Search fix from Robin James
    http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238032295/27#27
  Use direct optimized I/O in all cases
  Disable interrupts during timing critical sections
    (this solves many random communication errors)
  Disable interrupts during read-modify-write I/O
  Reduce RAM consumption by eliminating unnecessary
    variables and trimming many to 8 bits
  Optimize both crc8 - table version moved to flash
Modified to work with larger numbers of devices - avoids loop.
Tested in Arduino 11 alpha with 12 sensors.
26 Sept 2008 -- Robin James
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1238032295/27#27
Updated to work with arduino-0008 and to include skip() as of
2007/07/06. --RJL20
Modified to calculate the 8-bit CRC directly, avoiding the need for
the 256-byte lookup table to be loaded in RAM.  Tested in arduino-0010
-- Tom Pollard, Jan 23, 2008
Jim Studt's original library was modified by Josh Larios.
Tom Pollard, pollard@alum.mit.edu, contributed around May 20, 2008
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Much of the code was inspired by Derek Yerger's code, though I don't
think much of that remains.  In any event that was..
    (copyleft) 2006 by Derek Yerger - Free to distribute freely.
The CRC code was excerpted and inspired by the Dallas Semiconductor
sample code bearing this copyright.
//---------------------------------------------------------------------------
// Copyright (C) 2000 Dallas Semiconductor Corporation, All Rights Reserved.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the "Software"),
// to deal in the Software without restriction, including without limitation
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
// and/or sell copies of the Software, and to permit persons to whom the
// Software is furnished to do so, subject to the following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY,  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
// IN NO EVENT SHALL DALLAS SEMICONDUCTOR BE LIABLE FOR ANY CLAIM, DAMAGES
// OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
// OTHER DEALINGS IN THE SOFTWARE.
//
// Except as contained in this notice, the name of Dallas Semiconductor
// shall not be used except as stated in the Dallas Semiconductor
// Branding Policy.
//--------------------------------------------------------------------------
*/

#40

Do no misunderstand. I really like Makeblock :heart:

I’ve purchased Makeblock parts personally for more than $5000 and though my school course and the various workshops I’ve been teaching kids to program mBot’s worth more than $10000. I’m a good Makeblock customer that is trying to help the company succeed because they have great products!

I do however voice my opinion when I think they are not doing things right. Everyone should tell people when they are not doing things right. That will help them improve and succeed!


#41

Hi jenschr,

On this point, I am totally in agreement.

I also hope that Makeblock will be able to listen to the community because there are some products that need to be improved such as the Codey Rocky IFTTT. I emphasize it because it is in the video and it has been removed temporarily. What’s more, some Neuron blocks (camera), does not seem to be available in mBlock 5. Despite everything I like the products even if it is expensive like all robotics product. So, I hope they continue to develop without creating too much different product in order to finish the current products: Neuron, Codey Rocky, mBot and AirBlock


#42

I wholehearted agree with you @Crackel. I have a bad feeling that the more products they make, the worse the support for all of them will be. I would love to talk to Jasen or someone from Makeblock when I go to Shenzhen next week. I think they have really great products, but they fall short of the quality many of us expect. If they went the extra mile and did things right, the company could easily grow much larger (if they want that).