Otto Blockly
This is a free and open source visual programming language based on Blockly from Google & MIT, to generate C/C++ code, compile and upload to any Arduino. Compatible [with any Otto DIY robot or Arduino related boards](https://www.ottodiy.com/academy
Watch the video to see all the main features
Installer
This software is ready to setup offline by installing it on your computer for Windows (master branch) or Linux operating systems. You can download the latest release version from here, after is installed, it is ready to use, no need to import Arduino libraries or any additional boards it comes with Arduino CLI, it is all integrated!, ready to upload codes direclty to your robot or project via USB. If your computer do not recognize the USB device or Otto, you have to install the CH340 or CH341 driver that is in the "pilotes" folder or download from this link
MAC and Chrome versions are under development,you will need a Virtual Machine or use the online version of App (please note this version can't upload the code) and download the code to open and upload manually from a previosly installed Arduino IDE with Otto libraries
Online App
Otto Blockly is also a web tool. You can give it a try here. BUT the USB device cannot be recognized by the browser, therefore you won't be able to compile or upload the code.., although you can just simple copy and paste or save the blocks or download the generated code into your local Arduino IDE, therefore you can already use this tool from any operative system even from your phone if you have an OTG USB cable
How to Contribute
Contributing to this software is warmly welcomed. There are 5 ways you can contribute to this project:
- Test and report. Lets us know if there is something missing in the issue section.
- Helps us solve current issues or other bugs.
- Bring missing features from similar Blockly or Scratch alike programs, request new useful blocks.
- Translating to new languages or spell check current ones.
You can do this basically by forking, committing modifications and then a pull requests. Please explain detailed the changes and make sure they have been tested.
Just make sure to keep consistency in the naming and make a record of the change or improvement made.
Welcome to the Otto DIY development team!
Thanks for your contribution.
More Languages
We are translating Blockly for Otto for the international community, you are welcome to contribute with the languages you know, it will benefit you and everyone in your community.
The more people helping to translate the better, it is important to translate while understanding the context, or what is the robot actually doing, to be accurate.
- Go to lang folder and duplicate the Arduino_en.js Blockly_en.js and msg_en.js files from english,
- Rename them according to your ISO language code, for example fr is for French,so the files are renamed like this: Arduino_fr.js Blockly_fr.js and msg_fr.js
- Edit the files with any code editor software like Visual Studio Code translating only the english part after = in between the quotes "" in visual studio is the text in red.
- Then pull a request here in github or just send us the files.
How to Use
- Open any example.
- Connect your Otto robot.
- Select Arduino nano and USB port where Otto is connected.
- Check the code.
- Upload and yes is that easy you can even just click upload and the code will be automatically compiled!
- Drag , drop, mix, play and create your own codes.
- Join the Otto Builder community and share them!
- Share your creations!
Otto Scratch AI
UPDATE! We now have the Scratch 3.0 version!This one is more child friendly coding interface and you can do Artificial Intelligence interactions, we will be slowly combining these two projects but now they serve to different purposes; Otto Blockly can create, compile and upload native Arduino code, it works offline. Otto Scratch AI needs a previous uploaded firmware to get the commands via Bluetooth, requires internet but is connected to AI servers.
Support us by buying our great robot kits
Attribution
Thanks to all these tools created by great people. that without them, would have not been possible to make this project: