Skip to content

Add MixGo CE board #6383

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

Merged
merged 13 commits into from
May 22, 2022
Merged

Add MixGo CE board #6383

merged 13 commits into from
May 22, 2022

Conversation

dahanzimin
Copy link

Thank circuitpython for adding a new board to circuitpython , I hope it can pass

Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are you including the library as a frozen?

Comment on lines 1 to 2
USB_VID = 0x239A
USB_PID = 0x80A8
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You'll need your own USB VID/PID combination. Espressif usually gives them out here: https://github.com/espressif/usb-pids

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the support provided by circuitpython, because some libraries are not in Rozen, many new libraries have been added, and some customized modifications have been made to adafruit library

@dhalbert
Copy link
Collaborator

@dahanzimin Are you still awaiting the USB PID from Espressif, or is the one in the commit what you got?

@dahanzimin
Copy link
Author

@dhalbert ,Thank you for your attention. I have applied for PID in Lexin ands ubmitted them PID,I don't know what else to do next, just waiting for the merger?

@大汉子民你还在等待来自Espressif的USB PID,还是在提交中的那个是你得到的?

Copy link
Collaborator

@dhalbert dhalbert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the update on the USB PID.

Two comments about your custom library:

  1. The usual way to do this is to keep the library in a separate repo, and add it as a submodule. This will allow you to maintain the library separately, and not depend on the circuitpython repo for source control. Also it reduces the size of circuitpython and minimizes the custom code in it.

  2. Consider whether you need to freeze the library. The reason we freeze libraries into certain firmware images is only to save RAM space when importing the libraries. It is not purposely to make using the board more convenient, though that is an accidental effect. Circuit Playground Express (SAMD21, with only 32kB of RAM) has several frozen libraries for the RAM space reason. But Circuit Playground Bluefruit (nrf52840, 256kB RAM) has none. ESP32-S2 WROOM has 320kB RAM, so you are not under extremem RAM size pressure.

The disadvantage of freezing libraries is that updates require building new firmware. If you keep the libraries separate, then your users will not have to upgrade firmware merely to update the frozen libraries. Of course, they can always override the frozen libraries by placing new versions before .frozen in sys.path.

Given the size of your custom library, it is probably going to have bug fixes and improvements going forward.

@dhalbert
Copy link
Collaborator

Note also the pre-commit failures here: https://github.com/adafruit/circuitpython/runs/6398538029?check_suite_focus=true. For some files, there is simply extraneous whitespace or a missing newline at the end of the file. For the Python files, they may be failing black or pylint in some way. If you move to your own repo and a submodule, they will not be checked (you could of course check them yourself).

@dahanzimin
Copy link
Author

Thank you very much for your help. We use this board to promote the programming education of circuit Python in China, and use the graphical programming software mixly in primary and middle school students. They often don't want complex lib operation

@dahanzimin
Copy link
Author

Note also the pre-commit failures here: https://github.com/adafruit/circuitpython/runs/6398538029?check_suite_focus=true. For some files, there is simply extraneous whitespace or a missing newline at the end of the file. For the Python files, they may be failing black or pylint in some way. If you move to your own repo and a submodule, they will not be checked (you could of course check them yourself).

Sorry, I will pay attention to this detail later. Thank you for your answers and help

@dhalbert
Copy link
Collaborator

Here is some info about using pre-commit to check the files: https://learn.adafruit.com/building-circuitpython/build-circuitpython#install-pre-commit-3096511-10

@dahanzimin
Copy link
Author

@dhalbert Thank you for your help. Now all checks have passed. What else do I need to do for this merger?

Copy link
Collaborator

@dhalbert dhalbert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good; thank you for making the submodule.

One question before merging: why is the sdkconfig empty? See the others in boards/*/sdkconfig. Some just specify CONFIG_LWIP_LOCAL_HOSTNAME; others have more settings.

@dhalbert
Copy link
Collaborator

@dahanzimin is it ready for review again?

@dahanzimin
Copy link
Author

@dahanzimin is it ready for review again?

OK, thank you again. As always, I will promote circuitpython in another region. The board program has been added and can be reviewed again. Thank you

Copy link
Collaborator

@dhalbert dhalbert left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Thanks for addressing our requests. I see that adafruit/circuitpython-org#946 for the Mixgo CE board. But are there now two boards, or are they different modes of the same board? Since there are two builds, I think you will want another entry in circuitpython.org.

@dhalbert dhalbert merged commit 6f4f7e0 into adafruit:main May 22, 2022
@dahanzimin
Copy link
Author

Yes, the same board has different modes (considering that many computers cannot read the drive letter when programming), in circuit python org. Need two web pages to support it? Submit another (mixgo_ ce_ serial) page later.

@dhalbert
Copy link
Collaborator

Yes, if there are two builds, you will need another page for the other download.

@dhalbert
Copy link
Collaborator

@dahanzimin - the merge documentation build failed, I believe because the frozen library was in the board directory rather than in frozen/. Could you submit another PR that moves the submodule to the frozen/ directory, and change your mpconfigboard.mk files appropriately?

@dhalbert
Copy link
Collaborator

@dhalbert
Copy link
Collaborator

To test this before pushing the new PR, go to the top level and do make html. You will need to do pip3 install -r requirements.doc.txt to get all the Python libraries to build the documentaiton.

@dhalbert
Copy link
Collaborator

@dahanzimin I am fixing this in #6420.

@dahanzimin
Copy link
Author

Thank you. I'm already repairing it dahanzimin/circuitpython/commit/,Actions are in progress

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants