Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Help identifying board.

Status
Not open for further replies.

Pommie

Well-Known Member
Most Helpful Member
Hi all,

I bought this board a few years ago and can't remember anything about it or find it anywhere on the internet.
pro-micro.png

The processor is an ATMEGA32U4 and the USB connector is mini. Note the extra holes opposite the USB connector (RHS of the board). The upper pins are labeled F0 to F7 and the others B, C and D. As this appears to be obsolete, I want to use it as a IR receiver to control the old laptop I use as a media center as described in Jon's thread.

Thanks,

Mike.
 
Found it. When I plugged it in it announced itself as a Teensy. Found on ebay. Now to work out how to install it in board manager.

Mike.
 
Maybe I've started something ;)

I haven't figured out all the keycodes yet. Implementing a few mouse keys for navigation may be desirable too.

I used the HID-Project library for the keyboard part.
 
The Teensy has HID built in so I programmed it to be a keyboard sending "Hello World" every 10 seconds and it worked first time. I got a little window up telling me I had to press the reset button to get back into the bootloader. No matter what I tried it always appeared as a keyboard not a serial port. I checked the FAQ and found,
#2: No COM Port or Serial Device Seen: Teensy uses HID protocol for uploading, not serial. Brand new Teensy boards are shipped with the LED blink example compiled to appear as RawHID. You must program Teensy at least once from Arduino. The COM port (Windows) or Serial Device (Mac, Linux) appears only after Teensy begins running your program. Regular Arduino boards are always serial. Teensy uses HID and supports many protocols. To use serial, make sure the Tools > USB Type menu is set to "Serial", and understand Teensy only becomes a serial device when it runs your program built with this setting.

So, I may have bricked it on my very first try. Thanks for the warning PJRC!!!

Mike.
 
OK, plugged the board into my laptop but if failed to install the driver but appeared as a broken serial port. Back to my desktop and it now appears as a serial port - no idea why!! Think I'm going to get the IR read working first before mapping the codes to a keypress.

Mike.
 
The Seeed Xiao has some weirdnesses like that. I'm wondering if using device manager to delete it when it acts up. I've had some success rebooting the computer with the Xiao gets weird.
 
I've had to mess with the Teensy a few times. Only way, I've found, to get into bootloader appears to require a reset of the PC. A real pain in .. Anyway, complete now and all working. My TV remote has the media keys (play etc.) for playing files from USB which are ignored if no USB drive. So, I remapped those to the keyboard equivalent. Works brilliantly. Thanks for the pointer Jon.

Mike.
 
This was so easy to do I have to tell someone.

The hardware, I soldered a 3 pin female header to 3 I/O pins (easier than trying to get power from power pins) and stuck a TSOP IR receiver in it.

IR.png

Selecting "Serial + Keyboard + Mouse + Joystick" for USB mode made short work of the HID part.

The code was then simply,
Code:
#include <IRremote.h>

#define OUT 0
#define GND 1
#define VCC 2

IRrecv irrecv(OUT);
decode_results results;

void setup(){
  Serial.begin(115200);
  pinMode(GND,OUTPUT);      //power up the TSOP
  digitalWrite(GND,LOW);
  pinMode(VCC,OUTPUT);
  digitalWrite(VCC,HIGH);
  irrecv.enableIRIn();
  irrecv.blink13(true);
}

void loop(){
  if (irrecv.decode(&results)){
    if(results.value==0x20DF0DF2){      //change to suit your remote
      Keyboard.press(KEY_SPACE);
      Keyboard.release(KEY_SPACE);
    }
    else if(results.value==0x20DF8D72){      //change to suit your remote
      Keyboard.set_modifier(MODIFIERKEY_CTRL);
      Keyboard.press(KEY_Q);
      Keyboard.release(KEY_Q);
      Keyboard.set_modifier(0);
      Keyboard.send_now();
    }else{
      Serial.println(results.value, HEX);  
    }
    irrecv.resume();
  }
}

Note, the above is for VLC - space to pause/play and Ctrl-Q to quit.

Mike.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top