Make a demo, win a prize!

26 Aug 2009

Hi,

We're going to be doing some demos towards the 4th week of september, and we've been wondering what demos to do. Dan and Rolf suggested we did a competition, and that sounded like a great idea!

So how about this:

Build a project or demo with your mbed that is very cool. The best demos win one of the new top secret upcoming mbed Microcontrollers! If they are good enough (and pending logistics), we could even take some with us :)

Not sure exactly how it should work, but probably just post your ideas here, followed by photos/videos as you progress, and we can worry about logistics later :)

So what are you going to build?! You have about 3 weeks, and your time starts... now!

Have fun,

Simon

Are your demos going to be at ESC-Boston (Sep 21-24)?  I'm planning on attending.

27 Aug 2009

Hi Scott,

Are your demos going to be at ESC-Boston (Sep 21-24)?  I'm planning on attending.

Yep, we'll be there! If your demo is good enough to win, we'll showcase it :)

Simon

 

 

27 Aug 2009 . Edited: 27 Aug 2009

I could pull out the wiznet and PIC from my WiFi robot and retro fit with an mbed.  Not sure I could get all the software re-coded and get the thing shipped out there in time though............hhmmm.....

It's one of the robots shown in Circuit Cellar March 2009 issue 224.

Scott

31 Aug 2009

So, who is up for this mbed competition? I've seen a few emails regarding people working on some ideas already. If there is proper interest, i'll write up an official call for entries!

01 Sep 2009 . Edited: 01 Sep 2009

I'm interested and hacking on something for it right now, although I'll be spending two weeks of the competition on a narrowboat with limited GPRS connectivity so there's a chance I won't finish in time. But even if I don't finish you should get a couple of vaguely interesting libraries out of it at least.

I'm attempting to put together an old school demoscene style demo, to that end I've started writing a general purpose 2D and wireframe 3D graphics library on top of the MobileLCD class (demo of the progress of this can be seen here:

Later I'll also be attempting to write an audio synthesis library if I have time.

(Edit: Embedded youtube video as requested).

01 Sep 2009

Hi Mike,

Any chance you can post this to youtube and embedded it in your post?

Simon

An interesting demo would be a matrix of mbeds and LCD displays on a big board all conversing with each other like a forum conversation.  Have them all connected so only one "talks" at a time.

Scott

02 Sep 2009

Hi Mike,

Great video :) mbed does 3D!

Are you basically just using the pixel() method, or anything else? I want to look at displays in general next week, which would include cleaning up and making the graphics lcd interface work with more screens. Just wanted to check what you were doing exactly/structure of your API?

Simon

02 Sep 2009

Hi Simon,

Yeah, I'm pretty much just using the pixel(), width() and height() methods from MobileLCD, with the library inheriting from MobileLCD. I've implemented Bresenham's algorithm for drawing lines (and circles) via pixel() and a few methods for manipulating 3d points and projecting them to 2D which then get used by a fairly general trimesh renderer to display models. Next task will be a scanline converter so we can display solid objects.

Mike.

03 Sep 2009
Simon Ford wrote:

Hi Mike,

Great video :) mbed does 3D!

Are you basically just using the pixel() method, or anything else? I want to look at displays in general next week, which would include cleaning up and making the graphics lcd interface work with more screens. Just wanted to check what you were doing exactly/structure of your API?

Simon

What might be a good idea is to make the MobileLCD derived from a general ColorDisplay class, which contained all the necessary drawing functions and a pure virtual putp().

07 Sep 2009

I'm thinking of building a tilt compensated compass using a 3-axis magnetometer and a 3-Axis accelerometer. Both are available from sparkfun.com:

SEN-00244: MicroMag 3-Axis Magnetometer
SEN-08658: Triple Axis Accelerometer Breakout - LIS302DL

Both use SPI interfaces. The output of this project will be Pitch, Roll and Heading (or Yaw, Pitch, Roll as it is sometimes refered). I hope to be complete by the deadline.

Seeing the other post regarding 3D graphics on the Nokia LCD display gets me thinking about another great project down the road, which combines the two. That is to make make a flight instrument panel with an artifical horizon type atitude indicator, as in .... http://en.wikipedia.org/wiki/Attitude_indicator and matching heading indicator ...http://en.wikipedia.org/wiki/Heading_indicator side by side.

Joe

 

 

 

 

13 Sep 2009

How is everyone getting on with demos? Not long to go!

Simon

14 Sep 2009

I'm well underway with my project. Just added it to the cookbook. See "Tilt Compensated Compass" in the cookbook. Don't know what kind of demo it will be without a nice embedded display. Presently I'm using the USB UART to a terminal.

Joe

15 Sep 2009

Hi,

Eric Wieser wrote:
What might be a good idea is to make the MobileLCD derived from a general ColorDisplay class, which contained all the necessary drawing functions and a pure virtual putp().

The start of something along those lines is now at:

http://mbed.org/users/simon/published/b293a6daf9a51ab59e62e94396bc1b32/displays.zip

There are TextDisplay and GraphicsDisplay base classes, which specific implementations can build on. Still work to go, but you get the idea. Have a play!

Simon

15 Sep 2009

I've finished adding a project to the cookbook: Touchpad, under Projects and Experiments (working with v12+)

Regards,

Clemens

17 Sep 2009

My entry is now available at: http://mbed.org/users/elleo/published/9426c939eb9e7a095a8180753459993b/Demo.zip

It consists of the rotating tie-fighter seen earlier with synthesised music playing simultaneously in the background (which can be heard here: http://mikeasoft.com/~mike/mbed-flymetothemoon.mp3)

Both the Graphics and Synth libraries can be found in the svn repositories now (they're both v11 at the moment, as the MobileLCD driver for the olimex screen I'm using is still v11).

There's still a lot of work I'm planning on doing to both libraries but that'll have to wait until I have a proper internet connection and more reliable source of electricity (I'm still on a boat at the moment). I'll see about writing up a cookbook page and adding docs to the Synth library when I get back too (the Graphics library already has some documentation).

It was a nice fun project and hopefully others will get some use of the the libraries that came out of it :).

Cheers,

Mike.

18 Sep 2009

Mike Sheldon wrote:

My entry is now available at: http://mbed.org/users/elleo/published/9426c939eb9e7a095a8180753459993b/Demo.zip

Just wired this up and tested it - it's great!

The music has a somewhat atmospheric shinto quality to it.

05 Oct 2009

Just a small update to say that the Graphics and Synth library now have some documentation available in the cookbook as promised:

http://mbed.org/projects/cookbook/wiki/Synth

http://mbed.org/projects/cookbook/wiki/Graphics

Both libraries could still do with a fair bit more work, but even in their current state they should allow people to do some interesting things.

Cheers,

Mike.

09 Aug 2010

Hi there,

I'm trying to test the code but I get 20 errors like this :

" Cannot call non-interworking ARM symbol 'mbed::DigitalOut::DigitalOut(int, const char*)' in DigitalOut.o from THUMB code in PluckedGuitar.cpp.cpp.LPC1768.o(.text) (EL6239E)" in file "/"

" Cannot call non-interworking ARM symbol 'mbed::Base::~Base()' in Base.o from THUMB code in PluckedGuitar.cpp.cpp.LPC1768.o(.text) (EL6239E)" in file "/"

Please help me with this, I don't know what is wrong.

Cheers

Amir

09 Aug 2010

Hi,

This looks like you are using some very old code from our beta testing, as the errors refer to using int to identify pin numbers, rather than the "pN" enum notation. Best bet is to update to the latest mbed library, then have a go at porting the code to use the release library. I suspect there aren't too many changes that will be needed. If you get it working, perhaps post it to the new cookbook.

Thanks,
Simon

09 Aug 2010

Hi again and thanks for the prompt reply,

I updated the mbed.h , Graphics.h, Synth.h and now I get only two errors

"No instance of constructor "Graphics::Graphics" matches the argument list (E289)" in file "/synth/main.cpp" on line 9, main.cpp

and

"No instance of constructor "Synth::Synth" matches the argument list (E289)" in file "/synth/main.cpp" on line 11, main.cpp

No idea about these, can you help me more ?

Cheers

Amir