PictoBlox, the programming software is based on Scratch 3.0. It provides you all the functionalities of Scratch along with the plus features like interacting with the hardware such as Micro-controller Boards like evive, Arduino UNO, Arduino Nano, Arduino Mega, ESP32, and others. Just select the Arduino Extension in PictoBlox, and the Scratch blocks will be added. It also has extensions for most of the generic Sensors and Actuators. Also, PictoBlox allows you to work in two modes that is a real-time mode and the upload mode. Using this you can easily program your robots and other STEM projects just by dragging and dropping a few blocks.
ArduBlock is an old fashioned Arduino block programming software, which is based on Google Blockly. With Ardublock, the Arduino code cannot work with Scratch sprites in real-time.
S4A (Scratch for Arduino) is also a Scratch modification that enables block programming with Scratch for Arduino prototyping board. You cannot compile Arduino code using Scratch for Arduino, so it can only work in real time after uploading the firmware.