Moving to Arduino from Scratch (NOT S4A!)

Last year I delivered some workshops on Arduino to a group of STEM teachers, and it became apparent that they LOVE Scratch (who doesn't - it is pretty awesome), but that they (teachers, and students) get stuck at the stage when they have to move from Scratch to something more 'serious'. From what I understand that "something" is often Python, and it often doesn't work well. I'm not bashing python here - its simply a big ask for kids to jump from Scratch to Python.

As a result I started looking at what sort of tools/platform could be used to move kids on, but help leverage their Scratch skills. While Arduino wasn't initially part of this, I quickly realised that hardware elements provide the same sort of "payout" for "older kids" (we'll leave that open to interpretation...) that the Scratch sprites do for younger kids - making stuff happen is just way more fun than printing stuff on screen. S4A/Ardublocks are also both great, but don't specifically address that "moving on" element which is really what this is about.

I've now reached the point where I have a working set of tools that I think are ready for some limited testing, so I'm looking for someone to collaborate on an initial trial to see if it actually helps kids move on from Scratch to "real" programming.

I'm looking for someone working with kids, probably age 14+ who are experienced Scratchers. They'll be running code on Arduino (but I guess you're already good with that if you're reading this). Right now the system is hosted on Mac, though Linux and/or Pi hosting is simple (Windows eventually, but I'm not going to enjoy it!).

Sorry if that's a bit cryptic - I'm not quite ready for a full on launch, so I don't want to just throw it one a website and link to it. I'd rather work through the kinks in private first. As its new code, the first few users will need to be "enthusiasts". If you fit the profile drop me a PM with your email.




I have just come across your project and if you are still looking for testers, I am interested.

I am a computer science school teacher in Switzerland and I am in search of ways of making a soft transition between Scratch and Python.

I already use Arduino, currently I get my students to work with Firmata and pyFirmata after having introduced in a python "standard" way (that is introduction to variables, loops, etc).

This "standard" introduction work for a few but mot students get lost with the syntax and I am thinking of teaching the concepts first with Scratch and then moving to python.


Where did you get to with this?

I've progressed a bunch of students from Scrtatch to Arduino, and we are really getting hung up making (physically interactive) games with the arduino IDE. Scratch makes making clones of sprites really easy, but my OOP is only a step ahead of theirs and I'd love to access anything that bridges the gap between scratch and c++. Most resources I find are just cryptic and dense and don't really share any roots with the scratch ecosystem.

I am interested in Arduino From Scratch.
I am a complete noob.
Where should I begin from?
I am clueless about it.
I am just beginning with Arduino and it is Difficult.
Oh! I am a begginer in Computer Science.

I used Scratch 2 over 2 years ago to program adruino. But now I have Scratch 3 and can not find any information on how to get the extensions for SCratch 3.

Can someone please inform me how to get Scratch 3 Arduino extensions to run Arduino Uno?

Is there another software besides scratch 3 I can use?

I would like to use Python. Does anyone know if Python also has extensions.

Thank you all for your time.

If you want to add hardware to Scratch, do Makey-Makey.
If you want to program a microcontroller board like Arduino, using a Scratch-like programming tool and "language", try Microbit. Great simulator, no need for the real thing, but sooner or later you buy a real Microbit. Parallel with programming the Microbit in the Scratch-like block editor, there's a Javascript window with Javascript code, which automagically gets updated when you create the block code. And vice versa. And you can program the Microbit in Python, too.