Code Monkey home page Code Monkey logo

arduino's Introduction

Arduino firmware for Escornabot

Travis Build Status

This is the Arduino firmware to upload to the Escornabot.

More info about the Escornabot at escornabot.com

Please, open issues here if you find any problem with this firmware. Thank you!

Download the __last version from here

Instructions

Compilation and upload with Arduino IDE

  1. Install the Arduino IDE

  2. Copy the right configuration to the Escornabot directory.

  3. Follow this guide compilated by @escornafan (in Spanish).

Compilation and upload with PlatformIO

You only need to install PlatformIO CLI:

pip install -U platformio

There is a project file platformio.ini to compile and upload escornabot firmware to the Atmel AVR platform + Arduino framework for Arduino Nano and Arduino Micro boards.

Arduino Nano

# compile firmware and upload firmware to an Arduino Nano:
pio run -e nano -t upload

Arduino Micro

# compile firmware and upload firmware to an Arduino Micro:
pio run -e micro -t upload

Branches and releases

Escornabot's repository flows through 2 main branches:

  • stable: well-tested firmware that you usually have to work with. Released versions are named with even minor numbers (x.0, x.2, ...).
  • testing: new features and minor bugs pending of testing in deep. Released versions are named with odd minor numbers (x.1, x.3, ...).

Releases are published ready to download in zip format.

arduino's People

Contributors

manolomira avatar rafacouto avatar xoan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

arduino's Issues

Configure keypad for 2 or 3 wire mode

I think it would be useful if anyone could choose to configure the escornabot to work with a 2-wire mode or with a 3-wire mode. I think the best way to do this would be with a parameter to change on the configuration.h fle.

Alerta de inactividade

Se o Escornabot está acendido máis de 2 minutos debería alertar do feito que está a gastar batería innecesariamente cunha alarma sonora e visual curta.

Rampa de aceleración/deceleración ¿pull-request?

He realizado varias pruebas con rampas de aceleración y el mejor resultado ha sido:

Rampas lineales de aceleración y deceleración (la de aceleración el doble de larga que la de deceleración). Como se ve en el vídeo puede lograrse un 50% de incremento de velocidad sin comprometer el desplazamiento.
.
https://youtu.be/vMfqwFygL8M

Sin rampa de deceleración hace un "caballito" al pasar de sentido adelante a sentido atrás, que puede provocar un pequeño deslizamiento si la superficie es muy lisa. Podría mejorarse acercando el centro de gravedad a la bola loca.

He metido esta modificación en un branch del repositorio y me gustaría enviar un pull-request... o que me indiquéis cómo enviar el código de otro modo para que lo podáis valorar introducirlo en el repositorio si el estilo es apropiado.

Configure number of buttons on the keypad

I think it would be possitive to be able to configure the number of buttons of the keypad on the firmware in a simple way, so that anyone could choose the number of buttons best suited for him.

Assign button behavior

Being able to easily assign a behaviour for each button would be a useful improvement.
Some lines to change on the firmware so that anyone with little programming experience could modify how the robot acts when each button is pushed.
Example: Making a game more challenging by changing LEFT and RIGHT (when you push left button, robot moves right and the other way round)

EEPROM is not cleared when reset button is clicked.

The last executed program remains always in memory.

  1. Program some movements
  2. Click go
  3. Click reset
  4. Power off the Arduino
  5. Power on the Arduino
  6. Click go (or program some movements and click go)

The program in 1 is executed before the program in 6.

Consola de comandos

As funcións do Escornabot usarán unha interfaz de consola para a súa execución e para informar de eventos. A consola poderá ligarse cun porto serie.

Será compatible coa interfaz actual que se usa no porto serie para o Bluetooth e ESP-01. Extenderá a funcionalidade con M-codes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.