Math Learning for Kids

769

12

2

This project is a reverse calculator: the user is presented a random math problem to solve. The number of right and wrong answers is presented on the screen.

Step 1: Needed Parts

The parts you will need are:

  1. Arduino Nano, or another micro-controller.
  2. Keypad. I used a 4x4 membrane keypad.
  3. Display. I used an 128x64 OLED display.

For the power part I plan using a Li-Po battery with a charger-protector board.

Step 2: Schematic

The schematic is simple: the OLED is connected via I2C, the keypad is connected to 8 digital pins.

Step 3: Coding

The code uses the u8glib library for the OLED display. I tried using the newer u8g2 library, but the memory usage was too high.

Two random numbers are generated for the math problem, and a random mathematical operation (addition or multiplication).

The code is available on github: KidMathGame.

Step 4: Epilogue

This is only a demo project, it is missing some essential parts:

  • A battery, to make it portable, and an optional Li-Po charger board.
  • A case.

I also plan moving to ESP8266. The issue is with the keypad: it requires 8 digital pins, and the ESP8266 is low on them. I'll try using an I2C expander, such that the keypad and the oled will be on the same I2C bus.

Such an IOT device will have many traits:

  • The kids' math level can be tracked, and all data can be logged remotely.
  • The level of quizzes can be adjusted OTA.

Share

    Recommendations

    • Make it Glow Contest 2018

      Make it Glow Contest 2018
    • Optics Contest

      Optics Contest
    • Plastics Contest

      Plastics Contest

    2 Discussions

    0
    None
    ljohann

    1 year ago

    Great project! For the IoT version I'd recommend a WeMOS D1 mini board. It can be programmed just like the Nano, has a sufficient number of digital pins, and is unbeatable cheap.

    1 reply
    0
    None
    BorisK4ljohann

    Reply 1 year ago

    I made a new version with the Wemos D1 mini: https://www.instructables.com/id/Math-Learning-for-Kids-With-ESP8266/