Coder Social home page Coder Social logo

gharishkumar / pico-ir-keyboard Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 2.0 16 KB

Add IR remote as input to any PC Decoding NEC protocol IR pulses from remote control with a Pico and perform keypress as a USB keyboard (HID).

CMake 22.75% C 77.25%
raspberry-pi-pico ir-receiver usb-hid ir-keyboard ir-remote-receiver ir-rece

pico-ir-keyboard's Introduction

pico-ir-keyboard

Add IR remote as input to any PC

To compile pico-ir-keyboard

  1. Set up your PC to point to use the Raspberry Pi Pico SDK, follow README in Raspberry Pi Pico SDK.
  2. Clone this GitHub repo
    $ git clone https://github.com/gharishkumar/pico-ir-keyboard.git
    
  3. Change to pico-ir-keyboard directory.
    $ cd pico-ir-keyboard
    
  4. Setup a CMake build directory. For example, if not using an IDE:
    $ mkdir build
    $ cd build
    $ cmake ..
    
  5. Make your target from the build directory you created.
    $ make -j4
    
  6. You now have pico_ir_keyboard.elf to load via a debugger, or pico_ir_keyboard.uf2 that can be installed and run on your Raspberry Pi Pico via drag and drop.

NOTE :

  • IR rx pin, IR command (or) Keyboard keycode can be customised in pico-ir-keyboard/src/main.c.
  • By default GP27 is set as INPUT.

Back story

Adding HID

 ✔️ It's a relatively simple and easy process available with TinyUSB, via CircuitPythonArduino IDE (or) Raspberry Pi Pico SDK.

 ❌ but not MicroPython.

Decoding IR with pico

  1. Try old python code.
  2. Search for Pico specific code.
  3. Changing the old code to C.
    • As USB HID support is available in Arduino IDE, I convert that old Python code to C.
    • It didn't work either.
  4. Trying with PIO.

Merging two

pico-ir-keyboard's People

Contributors

gharishkumar avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

fuleri89

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.