bromagosa / Snap4Arduino

Binding Snap! and Arduino together
http://snap4arduino.rocks
GNU Affero General Public License v3.0
133 stars 85 forks source link

Add Arduino blocks as a library in Snap! #299

Closed Dan-TEALS closed 1 year ago

Dan-TEALS commented 4 years ago

Snap4Arduino seems to be falling behind the current release of Snap! Could it be added to Snap! as a library, like the Hummingbird robot and Leap controllers have been? It would be helpful to have Arduino support in the main Snap! branch.

jguille2 commented 4 years ago

Hi @Dan-TEALS, Snap4Arduino team have been also working for the Snap! release. And soon we will release Snap4Arduino6 (with our Snap!6 updated).

Your request would be great, but not possible. Snap4Arduino has a serial connection, and also a web-server. And these features can't be inside a Snap! library. Browsers can't connect directly to PC serial devices.

Other approaches (I guess like Hummingbird, I'm not sure) use a middleware (another software) to connect to devices. Then, they are not really "only a Snap! library", because they need these other software running.

We have studied (and tested) other possibilities (other soft by websockets connection, chrome/chromium extensions, new (experimental) web serial protocol...) And maybe we will change... But now, our desktop version (built with node.js and using firmata serial connection to our devices) is good, fast and stable.

To do a more complex electronic stuff (controlling time to microseconds, autonomous projects...) we use Microblocks project (connected to Snap! by networks protocols). But we continue to enjoy with our Snap4Arduino features, playing with a lot of kinds of devices (Arduinos, ESPs..s)

Stay tuned and we will announce the next version soon (with the full Snap! 6 running inside!!)

Joan

Dan-TEALS commented 4 years ago

Sounds awesome!

Thanks for the update, Joan. What you said makes sense and I'll admit to not being familiar enough with how Snap! handles libraries, which is why I asked the question. Scratch seems to deal with this by using browser extensions instead of "libraries," which does give access to the USB port for programming micro:bits, for example.

I'm looking forward to Snap4Arduino6. This is a really cool project!

Dan

Dan Stormont (he, him)

dan@tealsk12.org | 520.415.6206

Regional Manager, Arizona | Concordis, LLC

Microsoft Philanthropies TEALS Program

Computer science in every high school

microsoft.com/tealshttps://www.microsoft.com/en-us/teals

Microsoft respects your privacy.  Review our online Privacy Statementhttps://privacy.microsoft.com/en-us/privacystatement.

Microsoft Corporation

One Microsoft Way

Redmond, WA, USA 98052


From: Joan Guillén i Pelegay notifications@github.com Sent: Friday, July 31, 2020 1:24 PM To: bromagosa/Snap4Arduino Snap4Arduino@noreply.github.com Cc: Dan Stormont dan@tealsk12.org; Mention mention@noreply.github.com Subject: Re: [bromagosa/Snap4Arduino] Add Arduino blocks as a library in Snap! (#299)

Hi @Dan-TEALShttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FDan-TEALS&data=01%7C01%7Cdan%40tealsk12.org%7C6dbe94a3e555471d89a808d8358fc361%7C99f9f8e52e364b8e8bdcd1ba51121a17%7C1&sdata=qtlDBDx2cmEWlSxZiSPyHQlyDYvr4AtuSoMAH8e07lc%3D&reserved=0, Snap4Arduino team have been also working for the Snap! release. And soon we will release Snap4Arduino6 (with our Snap!6 updated).

Your request would be great, but not possible. Snap4Arduino has a serial connection, and also a web-server. And these features can't be inside a Snap! library. Browsers can't connect directly to PC serial devices.

Other approaches (I guess like Hummingbird, I'm not sure) use a middleware (another software) to connect to devices. Then, they are not really "only a Snap! library", because they need these other software running.

We have studied (and tested) other possibilities (other soft by websockets connection, chrome/chromium extensions, new (experimental) web serial protocol...) And maybe we will change... But now, our desktop version (built with node.js and using firmata serial connection to our devices) is good, fast and stable.

To do a more complex electronic stuff (controlling time to microseconds, autonomous projects...) we use Microblocks project (connected to Snap! by networks protocols). But we continue to enjoy with our Snap4Arduino features, playing with a lot of kinds of devices (Arduinos, ESPs..s)

Stay tuned and we will announce the next version soon (with the full Snap! 6 running inside!!)

Joan

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbromagosa%2FSnap4Arduino%2Fissues%2F299%23issuecomment-667341435&data=01%7C01%7Cdan%40tealsk12.org%7C6dbe94a3e555471d89a808d8358fc361%7C99f9f8e52e364b8e8bdcd1ba51121a17%7C1&sdata=%2BwEbHYSg9ms5k42zygMtNjj%2Fjh%2Bflmdz7Fh5PlXT9nE%3D&reserved=0, or unsubscribehttps://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAJY6ZDBC55G4TOCH473SXXDR6MSAXANCNFSM4PQWDL4A&data=01%7C01%7Cdan%40tealsk12.org%7C6dbe94a3e555471d89a808d8358fc361%7C99f9f8e52e364b8e8bdcd1ba51121a17%7C1&sdata=IYAsFrHsxhJFhLQ0CL%2FsRNwlV%2Bz%2BCRye1mR5vsHQliU%3D&reserved=0.