New to propeller, can board of education used for the following projects?
CuriousOne
Posts: 931
in Propeller 1
Hello, long time no post here
I decided to buy propeller board of education to educate myself further
I want to do the following:
1. Connect these cheap graphical displays, like 128x64 monochrome or 320x240 color or something in the middle.
2. Connect PC keyboard (USB preferred) to interact with the user.
3. Connect MIDI keyboard to get musical notes.
Is propeller board of education capable of all that?
I decided to buy propeller board of education to educate myself further
I want to do the following:
1. Connect these cheap graphical displays, like 128x64 monochrome or 320x240 color or something in the middle.
2. Connect PC keyboard (USB preferred) to interact with the user.
3. Connect MIDI keyboard to get musical notes.
Is propeller board of education capable of all that?
Comments
Code-wise, no problem.
There is an object for the 1.44" 128x128 LCD SPI Display that I have written. So yes for that.
MIDI has been played with by some. Just not sure if it's complete. If not you may have to code yourself. Lots of help here if you need it.
USB can be done, see http://forums.parallax.com/discussion/121321/working-full-speed-12-mb-s-bit-banging-usb-host-controller/p6 There is currently a demo that provides raw HID packets. I haven't used the PS2 drivers, but I would expect they provide an easier to use interface.
As for a keyboard, Chip's PS/2 driver in the Obex is dead simple to use and needs only two pins and only requires 2 series and 2 pull-up resistors (and Cluso even has a 1-pin variant).
As for scanlime's USB work linked to above, as I recall, the implementation takes several cogs (at least three) to do the Bluetooth stack protocol processing and the USB human interface device (HID) processing. Still, it's amazing what she was able to demonstrate, and she dared to go where no one had gone before. But assuming you want to keep things simple and only use up one cog, then go with a PS/2 driver and PS/2-compatible keyboard.
Like Cluso mentioned, many keyboards are backwards compatible with the PS/2 protocol, so I wouldn't let the legacy protocol scare you. They work just fine, whether hooked up to a Prop chip or a PC. I actually have used around 10 different types of slim keyboards with the so-called chocolate key caps and ALL of them (of slightly differing designs from different manufacturers and/or suppliers) have been PS/2 compatible.
Having said that, many keyboards are not P2/2 compatible, over half of them, I'm guessing (perhaps well over). But many Chinese manufacturers of wired keyboards use a chip that can automatically detect and switch between USB or PS/2 modes. And the other day, I saw the spec sheet for a keyboard IC from a Taiwanese chip designer that mentioned it was PS/2 compatible. So, I think the news of PS/2's death is greatly exaggerated. PS/2-compatible keyboards will likely be available through online sources, like EBAY and TAOBAO, for at least 5 or 10 more years. Of course, I'm talking about wired keyboards.
But the big problem is that many vendors of such keyboards don't advertise and don't even know that their keyboards are PS/2 compatible, and they won't be able to answer you if you ask them or will tell you "No, they're not compatible" if asked simply because there's a USB jack at the end of the cable (with no included PS/2 adapter). But I'm telling you that many if not most of the slim, so-called mini keyboards (such as those with around 78 standard sized and spaced keys) using the chocolate keycaps are compatible (and I'm sure many with other key cap styles are, too).
And you don't need to deal with a PS/2 adapter thingy, as you can simply plug a PS/2 compatible keyboard into a USB socket/receptacle (unless, of course, if it has a P2/2 connector on the end of its cable, which most don't these days). Note, however, that the USB type A socket doesn't use 0.1" spacing to allow straight plugging into a breadboard, so you'll need to deal with that, which isn't hard with a four-pin header and a little soldering. Or you can buy a small board from Parallax with a PS/2 jack on it and use a passive PS/2 adapter with it if your keyboard has a USB plug at the end of its cable and it is PS/2 compatible. Or, you know what? It's been discontinued, but you might try to find a Parallax Demo Board online (new or used) as it had a PS/2 keyboard socket on it (though you'd likely still need the little passive adapter to mechanically connect), as well as composite (TV) and VGA jacks. But if you've decided on the Board of Education, then that's great, too, but you'll just need to use the prototyping breadboard to do your interfacing.
Let me clarify some of things.
I started with Basic Stamp, but quickly run out of resources, so I went to Picbasic Pro. I've advanced it a lot, but as my project complexity increase, I faced many situations, that simultaneous execution of a lot of different code pieces is needed, and interrupts are hard way to do that. And there are no text strings and string variables at all (Meanwhile, I've started learning C).
So my intention is, to buy propeller board of education, and try to implement what I want to do on it, to get know, whenever propeller chip in general is the proper choice for me, for my projects. (One of which includes the following - chip should decode about 1 mbit bandwidth PPM signal, generate PWM packets at about 100khz frequency, drive at least 128x64 graphical display with real-time data updating, and interface with user via set of buttons & keyboard (keyboard won't be connected all the time, but user might want to connect it for faster entry of names and other custom data). Also, it should accept and decode signals from 38khz IR remote, so multi-core is only way to go, I think.
So this is why I need the things I've asked - ability to work with these cheap monochrome and color displays, without any "backpack" or expensive hardware involved.
Same goes to USB keyboard - by USB keyboard, I meant a larger range of HID devices, that user might need interaction, like mouse and so on.
For the MIDI, I know that is simplest - I have done it in Picbasic Pro, and it requires only couple of external parts.
For these "objects" mentioned, they are finished, well working, and I just need to paste them into my code, and call them like subroutines, when needed?
Thanks again!
Choices are multi-core, or multiple MCUs.
Display choices will be limited by Available memory, and keep in mind complex user interfaces with many menus, can be very code hungry.
P1 should be good at things other MCUs struggle with, like "decode about 1 mbit bandwidth PPM signal, generate PWM packets at about 100khz frequency"