{"id":473,"date":"2024-10-17T17:53:42","date_gmt":"2024-10-17T16:53:42","guid":{"rendered":"https:\/\/ecothings.webs.upv.es\/?page_id=473"},"modified":"2024-10-17T17:53:43","modified_gmt":"2024-10-17T16:53:43","slug":"facilino","status":"publish","type":"page","link":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/","title":{"rendered":"Facilino"},"content":{"rendered":"\n<p class=\"has-vivid-cyan-blue-color has-text-color has-link-color has-large-font-size wp-elements-9b6b7a4edc920c9fa60215d3745301a5\">1. Introduction<\/p>\n\n\n\n<p>Block programming tools are one of the most powerful tools that educators have in their hands to teach programming skills to pupils. Based on their simplicity for connecting blocks together, they can cope with complex code generation. Blockly [1] is, probably, the most widely used tool to develop block programming software. It is basically divided into two aspects, the block shape generator and the code generator. In this sense, Facilino is a software that uses Blockly to generate code for low-cost electronics such as Arduino, Raspberry Pi and ESP32.<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-79d59ad474759df1def273ae0c955fbd\"><strong>a. <a>Background and Motivation<\/a><\/strong><\/p>\n\n\n\n<p>Facilino [2], was originally developed by Leopoldo Armesto (UPV) in a collaboration with a local SME, Robotica F\u00e1cil [3], to provide solutions for schools so the can integrate different kind of STEAM activities within their curricula. From the beginning, Facilino has shown interest in their community. Originally, the software was planned as a free-ware software, as part of the agreement for development. Therefore, many blocks were free to use, but others, require a license.<\/p>\n\n\n\n<p>Taking Facilino as a basis and considering that the old version of Facilino was not maintained anymore (last published release is dated on end of 2019), we consider that EcoThings project brings a great opportunity to retake the development under a completely different approach. For obvious reasons, we have kept the original software name, trademark and logo, but now it\u2019s development is fully maintained by the UPV. Indeed, this approach has shown to have an impact on the community because some people already use Facilino and thus the new version sound familiar to them and thus showed interest in learning more about this new version of Facilino. Due to the previous collaboration with Rob\u00f3tica Facil, we could reach a sector that was precisely of interest of this project. When presenting the new version we referred to EcoThings project.<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-d6c94770324affdb9db27e6fabeee0ac\"><strong>b. <a>Highlights<\/a><\/strong><\/p>\n\n\n\n<p>During the project execution, we have made a big effort in readapting many aspects:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Hosting<\/strong>: The new version is hosted at the UPV servers, and it will be maintained by the UPV.<\/li>\n\n\n\n<li><strong>Totally free software<\/strong>: All blocks can be now used for free.<\/li>\n\n\n\n<li><strong>Front-end &amp; back-end development<\/strong>: Facilino works now with a front-end based on HTML and Javascript (in the client side), while it runs PHP and MySQL in the server side.<\/li>\n\n\n\n<li><strong>User\u2019s account<\/strong>: We have included a simple account log in, registration, password recovery and user\u2019s profile.<\/li>\n\n\n\n<li><strong>Project\u2019s dashboard<\/strong>: Users can manage their own projects, once logged in.<\/li>\n\n\n\n<li><strong>Facilino OTA Server<\/strong>: This tool allows Facilino to compile code and upload it to the electronics. The main advantage, compare to the previous version is that now, all dependencies of the code generated by Facilino are now integrated in a single tool.<\/li>\n\n\n\n<li><strong>Block simplification and feature extension<\/strong>: Some original blocks of Facilino have been simplified and in some cases. Also, we have developed new blocks that have considered relevant to boost code development those related with EcoThings project. Blockly includes the possibility to generate shadow blocks, which is a great utility to generate default inputs for a specific block instruction, so that users can quickly find out how to use a instruction without the need of reading documentation about it.<\/li>\n\n\n\n<li><strong>Block filters<\/strong>: The set of block instructions of Facilino has become large, which might be confusing for non-experienced users. For that reason, we have included block filters that will show blocks that can be typically used for a specific project type. In particular, EcoThings project has its own block filter, which means that most of the blocks that one can expect to use within EcoThings proposals, will be shown by default and the rest will be hidden.<\/li>\n\n\n\n<li><strong>Tutorial and Project-related exercises<\/strong>: Based on previous Tutorial exercises, the new version of Facilino includes a set of tutorials to start coding. In the majority of these tutorials and exercises, we propose connection diagrams and alternative approaches that can be used too. We provide a problem description, hints, Facilino code and a ThinkerCAD project embedded in the tutorial so that the proposed exercise can be executed in a simulated environment, without need of physical electronics. Similarly, we have just started documenting some specific exercises that are related with some projects such a LED race or low-cost robotics platforms. We have also started documenting the kind of exercises that can be used within the EcoThings project.<\/li>\n\n\n\n<li><strong>Translation tool<\/strong>: The new version of Facilino includes an easy-to-use translation tool that aims to translate Facilino into multiple languages. So far, we have translated Facilino into Spanish and other languages such as Catalonian, German, Italian, French and Portuguese have been Google translated and are currently under review.<\/li>\n\n\n\n<li><strong>Over-the-Air (OTA)<\/strong>: The new version of Facilino, includes a feature that allows to program micro controller such as ESP8266 or ESP32 using an over-the-air feature. In combination of Facilino OTA Server, a user can compile and upload code to a specific device via WiFi, without need of physical USB cable. This represents a great advantage for schools using tables or iPADs in their lab sessions.<\/li>\n\n\n\n<li><strong>Documentation<\/strong>: This is a working progress feature, and it will be implemented in a mid-term period (by the end of the project, if possible). The idea is to show specific examples of how to use instructions. In PR4, we will particularly generate graphic documentation on how to code with Facilino within EcoThings project.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-link-color has-large-font-size wp-elements-9893fdd0f8929a96c59396b08e57b5c3\">2. Main results<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-424fed2cfa253155ed351473947e7ce3\"><strong>a. <a>Old Facilino version versus Facilino OTA<\/a><\/strong><\/p>\n\n\n\n<p>Facilino is hosted at:<\/p>\n\n\n\n<p><a href=\"https:\/\/facilino.webs.upv.es\/\">https:\/\/facilino.webs.upv.es\/<\/a> This host will be maintained by the UPV even when the project is finished, with the purpose of providing access to anyone who wants to use this tool.<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-94aff9eced2ad6773c7c646b78924524\"><strong>b. <a>Open source and free software<\/a><\/strong><\/p>\n\n\n\n<p>Facilino, also known as Facilino OTA, has been published as an open source software under Apache 2.0 license. The new version of facilino is totally free, which means that we have reimplemented the underlying code for those blocks so that now all of them generated code at no cost.<\/p>\n\n\n\n<p>The code has been published on GitHub (using the original account, but on a new repository):<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/roboticafacil\/facilino_ota\">https:\/\/github.com\/roboticafacil\/facilino_ota<\/a><\/p>\n\n\n\n<p>Together with Facilino OTA, users must install Facilino OTA Server, another open source tool that is hosted at:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/roboticafacil\/facilino_ota_server\">https:\/\/github.com\/roboticafacil\/facilino_ota_server<\/a><\/p>\n\n\n\n<p>We have created a first release, with binary files for Windows and Ubuntu (also works in LliureX).<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-6cb5df2ea1cccc92a541dc8984c9fea1\"><strong>c. <a>Front-end and Back-end<\/a><\/strong><\/p>\n\n\n\n<p>Facilino uses a frontend\/backend architecture, which means that when the user loads Facilino web page, this page is served by a server running PHP. The server generated HTML and javascript code that the client (frontend) renders into a web page. The server make queries to a database using MySQL.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1018\" height=\"513\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/1-2.jpg\" alt=\"\" class=\"wp-image-474\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/1-2.jpg 1018w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/1-2-300x151.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/1-2-768x387.jpg 768w\" sizes=\"auto, (max-width: 1018px) 100vw, 1018px\" \/><\/figure>\n\n\n\n<p>In addition to this, it is interesting to understand how Facilino generates code to be uploaded on electronics.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"870\" height=\"199\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/2-2.jpg\" alt=\"\" class=\"wp-image-475\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/2-2.jpg 870w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/2-2-300x69.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/2-2-768x176.jpg 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-edb2435e68529ce09d43479f10f7f862\"><strong>d. <a>User\u2019s account<\/a><\/strong><\/p>\n\n\n\n<p>In order to use Facilino, users must create an account. When not logged in, a red box informs the user that needs to login in order to code. Login can be done by clicking on the top right icon at the menu bar.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"535\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-1024x535.jpg\" alt=\"\" class=\"wp-image-476\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-1024x535.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-300x157.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-768x402.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-1536x803.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/3-3-2048x1071.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>If a user has an account, it can simply log in to start coding, otherwise, the user will need to create an account to as indicated in the login page.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"346\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-1024x346.jpg\" alt=\"\" class=\"wp-image-477\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-1024x346.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-300x101.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-768x260.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-1536x519.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/4-2-2048x692.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Registration page, ask for few personal data and language preference (currently only english and Spanish):<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"444\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-1024x444.jpg\" alt=\"\" class=\"wp-image-478\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-1024x444.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-300x130.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-768x333.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-1536x666.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/5-3-2048x888.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Users can recover their password if they do not remember and they will receive an email with a link to reset their password:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"367\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-1024x367.jpg\" alt=\"\" class=\"wp-image-479\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-1024x367.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-300x108.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-768x275.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-1536x551.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/6-2-2048x734.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"190\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-1024x190.jpg\" alt=\"\" class=\"wp-image-480\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-1024x190.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-300x56.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-768x143.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-1536x286.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/7-2-2048x381.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"295\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-1024x295.jpg\" alt=\"\" class=\"wp-image-481\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-1024x295.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-300x87.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-768x221.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-1536x443.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/8-2-2048x591.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once clicking on the link, they just need to set a new password and the user\u2019s account password will be updated.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"322\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-1024x322.jpg\" alt=\"\" class=\"wp-image-482\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-1024x322.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-300x94.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-768x241.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-1536x482.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/9-2-2048x643.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"188\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-1024x188.jpg\" alt=\"\" class=\"wp-image-483\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-1024x188.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-300x55.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-768x141.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-1536x282.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/10-2-2048x376.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once logged in, they can access to their user profile to update their name of language preferences. User\u2019s can also apply for an account upgrade in which the can participate in the Translation program or Academy program. These two programs are described below so that users can contribute to the development of Facilino.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"387\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-1024x387.jpg\" alt=\"\" class=\"wp-image-484\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-1024x387.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-300x113.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-768x290.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-1536x580.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/11-2-2048x773.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-3c33e3a2b800110e91308c9fd497a901\"><strong>e. <a>Project\u2019s dashboard<\/a><\/strong><\/p>\n\n\n\n<p>User\u2019s can create projects that will be included in their project\u2019s dashboard. So far, this is a simple dashboard where all users\u2019 projects are listed and they can duplicate a project, delete, edit, download code, etc\u2026 We are considering to include a search\/filtering tool so that when users start have a big amount of projects, can be easily found.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"189\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-1024x189.jpg\" alt=\"\" class=\"wp-image-485\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-1024x189.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-300x55.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-768x142.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-1536x283.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/12-2-2048x378.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>To create a project, users must click on \u201cNew Project\u201d link and a form with all possible options will be shown.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"109\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-1024x109.jpg\" alt=\"\" class=\"wp-image-486\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-1024x109.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-300x32.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-768x82.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-1536x164.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/13-2-2048x219.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Users must provide a project\u2019s name, select the board they plan to use, Facilino\u2019s version, the block instruction set as well as the language. All these options can be modified later once the project is created. They can also select the Server IP and the Device IP for Facilino OTA settings.<\/p>\n\n\n\n<p>Facilino generates Arduino code for multiple type of boards. It works with several Arduino processors such as Arduino Uno; Espressif boards such as ESP8266 and ESP32 and Raspberry Pi. Facilino blocks instructions are identical in most cases, while the generate code adapted to the specific board, which greatly abstracts many issues related to hardware abstraction compared to classic text coding. So far, we have included a subset of boards, but this can be extended in the future to include new ones:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"672\" height=\"1024\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3-672x1024.jpg\" alt=\"\" class=\"wp-image-487\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3-672x1024.jpg 672w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3-197x300.jpg 197w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3-768x1171.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3-1008x1536.jpg 1008w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/14-3.jpg 1192w\" sizes=\"auto, (max-width: 672px) 100vw, 672px\" \/><\/figure>\n\n\n\n<p>While Facilino is a code generation tool, the actual code will be uploaded to using Facilino OTA Server (see next section). This will will upload code either through USB, selecting <strong>Facilino<\/strong> version, or over the air selecting <strong>Facilino OTA<\/strong>. We have also created a simplified version of Facilino (using USB), named as <strong>Facilino Junior<\/strong> where most of the blocks have been adapted to a simpler way of use, while limiting obviously the full capacity of the tool if advanced instructions were used instead.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"535\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2-1024x535.jpg\" alt=\"\" class=\"wp-image-488\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2-1024x535.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2-300x157.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2-768x401.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2-1536x802.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/15-2.jpg 1945w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Finally, the user must select a Block Instruction set. The purpose of this selection is to filter some blocks that the user will not use depending on the type of project he\/she intends to do. In that sense, the option by default is a generic project with the full set of instructions, while other projects such as robotic projects or EcoThings project will require a different kind of instructions. Thus, by selecting a specific project, some instructions will not be shown by default and therefore, it\u2019s easier for non-experienced users to find the instructions they need to user for their actual needs.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"932\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2-1024x932.jpg\" alt=\"\" class=\"wp-image-489\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2-1024x932.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2-300x273.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2-768x699.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2-1536x1397.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/16-2.jpg 1827w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"449\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2-1024x449.jpg\" alt=\"\" class=\"wp-image-490\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2-1024x449.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2-300x131.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2-768x336.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2-1536x673.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/17-2.jpg 1815w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-413649c8ef8d0b680a1457874731eb95\"><strong>f. <a>Facilino OTA Server<\/a><\/strong><\/p>\n\n\n\n<p>You can download here Facilino OTA Server. Select the appropriate version for your OS.<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Download Files<\/strong><\/li>\n<\/ol>\n\n\n\n<p>First, download Facilino OTA Server. Be advised that these downloads have been taken from Robotica Facil&#8217;s GitHub, where you can find the source code of the application and old releases.<\/p>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li><strong>Facilino OTA Server Windows Installer<\/strong><\/li>\n<\/ol>\n\n\n\n<p>Click on the installer to execute it. Your computer might give a warning as the Installation comes from an unknown source. Simply, give permision under the extended tab option. The Facilino OTA Server is complety safe and does not pose a threat to your computer. Indeed, Facilino OTA Server actually is a port to the Facilino web page and Arduino-CLI. The web page generates code based on blocks, while Arduino CLI is the software that compiles your code so it is highly recommended to check that has been properly installed after the installation process finishes, including all boards and libraries required by Facilino, otherwise, compiling and uploading code might fail.<\/p>\n\n\n\n<p>When executing Facilino OTA Server Installer, you should see the following window:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"752\" height=\"585\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/18-2.jpg\" alt=\"\" class=\"wp-image-491\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/18-2.jpg 752w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/18-2-300x233.jpg 300w\" sizes=\"auto, (max-width: 752px) 100vw, 752px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>Select the installation location, this is automatically set to your folder <em>C:\\FacilinoOTAServer<\/em>. We recommend you not to change this path.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"744\" height=\"579\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/19-2.jpg\" alt=\"\" class=\"wp-image-492\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/19-2.jpg 744w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/19-2-300x233.jpg 300w\" sizes=\"auto, (max-width: 744px) 100vw, 744px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>Then installation should start immediately and a progress bar should be visible. This installation might take a few minutes, particularly when installing Arduino libraries, because they will be first downloaded and then installed.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"580\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/20-2.jpg\" alt=\"\" class=\"wp-image-493\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/20-2.jpg 750w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/20-2-300x232.jpg 300w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>3. <strong>Facilino OTA Server Windows ZIP (for non-admin users)<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\"><\/ol>\n\n\n\n<p>Unzip Facilino OTA Server and <em>cd<\/em> to the unzipped folder and type <em>config.bat<\/em> in the command shell. You should see on the shell output all arduino-cli commands required by Facilino to be able to compile and upload code to the supported boards and libraries.<\/p>\n\n\n\n<p>4. <strong>Facilino OTA Server on Ubuntu<\/strong><\/p>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\"><\/ol>\n\n\n\n<p>Untar Facilino OTA Server and cd to the uncompressed folder and bash config.sh in the console. You should see on the shell output all arduino-cli commands required by Facilino to be able to compile and upload code to the supported boards and libraries.<\/p>\n\n\n\n<p>5. <strong>Arduino CLI<\/strong><\/p>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\"><\/ol>\n\n\n\n<p>Open the command shell and move to Facilino OTA Server directory (i.e.: <em>C:\\FacilinoOTAServer<\/em>). Then, <em>cd<\/em> to <em>arduino-cli<\/em> folder and type <em>arduino-cli.exe core list<\/em> (on Windows) or <em>.\/arduino-cli core list<\/em> (on Ubuntu). You should see a list of supported boards:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"764\" height=\"186\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/21-2.jpg\" alt=\"\" class=\"wp-image-494\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/21-2.jpg 764w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/21-2-300x73.jpg 300w\" sizes=\"auto, (max-width: 764px) 100vw, 764px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>If you type: <em>arduino-cli.exe lib list<\/em> you should see a list of installed libraries:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"650\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/22-2-1024x650.jpg\" alt=\"\" class=\"wp-image-495\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/22-2-1024x650.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/22-2-300x191.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/22-2-768x488.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/22-2.jpg 1233w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>If any of the previous steps fails or during compilation of a program there&#8217;s a missing library, you can install them manually (see arduino-cli&#8217;s help by typing <em>arduino-cli.exe -h<\/em> on Windows or <em>.\/arduino-cli -h<\/em> on Ubuntu).<\/p>\n\n\n\n<p>6. <strong>Running Facilino OTA Server<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\"><\/ol>\n\n\n\n<p>You can run Facilino OTA Server from the command shell by typing <em>FacilinoOTAServer.exe -e<\/em> on Windows or <em>.\/FacilinoOTAServer -e<\/em> on Ubuntu (you need to <em>cd<\/em> to Facilino installation folder).<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"762\" height=\"210\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/23-2.jpg\" alt=\"\" class=\"wp-image-496\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/23-2.jpg 762w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/23-2-300x83.jpg 300w\" sizes=\"auto, (max-width: 762px) 100vw, 762px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>Every time your computer restarts or you close the command shell, you will need to manually execute Facilino OTA server so it can compile or upload code. This is OK if you are the only user using the computer, however, if more users are about to use Facilino (i.e. in a Lab room), in order to avoid copies of the same libraries for each user, the recommended method is to install a service that runs automatically at boot up.<\/p>\n\n\n\n<p><strong>IMPORANT: In order to run Facilino OTA Server as a service, it must be installed by the administrator of the machine and the service must be installed also by the same user<\/strong>. In that case, open a command shell with administrative permission and <em>cd <\/em>to Facilino OTA Server and type <em>FacilinoOTAServer.exe -i &lt;user&gt; &lt;password&gt;<\/em> on Windows or <em>sudo .\/FacilinoOTAServer -i &lt;user&gt; &lt;password&gt;<\/em> on Ubuntu, where &lt;user&gt; and &lt;password&gt; denotes the system user and password of the computer with administrative permisions.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"159\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/24-1-1024x159.jpg\" alt=\"\" class=\"wp-image-497\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/24-1-1024x159.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/24-1-300x47.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/24-1-768x119.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/24-1.jpg 1113w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>Now, start the service simply by executing the command <em>FacilinoOTAServer.exe<\/em> on Windows or <em>.\/FacilinoOTAServer<\/em> on Ubuntu. To stop the service, you can execute the command <em>FacilinoOTAServer.exe -t<\/em> on Windows or <em>.\/FacilinoOTAServer -t<\/em> on Ubuntu.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"974\" height=\"167\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/25-1.jpg\" alt=\"\" class=\"wp-image-498\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/25-1.jpg 974w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/25-1-300x51.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/25-1-768x132.jpg 768w\" sizes=\"auto, (max-width: 974px) 100vw, 974px\" \/><\/figure>\n\n\n\n<p>It is recommended to check the status of the service through the Windows service utility.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"748\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/26-1-1024x748.jpg\" alt=\"\" class=\"wp-image-499\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/26-1-1024x748.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/26-1-300x219.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/26-1-768x561.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/26-1.jpg 1152w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>In Ubuntu, you can check if the service is running by executing the command <em>lsof -i:4000<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"43\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/27-1.jpg\" alt=\"\" class=\"wp-image-500\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/27-1.jpg 640w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/27-1-300x20.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"wp-element-caption\">Created with GIMP<\/figcaption><\/figure>\n\n\n\n<p>7. <strong>Compile &amp; Upload<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\"><\/ol>\n\n\n\n<p>Here, we assume that you have registed an account on Facilino web page, if not, please go to Register and complete the registration and log in.<\/p>\n\n\n\n<p>Here, we assume that you have registed an account on Facilino web page, if not, please go to Register and complete the registration and log in.<\/p>\n\n\n\n<p>To check if Facilino OTA can compile and upload code, create a blank project. Goto to the dashboard page Dashboard, click on New Project and select the desired processor among the list of available ones; select Facilino as <em>Facilino Version<\/em> and Generic Project <em>Block Instruction Set<\/em> and press <em>Create<\/em>.<\/p>\n\n\n\n<p>Then, connect your board to the USB port and click on <em>Compile &amp; Upload<\/em>. A window will show up with the generated code (so far since the project is empty, only setup and loop functions should appear). Select the board port in the dropdown list (if necessary press the <em>Refresh<\/em>) and board:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"281\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/28-1-1024x281.jpg\" alt=\"\" class=\"wp-image-501\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/28-1-1024x281.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/28-1-300x82.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/28-1-768x211.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/28-1.jpg 1381w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Then, verify that the code compiles by click on <em>Verify<\/em> and then if succeed upload the code by clicking on <em>Upload<\/em>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"324\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/29-1024x324.jpg\" alt=\"\" class=\"wp-image-502\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/29-1024x324.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/29-300x95.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/29-768x243.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/29.jpg 1379w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"325\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/30-1024x325.jpg\" alt=\"\" class=\"wp-image-503\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/30-1024x325.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/30-300x95.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/30-768x243.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/30.jpg 1379w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong>Remark: <\/strong>Every time you change the code, you need to compile first and then upload, otherwise the latest compiled code will be uploaded.<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-53e5d1fc5089050b1a8427f80c899fd8\"><strong>g. <a>Block simplification and feature extension<\/a><\/strong><\/p>\n\n\n\n<p>While the previous version of Facilino included many blocks, in this new version, we have included new blocks, updated existing ones and add shadow blocks to provide a hint on the type of input that a block expects.<\/p>\n\n\n\n<p>In particular, from the toolbox, we can see now all blocks variations so the user can directly select the one that he\/she is interested in (previously, only the default block aspect was shown, but now we show all of them). For instance, the arithmetic block operation that included summation, subtraction, multiplication and division in a one single block, now it is shown as if they were four different blocks in the toolbox.<\/p>\n\n\n\n<p>Also, on each input, we have added shadow blocks, which are default input values so that the user does not need to add by himself\/herself. Of course, the user can change this default value to something which is more convenient for him\/her, but in most of the cases, the default value serves as a hint to the user to know which kind of input is expected, but also as quick code generation, just by dragging few blocks.<\/p>\n\n\n\n<p>We have updated, both the aspect and the code generated of some blocks, particularly those related with Bluetooth, because we have developed an App Inventor extension that is compatible with those blocks. Bluetooth-related blocks have also additional improvements. Among them, we can highlight the fact that now we can transmit and receive data between two ESP32 devices as long as one of them acts as master and the other one as slave. We have also created new blocks, such as HTTP REST API blocks to communicate WiFi devices with a mobile device via HTTP protocol. Another important block that has been modified that is widely used are blocks related to GLOBAL variables. Now, this block is simply added to the workspace, but not necessary in the setup as before. Since they are global variables, their definition is not link to either to \u201csetup\u201d or \u201cloop\u201d sections. In addition to this, PWM-related blocks have their own subcategory in the toolbox, which is easier to find them (before they were included in the Analog section).<\/p>\n\n\n\n<p>We have also included many new blocks that were not included in the old version, such as servo motor attach\/detach, ignore output, meArm-related blocks, HTU21D temperature\/humidity sensor block.<\/p>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-36f84008e3c25a596ad710bb049e611f\"><strong>h. <a>Block filters<\/a><\/strong><\/p>\n\n\n\n<p>When creating a project, we can select the type of project we intend to work with, which affects to the block instruction set. For instance, a generic project will have all blocks available by default, while other type of projects will show by default only some categories. The following table summarizes the categories and subcategories shown for each type of project:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>Category<\/td><td>Subcategory<\/td><td>Project type<\/td><\/tr><tr><td>Functions<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td rowspan=\"4\">Control<\/td><td>Flow Control<\/td><td>All<\/td><\/tr><tr><td>Programming<\/td><td>Generic<\/td><\/tr><tr><td>Interrupts<\/td><td>Generic<\/td><\/tr><tr><td>State machine<\/td><td>Generic<\/td><\/tr><tr><td rowspan=\"2\">Logic<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td>Bitwise<\/td><td>Generic<\/td><\/tr><tr><td rowspan=\"3\">Math<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td>Array<\/td><td>Generic<\/td><\/tr><tr><td>Curve<\/td><td>Generic<\/td><\/tr><tr><td rowspan=\"3\">Variables<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td>Array<\/td><td>Generic<\/td><\/tr><tr><td>EEPROM<\/td><td>Generic<\/td><\/tr><tr><td>Text<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td rowspan=\"5\">Basic I\/O<\/td><td>Analog<\/td><td>All<\/td><\/tr><tr><td>Digital<\/td><td>All<\/td><\/tr><tr><td>PWM<\/td><td>All<\/td><\/tr><tr><td>Button<\/td><td>Generic, Multisensor, Home Automation, LED race<\/td><\/tr><tr><td>Bus<\/td><td>Generic<\/td><\/tr><tr><td rowspan=\"4\">Display<\/td><td>LCD 16&#215;2<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>LED Matrix 8&#215;8<\/td><td>Generic, DYOR<\/td><\/tr><tr><td>RGB LEDs<\/td><td>Generic, DYOR, bPED, HomeAutomation<\/td><\/tr><tr><td>OLED 128&#215;32<\/td><td>Generic, DYOR, bPED<\/td><\/tr><tr><td rowspan=\"3\">Communication<\/td><td>USB<\/td><td>All<\/td><\/tr><tr><td>Bluetooth<\/td><td>All<\/td><\/tr><tr><td>WiFi<\/td><td>All<\/td><\/tr><tr><td rowspan=\"4\">Light<\/td><td>Infrared<\/td><td>All<\/td><\/tr><tr><td>Colour<\/td><td>Generic, DYOR, Multisensor, Home Automation<\/td><\/tr><tr><td>LDR<\/td><td>Generic, DYOR, Multisensor, Home Automation<\/td><\/tr><tr><td>Dimmer<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>Distance<\/td><td>&#8211;<\/td><td>All<\/td><\/tr><tr><td rowspan=\"3\">Sound<\/td><td>Buzzer<\/td><td>All<\/td><\/tr><tr><td>Music<\/td><td>Generic, DYOR, bPED<\/td><\/tr><tr><td>MP3\/WAV<\/td><td>Generic, DYOR, bPED, Multisensor, Home Automation<\/td><\/tr><tr><td rowspan=\"5\">Movement<\/td><td>Motors<\/td><td>All<\/td><\/tr><tr><td>Robot base<\/td><td>Generic, DYOR<\/td><\/tr><tr><td>Robot accessories<\/td><td>Generic, DYOR<\/td><\/tr><tr><td>Robot walk<\/td><td>Generic, bPED<\/td><\/tr><tr><td>Robot arm<\/td><td>Generic, mArm<\/td><\/tr><tr><td rowspan=\"2\">System<\/td><td>Controller<\/td><td>Generic<\/td><\/tr><tr><td>Filtering<\/td><td>Generic<\/td><\/tr><tr><td rowspan=\"5\">Environment<\/td><td>Temperature<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>Humidity<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>Rain<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>Gas<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><tr><td>Miscellaneous<\/td><td>Generic, Multisensor, Home Automation<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-0804ac39da7eb783f81b055a6335f57d\"><strong>i. <a>Tutorial and Project-related Exercises<\/a><\/strong><\/p>\n\n\n\n<p>We have included a set of tutorials. The basic ones, have been fully integrated in the new version of Facilino, which includes now TinkerCAD simulations to reproduce the proposed exercises even without the need of programming the physical device. This basic exercises, have been designed to understand how to use specific block instructions. On every tutorial, it is explained which are the worked instructions and which are additional ones that will be used in the exercises. Every exercise includes a description and a hint on how to solve it and also includes the solution using Facilino code.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"818\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31-1024x818.jpg\" alt=\"\" class=\"wp-image-504\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31-1024x818.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31-300x240.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31-768x613.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31-1536x1226.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/31.jpg 1716w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"447\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32-1024x447.jpg\" alt=\"\" class=\"wp-image-505\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32-1024x447.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32-300x131.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32-768x335.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32-1536x671.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/32.jpg 1713w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"812\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33-1024x812.jpg\" alt=\"\" class=\"wp-image-506\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33-1024x812.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33-300x238.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33-768x609.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33-1536x1218.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/33.jpg 1717w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"400\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34-1024x400.jpg\" alt=\"\" class=\"wp-image-507\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34-1024x400.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34-300x117.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34-768x300.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34-1536x600.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/34.jpg 1727w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Also, we have created a set of exercises for specific projects.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"810\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35-1024x810.jpg\" alt=\"\" class=\"wp-image-508\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35-1024x810.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35-300x237.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35-768x607.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35-1536x1214.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/35.jpg 1715w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"409\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36-1024x409.jpg\" alt=\"\" class=\"wp-image-509\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36-1024x409.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36-300x120.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36-768x307.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36-1536x614.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/36.jpg 1722w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>As we can see, this is still a work-in-progress project and we hope to complete most of them by the end of 2023.<\/p>\n\n\n\n<p>Here we can see a TinkerCAD circuit simulation which includes code generated by Facilino to reproduce a specific behaviour.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"943\" height=\"1024\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/37-943x1024.jpg\" alt=\"\" class=\"wp-image-510\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/37-943x1024.jpg 943w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/37-276x300.jpg 276w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/37-768x834.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/37.jpg 1064w\" sizes=\"auto, (max-width: 943px) 100vw, 943px\" \/><\/figure>\n\n\n\n<p>Here is a list with the number of examples created so far:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>&nbsp;<\/td><td>Basic Exercises<\/td><td>Intermediate Exercises<\/td><\/tr><tr><td>USB Serial Communication<\/td><td>5<\/td><td>2<\/td><\/tr><tr><td>Blinking LEDs<\/td><td>5<\/td><td>3<\/td><\/tr><tr><td>Logic<\/td><td>4<\/td><td>3<\/td><\/tr><tr><td>Flow Control<\/td><td>3<\/td><td>3<\/td><\/tr><tr><td>Functions and Procedures<\/td><td>4<\/td><td>3<\/td><\/tr><tr><td>Variables<\/td><td>4<\/td><td>3<\/td><\/tr><tr><td>Maths<\/td><td>4<\/td><td>3<\/td><\/tr><tr><td>Text<\/td><td>3<\/td><td>3<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-0aec99e5da96627d9f7436171af4942f\"><strong>j. <a>Translation tool<\/a><\/strong><\/p>\n\n\n\n<p>In order to provide a localization feature when using Facilino, we have included a translation tool that we hope it will help to translate Facilino into multiple languages. The basic idea of this tool is that a user applies for being part of the translation program, which means that he\/she will be able to provide translations of specific texts, words and sentences that are used in Facilino and in their examples.<\/p>\n\n\n\n<p>Based on previous contributors and an automated tool using Google translate services, Facilino has been already translated into other languages, but it needs to be revised. Thus, the translation tool asks a user to review\/translate some text and he\/she can modify it. Those translations will be reviewed by a second reviewer (and possibly more), and then confirmed added to the database.<\/p>\n\n\n\n<p>To apply to the program, users must fill the following form:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"269\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-1024x269.jpg\" alt=\"\" class=\"wp-image-511\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-1024x269.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-300x79.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-768x202.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-1536x404.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/38-2048x539.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"124\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39-1024x124.jpg\" alt=\"\" class=\"wp-image-512\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39-1024x124.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39-300x36.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39-768x93.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39-1536x186.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/39.jpg 1567w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once filled and they apply, the administrator receives an email with the form data:<br><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"489\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-1024x489.jpg\" alt=\"\" class=\"wp-image-513\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-1024x489.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-300x143.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-768x367.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-1536x733.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/40-2048x978.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"717\" height=\"185\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/41.jpg\" alt=\"\" class=\"wp-image-514\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/41.jpg 717w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/41-300x77.jpg 300w\" sizes=\"auto, (max-width: 717px) 100vw, 717px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"96\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-1024x96.jpg\" alt=\"\" class=\"wp-image-515\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-1024x96.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-300x28.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-768x72.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-1536x144.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/42-2048x192.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Here, you can see and example of a key to be translated\/reviewed:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"202\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-1024x202.jpg\" alt=\"\" class=\"wp-image-516\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-1024x202.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-300x59.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-768x152.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-1536x304.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/43-2048x405.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-black-color has-text-color has-link-color has-medium-font-size wp-elements-1f740ced90f0c294a5b7266b940662bc\"><strong>k. <a>Over-the-air (OTA)<\/a><\/strong><\/p>\n\n\n\n<p>Facilino OTA can be used to program over-the-air devices such as ESP32 and ESP8266. This is a feature that allows programming a device without USB cable.<\/p>\n\n\n\n<p>When creating a new project, we must select Facilino OTA in order to be able to use this feature:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"267\" src=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-1024x267.jpg\" alt=\"\" class=\"wp-image-517\" srcset=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-1024x267.jpg 1024w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-300x78.jpg 300w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-768x200.jpg 768w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-1536x400.jpg 1536w, https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/44-2048x533.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color has-link-color has-large-font-size wp-elements-3f677c3ea175a9f4443d4bced24bb5db\">3. Dissemination and Impact<\/p>\n\n\n\n<p>Since Facilino has suffered from lots of changes, we decided to have an operational version of it before disseminating with users that had used the previous version. However, during development, we have perform several dissemination activities for small groups of users:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Santiago Apostol school has used the tool, during the academic year 2022\/2023, with their students to start learning the basics of coding with simple exercises such as turning on a LED, both in a simulated environment using TinkerCAD and with actual electronics using Facilino OTA. As a consequence, the tool has been testes on kids aged 10-12 years old.<\/li>\n\n\n\n<li>We have collaborated with a secondary school in Valencia, CE Marni, which is not part of this association, but they were willing to use this new version for some of their academic activities, because they were active users of the old version and decided to implement during the academic year 2022\/2023. As a consequence, the tool has been tested on kids aged at 12-15 years old.<\/li>\n\n\n\n<li>Leopoldo Armesto, has encouraged their university students to use this tool to provide code templates as part of an academic work assignment consisting of building a robot within a robotic course of the Industrial Electronics and Automation degree at the UPV. As a consequence, the tool has been tested on adults too, with the main purpose of generating code which they will adapt to their specific needs later on.<\/li>\n\n\n\n<li>Sara Blanch and Leopoldo Armesto have co-tutorized two vocational students (Computer Science) \u00a0performing an internship at the UPV, which have been also using this tool to generate code in order to complete their tasks assignments.<\/li>\n<\/ol>\n\n\n\n<h1 class=\"wp-block-heading\">References<\/h1>\n\n\n\n<p>[1] Blockly <a href=\"https:\/\/developers.google.com\/blockly\">https:\/\/developers.google.com\/blockly<\/a><\/p>\n\n\n\n<p>[2] Facilino (old version) <a href=\"https:\/\/roboticafacil.es\/facilino\/blockly\/Facilino.html\">https:\/\/roboticafacil.es\/facilino\/blockly\/Facilino.html<\/a><\/p>\n\n\n\n<p>[3] Rob\u00f3tica F\u00e1cil <a href=\"https:\/\/roboticafacil.es\">https:\/\/roboticafacil.es<\/a><\/p>\n\n\n\n<div data-wp-interactive=\"core\/file\" class=\"wp-block-file\"><object data-wp-bind--hidden=\"!state.hasPdfPreview\" hidden class=\"wp-block-file__embed\" data=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/Facilino.pdf\" type=\"application\/pdf\" style=\"width:100%;height:600px\" aria-label=\"Embed of Facilino.\"><\/object><a id=\"wp-block-file--media-68cc6dd5-90bb-402e-964f-b661fb773a0e\" href=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/Facilino.pdf\">Facilino<\/a><a href=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/Facilino.pdf\" class=\"wp-block-file__button wp-element-button\" download aria-describedby=\"wp-block-file--media-68cc6dd5-90bb-402e-964f-b661fb773a0e\">Download<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction Block programming tools are one of the most powerful tools that educators have in their hands to teach programming skills to pupils. Based &hellip; <\/p>\n","protected":false},"author":1,"featured_media":519,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-473","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Facilino - Ecothings<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Facilino - Ecothings\" \/>\n<meta property=\"og:description\" content=\"1. Introduction Block programming tools are one of the most powerful tools that educators have in their hands to teach programming skills to pupils. Based &hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/\" \/>\n<meta property=\"og:site_name\" content=\"Ecothings\" \/>\n<meta property=\"article:modified_time\" content=\"2024-10-17T16:53:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/facilino.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"512\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"27 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/\",\"url\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/\",\"name\":\"Facilino - Ecothings\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/facilino.jpg\",\"datePublished\":\"2024-10-17T16:53:42+00:00\",\"dateModified\":\"2024-10-17T16:53:43+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/#primaryimage\",\"url\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/facilino.jpg\",\"contentUrl\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/wp-content\\\/uploads\\\/2024\\\/10\\\/facilino.jpg\",\"width\":512,\"height\":512},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/index.php\\\/facilino\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Facilino\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#website\",\"url\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/\",\"name\":\"Ecothings\",\"description\":\"Erasmus+ KA220-SCH project focused on domotics\",\"publisher\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#organization\",\"name\":\"Ecothings\",\"url\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/cropped-site-icon.png\",\"contentUrl\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/wp-content\\\/uploads\\\/2022\\\/07\\\/cropped-site-icon.png\",\"width\":512,\"height\":512,\"caption\":\"Ecothings\"},\"image\":{\"@id\":\"https:\\\/\\\/ecothings.webs.upv.es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Facilino - Ecothings","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/","og_locale":"en_GB","og_type":"article","og_title":"Facilino - Ecothings","og_description":"1. Introduction Block programming tools are one of the most powerful tools that educators have in their hands to teach programming skills to pupils. Based &hellip;","og_url":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/","og_site_name":"Ecothings","article_modified_time":"2024-10-17T16:53:43+00:00","og_image":[{"width":512,"height":512,"url":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/facilino.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Estimated reading time":"27 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/","url":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/","name":"Facilino - Ecothings","isPartOf":{"@id":"https:\/\/ecothings.webs.upv.es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/#primaryimage"},"image":{"@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/#primaryimage"},"thumbnailUrl":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/facilino.jpg","datePublished":"2024-10-17T16:53:42+00:00","dateModified":"2024-10-17T16:53:43+00:00","breadcrumb":{"@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/#primaryimage","url":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/facilino.jpg","contentUrl":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2024\/10\/facilino.jpg","width":512,"height":512},{"@type":"BreadcrumbList","@id":"https:\/\/ecothings.webs.upv.es\/index.php\/facilino\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ecothings.webs.upv.es\/"},{"@type":"ListItem","position":2,"name":"Facilino"}]},{"@type":"WebSite","@id":"https:\/\/ecothings.webs.upv.es\/#website","url":"https:\/\/ecothings.webs.upv.es\/","name":"Ecothings","description":"Erasmus+ KA220-SCH project focused on domotics","publisher":{"@id":"https:\/\/ecothings.webs.upv.es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ecothings.webs.upv.es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/ecothings.webs.upv.es\/#organization","name":"Ecothings","url":"https:\/\/ecothings.webs.upv.es\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/ecothings.webs.upv.es\/#\/schema\/logo\/image\/","url":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2022\/07\/cropped-site-icon.png","contentUrl":"https:\/\/ecothings.webs.upv.es\/wp-content\/uploads\/2022\/07\/cropped-site-icon.png","width":512,"height":512,"caption":"Ecothings"},"image":{"@id":"https:\/\/ecothings.webs.upv.es\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/pages\/473","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/comments?post=473"}],"version-history":[{"count":1,"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/pages\/473\/revisions"}],"predecessor-version":[{"id":520,"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/pages\/473\/revisions\/520"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/media\/519"}],"wp:attachment":[{"href":"https:\/\/ecothings.webs.upv.es\/index.php\/wp-json\/wp\/v2\/media?parent=473"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}