microsoft/pxt

Allow WebSerial to identify Adafruit CP Express device

fisher-alice opened this issue · 0 comments

Bug Report / Request

There are various platforms available for Adafruit Circuit Playground (CP) Express users including Microsoft's https://makecode.adafruit.com and Code.org's https://studio.code.org/s/devices-2023.

Code.org directs users to https://studio.code.org/maker/setup to help with the set up process for the boards they support (CP Express, CP Classic, and micro:bit). The user connects the device, then clicks on the 'Connect Board' button. At that point, connected serial devices within the filtered list are displayed in the WebSerial window.

If a user has installed a MakeCode .UF2 file, the CP Express is not displayed and the user cannot go through the setup checklist process. This is causing confusion for our users who have submitted tickets about this issue.

In contrast, if a CP Classic is connected and does NOT have the required Code.org Firmata firmware installed, it still is displayed in the WebSerial window so that the user is instructed to download the Code.org firmware after the setup check is executed. We consulted Adafruit about the difference between the two devices, and @ladyada explained that Arduino (which CP Classics use) must have WebSerial added.

We ask that the serial interface for WebSerial be added to MakeCode firmware so the CP express can be recognized. This would greatly improve our user experience for those who use both Code.org and MakeCode.

To Reproduce

  1. Go to https://studio.code.org/maker/setup.
  2. Connect Circuit Playground Express that has a MakeCode firmware (.UF2 file) installed on it.
  3. Click on 'Connect Board' button
  4. Note that the device is not displayed on the WebSerial window. Instead 'No compatible devices found' is displayed.

Expected behavior
A user would see the CP Express device displayed, then after clicking on the device, they would go through the setup checker and see that they need to install the required Code.org Firmata firmware.

Screenshots

  1. CP Express with Code.org Firmata firmware:

Screenshot 2024-01-16 at 2 34 45 PM

  1. CP Express with MakeCode firmware:

Screenshot 2024-01-16 at 2 39 18 PM

Desktop (please complete the following information):

  • OS: macOS, windows, chromeOS
  • Browsers: chrome, edge

Additional context
If a user has installed a MakeCode .UF2 file, the CP Express is not displayed and the user cannot go through the setup checklist process. This is causing confusion from users who have submitted tickets about this issue.the setup checklist process which checks for: 1) the device type, 2) whether user is using a supported browser, 3) whether required firmware is installed.
The board type is logged here so that Code.org is not receiving important information about users who visit this page and go through the setup checker with a CP Express that already has MakeCode firmware installed and are trying to use Code.org resources.