scratchfoundation / scratchx

Scratch Extension Site
https://github.com/llk/scratchx
190 stars 121 forks source link

Micro:bit extension should be updated #147

Closed UDXS closed 6 years ago

UDXS commented 6 years ago

The Micro:bit community, shortly after the announcement of Micro:bit support for Scratch, attempted to understand how it worked. We found that the extension relies on a native program that, as of right now, is only available on Mac (likely because the Bluetooth API is easier). It also uses proprietary APIs to work with the browser. We feel that this could be vastly improved and made available on multiple platform through web technologies. Using WebBluetooth, one can connect to BLE devices. As this isn't available on most platforms currently, the alternative is either NW.js or Electron. These can be used to implement a program similar to yours, but cross platform using WebSockets on the local network (localhost) to communicate with the Scratch program. The ultimate goal is to create a cross-platform, non-proprietary version of this program. A benefit, for example, would be the ability to run it on the Raspberry Pi and not having to deal with any drivers. Also, any form of installation would not be required. We, as a community, are very excited to see the development of Micro:bit on the Scratch platform.

Thanks!

thisandagain commented 6 years ago

We are working directly with the micro:bit team on the new extension for Scratch 3.0 that will be completely re-written / re-designed. As part of this we are developing (and will be open-sourcing) a new version of the Scratch device manager for both Windows and MacOS (with ChromeOS, Android, and iOS support coming later).

ZanderBrown commented 6 years ago

What about Linux and who in the "micro:bit team"?

thisandagain commented 6 years ago

We'll open source our Device Manager code. If someone from the Linux community would like to port it we would be happy to see that happen. We work directly with members of micro:bit's leadership team (the CTO and lead firmware developers).