-
Notifications
You must be signed in to change notification settings - Fork 17.9k
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
VRBRAIN: Some updates to allow building of VRBRAIN boards with waf #4647
Conversation
Hi @LukeMike :-) Some issues:
|
This is a "political" thing. I think they won't have a problem with that if there's a rename. I understand that no one would like to have their boards named after another set of boards (and I think VRBRAIN actually existed before PX4). |
When I said I though there shouldn't be a board called vrbrain, I actually meant as an abstract class. The vr* variants would still exist. |
I know but the abstract class is what provides the correct HAL library. And I know we could change that to accommodate VRBRAIN, but I think a separate board is preferable until a consensus about naming is reached. |
the top level class could be called nuttx I think. Then vr* and px4* could derive from that. |
But, doesn't it rely on things from PX4Firmware submodule? On Thu, Aug 11, 2016 at 10:45 PM Andrew Tridgell [email protected]
|
@guludo Yes. Like I've written before it isn't good that the PX4 name is used for everything. |
Hi all... Today I worked to merged AP_HAL_PX4 and AP_HAL_VRBRAIN into AP_HAL_NUTTX. I put my work into an our branch for_merge_nuttx. I have not finished, I have to rename all the libraries with suffix _PX4 to _NUTTX but this can be done at a later time. Have you some time to take a look at this branch and tell me what you think?. I do not want to create a PR, without your opinion. I know it's a fairly major change but it could help solve the issue of having two cards that use the same operating system with two distinct AP_HAL. |
@tridge Why PX4NuttX is not a submodule of PX4Firmware? it would be great to be able to continue to build on the PX4 Firmware... especially since you have to implement and test drivers |
@LukeMike That is great work! I have to ask for two things though:
I have to say that I don't agree we rely on CONFIG_ARCH and use HAL_BOARD_SUBTYPE only to distinguish different vendors. I think we should be consistent and HAL_BOARD_SUBTYPE should define a specific board, like on Linux. This is just my personal opinion, I don't know what others think of it. I will certainly bring this up in the next dev call, but I hope you understand this is quite a change so it can take some time to review everything.
This has been debated before (stopping using our own submodule) but we have, at least, one commit on top that isn't upstream.
What do you mean with this? |
@OXINARF thanksvery much... My work just wants to be a proposal, a starting point on which to reason: I do not claim for sure that it is taken as it is, and you're doing a great job. I wanted to help a little more. I will try to check my settings ... I apologize for the inconvenience. I use PX4Firmware to develop drivers and make tests and to launch the shell modules individually is very convenient: but this can also be done with the current system (file nostart on SD). For CONFIG_ARCH and HAL_BOARD_SUBTYPE: The problem is that there are some customizations that affect the individual board but others regarding the types of boards ... if you see the code that I produced you will notice that the main differences are at the level of PX4 and VRBRAIN and not a single board. I think it would be more convenient to have even this distinction. |
We want to use the upstream PX4NuttX but we need to make sure we aren't losing any change we made. If you are using PX4Firmware independently of ArduPilot to do development I think you can simply change the NuttX submodule inside your PX4Firmware local repository.
I wouldn't them? Regarding HAL_BOARD_SUBTYPE: I understand what you are saying, some places would have a long list of ORs, but it would maintain consistency with Linux HAL. Anyway, this is something that can be discussed and decided in the dev call. |
@LukeMike This topic was brought up again after I needed to do some changes and basically copy and paste between PX4 and VRBRAIN hal directories. I think it would be really great if you could bring that branch as a PR. I gave it a quick look and here's my feedback:
Let me know if you can work on this soon. @guludo @OXINARF wrt this specific PR, does it need to wait for the rename? |
@lucasdemarchi Yes, wait for the rename as that will require a good amount of less changes than this PR. |
@lucasdemarchi I am working on a new version in Vitualrobotix/pr_ap_hal_nuttx. Next week I can commit my changes and create a PR. At the moment I can build all PX4 boards. Now I have to merge our boards. The new AP_HAL is AP_HAL_Nuttx and there is no prefix PX4. I'm not using waf because for VRBrain there are not the changes I've done in another PR. Another difference is that I've created a sub type for every boards and non only one for PX4 and one for VRBrain. |
Check #5109. PX4 layer is greatly reduced in favor of using Nuttx directly Em 5 de nov de 2016 8:24 AM, "Luca Angelo Micheletti" <
|
@LukeMike thanks for your work on this, and sorry for all the churn with the driver layers. It is going to take some time to get it all sorted out. |
I Added new environments and configuration files to allow building VRBRAIN boards with waf.
I don't know if this is the best solution... probably not but I don't know very well waf.
Let me know if it's ok.
ArduPilot/PX4Firmware#63 is needed To build with waf our boards