allanp

Powered up hints, tips and requests thread

Recommended Posts

I finally made a video on that. I am so disappointed from LEGO's 1980s attitude.
No explainations on the powered up motors, no programming manual.
Probably never heared of User Experience Design!
The powered up stuff is pretty good, LEGO just don't give a damn on telling us!

Anyway: some LEGO bashing and some good hints are in my new DeLorean Video.
Especially if you are planning to use a Technic Large motor (99013) with the small hub (88009)
becaue the hub sometimes cannot handle the current needed and just freezes or stops working
while the motors keep running. Crazy no? Found a simple solution though:

 

Edited by recklessGlitch
more clear

Share this post


Link to post
Share on other sites
22 hours ago, recklessGlitch said:

I finally made a video on that.

And you made an incredible movie on that. I love everything in it. It must have been an awful lot of work, surely fun, but ... von nichts kommt nichts, as we Germans say, at least in the chemistry sector; we also entertain the "viel hilft viel" phrase, as you have shown to be so true using the rechargeables.

There is an awful (again) lot of information in there - and I share every notion and conclusion you are drawing with regard to TLG's support. Well, these issues have been discussed all over the place here and elsewhere - but you nailed it. You know, it has been like that (regarding the electronics/programming support at TLG) since the very beginning, in the mid to late 1980s. TLG always declared it as "find-out-by-yourself" = biggest learning goal ever ... which is bull$*!t, when it gets too complex. Whatever.

Thank you very much for sharing, I enjoyed every second of your video. :pir-huzzah2:

All the best,
Thorsten
 

Spoiler

 

(P.S.: The power vs speed discussion in your video is a bit off - only so slightly, though. When setting speed = X, even to very low values, the power consumption may get through the roof very quickly, depending on the "allowed max. power to use for reaching that speed" setting. And as the stupid PoweredUp app does not provide you with that (variable) setting, but the firmware in the hubs actually allow you to do so - it is even worse. It appears as if some hired company made the (excellent!!!) hub firmwares and some other hired company made the app. That is a very big gap to bridge - and requires constant communication. Whatever: The PUp app sucks. Royally.)    

 

 

Edited by Toastie

Share this post


Link to post
Share on other sites

That is just insane!!! Not just the video -which is amazing-, but the engeenering was at least as good . My most honest congratulations!

I am not a lego system fan, but that set just put the back-to-the -future set into my wish list!

Share this post


Link to post
Share on other sites
On 6/22/2023 at 10:50 PM, Toastie said:

 You know, it has been like that (regarding the electronics/programming support at TLG) since the very beginning, in the mid to late 1980s. TLG always declared it as "find-out-by-yourself" = biggest learning goal ever ... which is bull$*!t, when it gets too complex. Whatever. 

 

  Reveal hidden contents

 

(P.S.: The power vs speed discussion in your video is a bit off - only so slightly, though. When setting speed = X, even to very low values, the power consumption may get through the roof very quickly, depending on the "allowed max. power to use for reaching that speed" setting. And as the stupid PoweredUp app does not provide you with that (variable) setting, but the firmware in the hubs actually allow you to do so - it is even worse. It appears as if some hired company made the (excellent!!!) hub firmwares and some other hired company made the app. That is a very big gap to bridge - and requires constant communication. Whatever: The PUp app sucks. Royally.)    

 

 

Wow, I didn't know TLG even externalized the software development. That explains a lot.
I didn't even talk about that I had problems with my newer Huawei to get the hub working, while my old samsung just worked...
You know, one reason for me to make this video was because I was angry and shocked about how careless and dilettante a million/billion(?)Dollar
- well the biggest toy company in the world afaik - handles this. They could be good by just spending a few thousand Euros on some webpage content, giving us the info we need.
But NO! We need to pick our info from forums and people calling LEGO and taking apart and measuring their motors.
Coincidentally I am just taking lessons to learn UX-Design (User Experience) and TLG is just making about everything wrong they can.
I thought everyone was just accepting that - like you said - learning by doing is good (but not that way)
I mean Held der Steine is complaining a lot on the bricking level, but he doesn't care much about apps, left alone programming.
Thank you so much for letting me know: I am so releaved to hear I am not the only one who sees that.
Good thing about capitalism: if I look at toystores today, I see a lot of other brick-companies next to the LEGO boxes.
So TLG can either change their mindset, or my children wont even know why I call their favorite building bricks LEGO-Steine...

Edited by recklessGlitch

Share this post


Link to post
Share on other sites
On 6/24/2023 at 11:27 AM, recklessGlitch said:

Wow, I didn't know TLG even externalized the software development. That explains a lot.

Just to make sure: I don't >know< either! I am speculating here - others, who have much deeper insight into the TLG dynamics, have voiced something remotely to this effect. I am simply concluding from my own observations:

When you have to develop a firmware for a hardware configuration, you are usually 1:1 on the developer level. And you usually know about "all" the issues of power drawing and how to prevent brown out - and it is all in there, in the firmware, as said. When you use for example Cornelius Munz' Legoino to control PUp devices, it is also all there: You can (but don't have to) "throttle" the max. power consumption to a user selected value, let's say 60% power, when you want to reach a certain controlled speed, let's say 30% (of max). The PUp app does not allow you to do that. It more or less simply freaks out. There are many other examples, where Legoino is very closely giving you control over what the firmware on the hubs essentially provides you with. And the app does not.

This is where my conclusion/speculation comes from: It is not deeper knowledge, just experience.

All the best,
Thorsten
 

Share this post


Link to post
Share on other sites

I have the feeling that the same people behind Pybricks are also the FW developers, so it doesn't surprise me that the app is developed externally too. Sounds like a lot of communication between different parites with LEGO probably being in the middle...

Edited by Zerobricks

Share this post


Link to post
Share on other sites
22 hours ago, Zerobricks said:

I have the feeling that the same people behind Pybricks are also the FW developers

That makes a lot of sense - never thought of that. I was always asking myself why these folks have so much insight into the innards of the (various) PUp firmwares. In this case, they may have also compiled the GitHub hosted LWP3.0 protocol docs, which are - even after 5 years of no change - still sort of up-to date.

Best,
Thorsten

 

 

Share this post


Link to post
Share on other sites

@recklessGlitch, really cool video! As I was watching, I totally understood many stages of your frustration. In the beginning when the PU system came out, I saw a lot of potential in it, but along the way I was sad to see that it does not live up to that potential. It's mostly problem with software/firmware (though the HW as a system has problems/inconsistencies too), but it would be great to see how far it could get if only the software part would become as good as it could be. Which sounds simple, but apparently is not, as it seems. SW development being outsourced would explain a lot..

Share this post


Link to post
Share on other sites

As far as I know the Powered Up development isn't outsourced, at least the people I talked to (both on fw and sw side) were LEGO employees. Whether it got the necessary amount of attention and internal resources over the years is a totally different question...

Share this post


Link to post
Share on other sites
1 hour ago, kbalage said:

Whether it got the necessary amount of attention and internal resources over the years is a totally different question...

Wow.

If PUp was really fully developed in-house, then that house has a) gotten too big and b) there certainly is very little attention and next to nothing with regard to internal resource allocation. Other companies also manufacture products, which are not necessarily within their key competence range - however, just imagine a toaster simply toasting each slice of toast to charcoal because, well the dial on it only has an "on" and "off" position, as many other electrical devices have, but no "timer" ...

We simply have to live with it.

Best,
Thorsten

Share this post


Link to post
Share on other sites

Lego have to deal with the full software stack too, all the way from embedded firmware up to phones apps. That's quite a range and modern "Javascript on the server *and* on the client" full stack developers won't have any idea. Company I write software for is in the same position and we find hiring people slightly difficult for that reason.

It would IMO make sense to hire in the app development since that's an area where there's lots of companies providing that service. So Lego could get a full team of cross-platform developers to build high quality phone apps without having to keep them around forever. The tricky bit is the bluetooth connectivity and that's where I fear Lego have not even realised that there could be a problem, let alone put any effort into fixing it. "just buy one of the four official supported smartphones" is a really atrocious response to problems.

The firmware level stuff is where I'd expect them to build an engineering team and stick with them. Get a few people who understand how the electronic hardware goes together and how to write software (firmware) for it. Then keep them busy building new smart widgets and improving the ones they have (at this stage every motor and battery box has software in it). You could look at Victron for an example (Dutch company making high end solar electronics)

Edited by Moz

Share this post


Link to post
Share on other sites
18 hours ago, kbalage said:

As far as I know the Powered Up development isn't outsourced, at least the people I talked to (both on fw and sw side) were LEGO employees. Whether it got the necessary amount of attention and internal resources over the years is a totally different question...

Hi @kbalage you are Balazs, right? I hope what I said about you in my video was correct.
I always assumed exactly what you wrote above:
In my experience company bosses usually don't understand the SW-development department and avoid the area.
So I imagine:
some senior (as in old) LEGO people, knowing all about plastic bricks were told:
"You need to go 'digital', the kids like it".
So they hired some programmers (inhouse or extrenal). And the PU guys had great ideas.
Seriously, the hardware upgrade from Power functions shows that somebody wanted to really do it good this time.
I have been wating for internal position sensor since mindstorms appeared 20 years ago.
But I think the PU devs started playing (my assumptions from the rediculous sounds)
and did not focus on the importnt stuff until they ran out of money/time.
And since nobody else in Billund understands 'digital', there was nobody to tell them to focus on the important stuff.
So you @kbalage made their job by providing the only software documentation I know of.
Every developer knows how important that is. Left alone all the other missing stuff I mentioned.
And looking at the financial potential of TLG, maybe all it needs is someone there to get aware of their fail.
They just need to hire some interaction/product/UX designers to fix it.
Oh ... that sounds like me, maybe that's why I think like that.
So, @kbalage , what is a LEGO ambassador?

PS: just watch your "the end of mindstorms"
It would be so nice if they made just a single wholistic system with a single good programming environment and different packages for home and for classrooms...
and dump the useless "spike" naming and stick to the established "mindstorms" instead. meh

Edited by recklessGlitch

Share this post


Link to post
Share on other sites

@recklessGlitch yes I am Balázs :) 

I think the hardware/firmware developers really wanted to create a versatile system that could be used in different LEGO sets and themes, but still be compatible. From then on, the "themes" took over, and the outcome depended entirely on their approach. Each new hardware element that was added later was requested for specific sets, not created to expand the system.

Education seems to have serious resources and a systematic approach, having developed the Spike sets with documentation, appropriate software, lessons everything they needed. Mindstorms 51515 was a bit of an afterthought after NXT disappeared. It seemed like a copy of the Education team's homework, but without that systematic approach. The Technic team only focuses on the sets and creates the Control+ profiles for them, they don't seem to care about building a system and the needs of the custom builders (from that standpoint). And then there's the Powered Up App development team, which didn't really have a "home" in any of the themes. It was busy creating profiles for all the motorized City/Ideas, etc. sets and had to juggle its minimal resources to develop the Coding Canvas in the meantime.

And that's where it apparently failed, because there were no sets directly related to the coding canvas and what it was supposed to do for customers, so there were no resources granted. It seemed like a "recreational" project ever since its announcement, even though it was supposed to be the central hub for the entire ecosystem, the app that controls them all.

 

 

 

Share this post


Link to post
Share on other sites

I've been thinking about this a lot as well (being a software developer), what could have been a better strategy, how I would have done it, both HW and SW side.

For one thing, I totally agree with @kbalage that such fragmentation across themes / teams did seem to have happened and hurt the system. A more Lego-like approach could have been better on the long run, with more reusable components / building blocks. More focus on the generic canvas-like stuff, and deriving the set specific interfaces from that. Granted they would not have been so fancy looking and vehicle specific, but definitely more customizable for example. I would have valued that more, but maybe I'm the minority with that (most set buyers just don't care about customizability I guess).

I have been thinking much about the HW side as well. As I said I saw a lot of potential in position sensors and app control, but after using the system for some years, I start to question things like 

- Are position sensors needed everywhere?

I think it's good to have some motors with such, but not for every purpose. For the angular ones, it's really good, but that's mostly exclusive to Mindstorms and Spike, and not much in technic, though could be great (the medium and small ones). For the linear ones, not so much, I think. Many sets are cars or vehicles, and those need a drive motor (no position control required, not even that precise speed control for the slow speeds Lego has anyways), and for steering, the PU servo solution is just worse than the old specialized PF servo (with a proper proportional controller). I guess they wanted to have one motor that covers two purposes, but now we have one that's not really good for either purposes (too big for drive and imprecise for steering). They may be needed for driving linear actuators as in the Liebherr Excavator, but I'd give more priority to simpler and more frequent use cases. Just keeping old PF motors with new plugs in production could have solved that problem. Or introducing a proper smaller servo (like Geekservo).

- Was Bluetooth and app control a great idea?

App control has a lot of potential for custom / customizable interfaces, which is really useful for complex machinery, but for cars (again, a major share of RC sets), it's just a crappy user experience. Being able to feel the controls would be much better than having fancy buttons and gauges, I think many would agree. I only went back to PF after playing a lot with PU, and PF immediately felt more lego-like (in many aspects). I guess part of the idea here was that this way they can get rid of the need to ship physical controllers with every set, with the obvious (maybe underestimated) downside of the programming effort required. It is hard to weigh the pros and cons here. However, there might be a simple solution: FW support for connecting existing bluetooth (BLE) capable gamepad controllers. That way advantages of both worlds could be enjoyed. So I tend to think BT and app control in general can still be a good direction. The communication protocol could be better documented though (and simplified).

- Could the hub / battery be improved?

I think one of the biggest problems with the system is the huge hub(s). Even at the fairly large scale of the new RC Audi, they could not fit the electronics in without obscuring all the interior. And the root of the problem is that the hub integrates the battery and the controller electronics and ports (as opposed to how it was with PF). Keeping those separate would have been useful for a number of purposes, and would have been more Lego-like. First, the battery could be replaced with a smaller / rechargeable one without reducing the number of available ports, or more control units could share the same battery, which would often be enough since in case of many motors, not all of them are run at the same time. Second, they would not need to be placed at the same spot in the build, so it would be easier to integrate them in tighter spaces. Third, it would be possible to swap out the controller part for something custom, just like it was done for the PF system (by SBrick and also an RC system based alternative). These are big advantages for the PF system, but some of these ideas might not be implementable with the PU system at all (I am thinking things like separation of the two would not be possible because the controller chip would be quite large in itself anyway).

So all in all, I am somewhat unsure if the introducing of the PU system was good for us builders. It does have some advantages and new use cases, but those are often impossible to leverage in custom builds (such as calibration of linear LAs or utilizing gearboxes), and it does seem to come with many disadvantages at the same time, especially for simpler builds. It has lost much Lego spirit, and that's sad.

Share this post


Link to post
Share on other sites
6 hours ago, gyenesvi said:

I've been thinking about this a lot as well

This is a very, very nice and in-depth assessment!!! Thank you very much, I learned >a lot< here.

6 hours ago, gyenesvi said:

I am somewhat unsure if the introducing of the PU system was good for us builders

Well, I believe (and you stressed that as well) another significant aspect is: making the system incompatible with predecessors systems, at least for the average customer not being an electronics guru. It was the case so many times before (4.5/12V -> 9V; 9V -> PF; PF -> PU; NXT power/sensor plugs etc.). And yes, I understand that there is a necessity in doing so to ensure folks do not fry their mixed components. And yes, there were attempts to make things compatible (9V -> PF, NXT -> 9V). But generally, it appears as if a major aspect is also to push people into buying the new electronic products, simply because the old stuff has become "obsolete" and "incompatible".

As said, you touched in that in your analysis and assessment.

Thanks a lot again and all the best,
Thorsten

11 hours ago, kbalage said:

From then on, the "themes" took over

Just to make sure I understand the ' " " ' ;) correctly: "themes" corresponds to "the higher-ups decided that PUp development needs to be theme- but not PUp-system or compatibility-driven, correct? 

Best regards,
Thorsten

Share this post


Link to post
Share on other sites
7 minutes ago, Toastie said:

Just to make sure I understand the ' " " ' ;) correctly: "themes" corresponds to "the higher-ups decided that PUp development needs to be theme- but not PUp-system or compatibility-driven, correct? 

As far as I know designer teams at LEGO are most of the time grouped by themes, so it's no surprise that they will use the available hardware components based on their own needs. What Powered Up needed was a central coordination with a clear roadmap in mind, and also a close collaboration between the teams instead of developing their own solutions for very similar problems. 

Share this post


Link to post
Share on other sites
2 hours ago, kbalage said:

What Powered Up needed was a central coordination with a clear roadmap in mind

Absolutely agreed on.

But it was like that with early stages of "Mindstorms", wasn't it? I was simply taken away back then, in 1998+, when Mindstorms, i.e., the RCX, SCOUT, MicroScout technology "unfolded". Well-prepared by the pre-"LEGO-Mindstorms" era - Technic Control, TCLogo, and the like. Unfortunately, these "early" themes were "buried", as far as I recognize it, in the educational branch of TLG; schools, universities, and the like. Which were ready to pay insane (governmentality secured) amounts of money. And which PUp is not, not at all.

Nevertheless, "back then" it appears (to me) as if there were no "themes", but educational goals, and of course always the principal driving force: Making money.

Just my thoughts.

Best,
Thorsten 

Share this post


Link to post
Share on other sites

PU lacks coherent environment and proper documentation. This is what keeps me off it still, even if there is huge potential in the system.

I think having position sensors is good. It is possible to actually control the speed, even at low power levels. In PF you just apply voltage and it is unknown what will happen at the other end.

Having not compatible plugs are not really big concern for me, it is totally different after all. Not always it can be backwards friendly.

Big miss for me is any kind of proper remote, the train remote is good start but something that can control 4 motors with some logic (uploaded to it after programming on smartphone/PC) would be welcome.

Share this post


Link to post
Share on other sites
13 hours ago, Toastie said:

This is a very, very nice and in-depth assessment!!! Thank you very much, I learned >a lot< here.

Well, I did not plan it to be so in-depth, but glad you liked it :)

50 minutes ago, Mikdun said:

I think having position sensors is good. It is possible to actually control the speed, even at low power levels. In PF you just apply voltage and it is unknown what will happen at the other end.

That's exactly what I thought at first, that position sensors will be a game changer for slow cars, like crawlers. Well true that you can control speed very well with PU motors (if the SW supports that, which is rarely the case as of today), but on the other hand I found that PF motors also work better than I expected when controlled proportionally. I recently made a (Toyota) off-roader in which both PF and PU electronics are possible to install to enable a direct comparison. The PF system worked surprisingly well for speed control (using a gamepad controller via BC2 app). And that's without a decent ESC! Proper RC systems use ESC to precisely control speed of motors, and there are methods to do so without position sensors as well (measuring back electromagnetic field in the wire). From what I gathered, RC cars rarely use drive motors with position sensors, and yet they can do pretty precise crawling manoeuvres. I think such would be by far sufficient for Lego applications. I've seen some video where someone was controlling a lego car (XL motor maybe) with an RC pistol controller and an ESC in a really precise way.

50 minutes ago, Mikdun said:

Big miss for me is any kind of proper remote, the train remote is good start but something that can control 4 motors with some logic (uploaded to it after programming on smartphone/PC) would be welcome.

That's exactly how I imagine it to work, and that all seems doable with existing BLE compatible gamepad controllers (PS5 and Xbox Series), it's just a matter of firmware support to enable connecting the controllers directly to the hub.

Share this post


Link to post
Share on other sites
20 hours ago, gyenesvi said:

I've been thinking about this a lot as well (being a software developer), what could have been a better strategy, how I would have done it, both HW and SW side.

For one thing, I totally agree with @kbalage that such fragmentation across themes / teams did seem to have happened and hurt the system. A more Lego-like approach could have been better on the long run, with more reusable components / building blocks. More focus on the generic canvas-like stuff, and deriving the set specific interfaces from that. Granted they would not have been so fancy looking and vehicle specific, but definitely more customizable for example. I would have valued that more, but maybe I'm the minority with that (most set buyers just don't care about customizability I guess).

I have been thinking much about the HW side as well. As I said I saw a lot of potential in position sensors and app control, but after using the system for some years, I start to question things like 

- Are position sensors needed everywhere?

I think it's good to have some motors with such, but not for every purpose. For the angular ones, it's really good, but that's mostly exclusive to Mindstorms and Spike, and not much in technic, though could be great (the medium and small ones). For the linear ones, not so much, I think. Many sets are cars or vehicles, and those need a drive motor (no position control required, not even that precise speed control for the slow speeds Lego has anyways), and for steering, the PU servo solution is just worse than the old specialized PF servo (with a proper proportional controller). I guess they wanted to have one motor that covers two purposes, but now we have one that's not really good for either purposes (too big for drive and imprecise for steering). They may be needed for driving linear actuators as in the Liebherr Excavator, but I'd give more priority to simpler and more frequent use cases. Just keeping old PF motors with new plugs in production could have solved that problem. Or introducing a proper smaller servo (like Geekservo).

 

So all in all, I am somewhat unsure if the introducing of the PU system was good for us builders. It does have some advantages and new use cases, but those are often impossible to leverage in custom builds (such as calibration of linear LAs or utilizing gearboxes), and it does seem to come with many disadvantages at the same time, especially for simpler builds. It has lost much Lego spirit, and that's sad.

It's true for Control+, but for PU it is in some way contradictory, especially if you include the discussions about the product line (too many cars) in Technic.

If the "Lego spirit" is creative building, multipurpose motors + PU is very much "Lego spirit". Like every other Lego-part it enables creative usage, but sucks if you need performance / durability.

C+ on the other hand feels like a surrender :D. They should simply build GUIs for every model with PU and if they fail because some features are missing -> add them. Yes that would be worse sometimes in terms of usability, but it would combine the building experience perfectly with the digital experience.

Share this post


Link to post
Share on other sites

Have you seen the new powered up app icons?
:ugh::cry3::wall:
So now they are hardly readable at all on a phone
and we cannot use @kbalage's documentation anymore
and its almost impossible to do numerically exact input.
This new interface is so bad
it's like a 7th grade programming school class made it. WTF!!!!
How are we supposed to program that crappy powered up now?
 

Share this post


Link to post
Share on other sites

I know I'm not the first person to say this, but it would be really nice if TLG could finally start including physical remotes for the Powered UP system in their motorized sets, or at least include the train remote that comes with some of the LEGO City sets.

Share this post


Link to post
Share on other sites

I CANNOT READ MY OWN DAMN PROGRAMMING ANYMORE because somebody at LEGO obviously thought they should update the icon designs to even more cryptic and more tiny for no explainable reason instead of spending some time on a goddam manual.
on a phone the powered up app is baically unusable because everything has gotten so tiny small that i cannot hit it with my medium sized fingers WTF?
Sorry, I am so p*ssed!
@HectorMBif you want a physical remote, use the sbrick app and brickcontroller 2 and some old wireless ps or xbox controller.
everyone else, either bybricks or other alterntives or just invest into buwizz, the boxes are just better and the people there answer your questions and try to be helpfull and stuff.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.