-
-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NXT port -- is it viable? #169
Comments
Oh, I see that #122 exists. |
Thanks @JakubVanek --- I think it's still fine to use this separate issue to discuss technical viability, while using #122 to discuss what the user experience should be.
That should be fine. It's about the same as on City Hub (32K, 256K). For comparison, Move Hub has 16K RAM and 128K flash. This is getting problematic. It's going to need a feature stop (not enough flash), and we had to reduce user heap recently (not enough RAM). |
This is a very old demo that may or may not still work. It was essentially a test to run Pybricks using low-level drivers that I extracted from LeJOS. |
Thank you, this looks promising. I recently briefly saw an issue where the core of the problem was running out of memory and I was afraid that NXT would be affected by this too. |
It depends on what you mean by the level of the EV3 port, but much of it is certainly possible. While some of the high level stuff from #122 is certainly important, a lot of the NXT experience is already defined, including the end-user API for motors and sensors, and most of the brick too. This therefore even includes some of the implementation as well. Since you forked it, you have probably studied some of the Pybricks source code in some detail already. As you might have seen, we have While we don't currently intend to focus on NXT actively, we're certainly happy to discuss more technical details at some point if you're serious about considering working on this. |
I didn't have anything specific in mind, I just remembered that the NXT port is not fully supported/advertised. I haven't thought about the APIs yet, this will simplify the design phase.
I have studied it only briefly a while ago, however I was a bit confused about what goes where (at the time, I was curious about how sensor hotplug is handled). This explains it, I will look into
Thanks! I need to think this through yet, but if I decide to go with it, I'd be grateful for any help. |
I currently have an NXT sitting at home, a port of MicroPython would be cool, |
Closing as duplicate of #122. |
Hi all,
I would like to ask for your opinion on how likely it is that the NXT port can be brought up to the level of the EV3 port. If there is a good chance that his can be done, it's possible I'll be working on this in the future (not sure yet though).
My motivation behind this is to have a unified programming environment for introductory robotics courses between NXT and EV3. The current solution is a combination of NXC compiled for NXT (BricxCC/NBC) + NXC cross-compiled for EV3 (NXC4EV3, alt. NXT3). However, we might be looking forward to switching to Python because the introductory algorithm course running in parallel is using it too.
My current primary concern is if the hardware present in NXT isn't too limiting. Are 64K of RAM and 256K of flash enough? From what I found about MicroPython HW requirements, it should be mostly OK, but the PyBricks runtime is going to use some part of that.
With regards
Jakub
The text was updated successfully, but these errors were encountered: