Pokitto as USB Keyboard?


#1

Hi,
Does anyone know if the Pokitto hardware is able to emulate/ act as a USB Keyboard?

I’ve kind of got this idea to use something like this as a random name generator to act as a extra data entry tool. I know other Arduino based things can do this, I do something similar with a Teensy, but I’d like to see if I could do it with the pokitto too.

Thanks


#2

yes. can emulate usbhid (mouse & keyb). and usbmidi. and usbmsd. and usbserial.


#3

i think its possible, the chip family has usb 2.0 HID support (which gives you mice, keyboard and game controller interface)


#4

USB Midi :heart_eyes:


#5

my thoughts exactly. usbmidi chiptune device :stuck_out_tongue:


#6

We can add USB Midi feature to Pokitto Music Tracker (or Pokitto Rboy Tracker. It’s actually yours. I just port Rboy tracker GUI to Pokitto). While playing song it sends midi signals over usb. And with any DAW, Pokitto chiptune sound turn into CD quality sound :slight_smile:


#7

Does it have USB host capabilities? That would be insane to use the Pokitto with an OTG cable and connect my Arduboy or a keyboard to it.

CC @jonne


#8

@crait no USB host for the moment


#9

Is this possible with updated firmware or is it currently a hardware limitation?


#10

Hardware limitation on all Cortex-M0 processors. Not supported in architecture.

Reason is this: USB host stack is much more complex than USB client.

Maybe some limited form of USB host is possible on software (eg. only support for one type of device, lots of stack trimmed out). I came across such a project once but can not remember the name of the project


#11

If you need a keyboard, an old ps/2 model will fit well.


#12

How? I have a few and was hoping some kind of serial connection would work with the connectors at the top.


#13

Reading PS/2 keyboards is covered in many projects. Its very simple stuff.

Another option is to use a XBOX360 controller chatboard. They work, I know that from experience. I haven’t connected one to Pokitto but I tried it out some years ago.


#14

@crait Here you go:

http://cliffle.com/project/chatpad/


#15

Geez, I found the minified USB host project I mentioned and look what are the supported targets:

tinyusb is an open-source (BSD-licensed) USB Host/Device/OTG stack for embedded micro-controllers, especially ARM MCUs…

Supported MCUs

The stack supports the following MCUs

LPC11uxx 
LPC13uxx (12 bit ADC)
LPC175x_6x
LPC43xx

LPC11uxx ? Poo-kit-too!

This is the danger with saying “not possible”. There is always some joker who’s been at it.


#16

I had only a doubt about voltage, PS/2 keyaboard are 5Volt but it seems to work also at 3.3Volt like pokitto use and provide on I/O header .

Really it should be just a metter of porting a minor part (attach interrupt) of some library like this for arduino.
(and solder 4 wires from a ps/2 connector to some pins)


#17

I have a few low-power, foldable keyboards. I am sure these could work… I think they have standard PS/2 input in some way.


#18

The Atmel SAMD21 used on the Arduino Zero has a Cortex-M0+ core, just like the Pokitto. The SAMD21 supports USB host mode. There’s an Adruino library for it.


#19

:open_mouth: My boy, @MLXXXp to the rescue!! Are you seriously suggesting the the Pokitto could have USB host mode? That would be bad a-word. I have a few USB devices, such as Wi-Fi dongles, keyboards, gamepads, etc, that would be cool to utilize on a mobile device.


#20

I’m just saying that having a Cortex-M0+ core doesn’t rule out USB host mode capability. It depends on the peripherals provided on the particular chip using the core.

The USB controller in the Atmel SAMD21, used by the Arduino Zero, specifically supports host mode (as well as device mode).

I believe the USB controller in the NXP LPC11U68, used by the Pokitto, states only device mode support. However, @jonne posted above about the existence of a library that seems to get around the limitation.