Would there be any interesting in running a short-course / workshops in either:
A - Uses, basics, not so basics for Cypress PSOC (programmable system on a chip).
Background
PSOC is a microcontroller core (number of different types available, PSOC4 is ARM CM0, PSOC5 is ARM CM3), surrounded with some typical hard peripherals and reconfigurable analog and digital fabric. When used as a solution to the right problem, they can significantly reduce the amount of external components, reduce board space and reduce cost. They're not for everything, but they're a good device to have in the armoury to solve problems. Similar cost and form factor to normal microcontrollers.
Target Audience
Would expect participants to be comfortable working with some other microcontroller and coding in C. Preferably comfortable with the configuration of peripherals without library support (i.e. working off the datasheet.) Probably 3 - 10 people.
Hardware
For the intro it's hard to go past the PSOC4 pioneer kit at $25USD + a few passives. Will need a laptop each. Dev environment is free.
B - Intro to FPGAs and VHDL for synthesis
Background
FPGAs are a programmable fabric of digital logic blocks and interconnects that can be used for a variety of digital designs. Primarily, used either for prototyping digital designs prior to having ASICs fab'ed, or in our case, used where a processor can't meet a application specific digital requirement (e.g. pipeline processing speed, application specific serial interface, emulating an out of production part, etc.) Generally FPGA designs are synthesised from a subset of VHDL or Verilog Hardware Description Languages. Personally I know VHDL, as that's what was taught when I was an undergrad and used ever since, and it still tends to be what's taught in Oz uni's. However both languages are widely used, and the concepts are more important than the language.
Target Audience
Would expect participants to have some knowledge of digital and programing concepts. Also a reasonable amount of determination, whilst Arduino is at one end of the spectrum in terms of reward/effort ratio with so much able to be done by just using someone else's library and half a dozen lines of code, FPGA's are at the opposite end of that, there will be a reasonable amount of work. However you can solve problems there's no other way of solving. Probably 3 - 6 people.
Hardware
There's a few choices here, with Xilinx and Altera being the major players. The Altera DE0 Nano board is quite nice and has an education program we may be able to tap into if the Australian rep is feeling nice. However, I'm a big fan of the Lattice XO2 boards. The Lattice XO2 parts are nice for the sort of projects I've worked on. They have internal flash, come in QFP packages that can be easily hand soldered, single 3.3V supply, readily available, reasonably priced and the tool chain is free for commercial use. An XO2 board is about $30USD.
If you’re interested let me know on this thread or by PM. Either topic will take me a few weeks to pull together, probably a couple more for the FPGA.
Both Sound interesting, probably a bit beyond my skill level at the moment.
Done a little bit with Arduino, and also higher level programming languages.
At the moment fiddling around with a 555 chip and passive components trying to get my head around basic electronics again.
I am interested in both. I do have an Altera DE0 Nano board which is waiting to be unwrapped… It is a bit more expensive than the other options though.
@eyal which would be more useful to you of the two workshop ideas?
The problem with the DE0 Nano boards, other than their bit higher cost, is they’re largely setup for learning about Altera’s softcore processor. Things like the DRAM are a PITA unless you actually plan on using it, as it straight up chews 30 odd pins and determines the rail voltage of any connected IO banks. I’m a fan of using breakout style boards that give you the max IO available.
@batau have you done any playing around with the ATmega underneath the Arduino façade? Just understanding how the peripherals are setup and used would be enough for the PSOC workshop idea.
Yeah we probably should do both. In time… It’ll take a bit of effort to pull together a few sessions of coherent material, more so for the FPGA stuff.
Anyway, see if anyone else is interested, otherwise there’s no point in doing it “formally”.
Yes, I am interested in the PSOC4. I have ordered a kit.
The FPGA is less interesting to me, not because of the technology, but because I cannot see an application where I would use it, and for that reason I would not put the work into learning about it that would justify it.
I like the idea of learning a bit more “structured” FPGA dev, rather than the “teach yourself” dabbling I’ve been doing.
FWIW you can get bare-bones Altera MAX-II CPLD boards plus a USB programmer for about $20 delivered via eBay. Or about $30 for a Cyclone-II FPGA plus programmer. These seem to be about the cheapest things you can get as far as I can see.
Let’s have a crack at the PSOC, it’s probably more applicable to a wider variety of projects.
However due to low interest, how about we just do this informally. I’ll put a few things together, but we can concentrate on specific area’s depending on what people want.
First workshop will be an intro to PSOC, what makes it different to a typical uC, and some no-s#@t examples of what you can actually do with it. Then the practical side, we can go through a “blinky” style app in a few different ways (i.e. software, software with arm systick timer, timer blocks, etc.)