Shop OBEX P1 Docs P2 Docs Learn Events
Amazed at Propellors easy and simplicity — Parallax Forums

Amazed at Propellors easy and simplicity

Rick_HRick_H Posts: 116
edited 2011-09-26 19:33 in Propeller 1
I have spent a year with 3 props now.
I have made a MIDI controller for Sonar with a total of 128 controls(Encoders and PB's),
I have made an Multichannel LFO 0.01-600Hz
(Triangle, Square, Sine, Log(1-4), Rectified, and anti-Log) each controlling a quadrant of the wave and selectable
Mixable with 3 analog inputs Foot expression, Feed forward and Feedback Envelope follower
an LCD 2x16 to display parameters and 3 encoders and 4 PB's

When I started these projects I was only familiarized with the Basic Stamp 2 and all my programing knowledge was in VB 6 and PHP, nothing else.

I have written 2 I2C protocols(PCF8574, MAX521) in PASM and 1 MicroWire (TLV0838)

I have to say the Learning curve was big for me taking on Multicore processor, shared memory management, no multiplication or division, I2C and Microwire , Spin and PASM( I rarely do anything in Spin anymore)

This chip just blows my mind, it seams if I can think it I can make it. Every task I have taken on I expect roadblocks in fucctionality and capability, I seriously have not had this issue.

Comments

  • Mike GreenMike Green Posts: 23,101
    edited 2011-09-25 14:59
    Yeah, impressive isn't it ... envisioned by one person, then implemented mostly by the same single person. Depending on what you're implementing, Spin can be very very useful even if you mostly prefer assembly language. Think of it as high level control language, sort of like glue logic ... helping to integrate a variety of bits and pieces.
  • Rick_HRick_H Posts: 116
    edited 2011-09-25 15:59
    Ya, I primaraly use it too move variables around and obviously to manage cogs. Its a lot faster too write the management in spin but once I got the hang of assembly I realy felt I was off and running.
    I realy wish it had more integrated math though, I am doing a lot of span and slop and mean averaging in my code and loading the math asembly and useing spin to pass data too it is a bit slow for some of the things I would like too do.

    I am currently trying to write an assembly math routine that just has specific functions and has an interface more like what I do instead of using spin.
    Functions I want are -
    Average (count, numb1, numb2,numb3, ext)
    Count is the number of variables to be passed - the number would go into a register in the math assembly and then would set a flag and clear the count var to be used to fill the numb# into(reuse the var)
    Once the flag to write the numb# into Count is set the assembly routine passing the data would then write the first number and wait till the math routine grabbed it and cleared it and then repeat until the math routine reset the flag confirming it was received count numbers and then insert the average into count to be retrieved
    .
    this is just an example though, I need to think it through a but more as it seams their would be an even faster way other then writing the math into every assembly snip-it I did. Its the thing I am running into is speed versus cog management at the moment.
    I know I seen a multiply and divide code somewhere, is it in the main manual for the prop?
  • Mike GreenMike Green Posts: 23,101
    edited 2011-09-25 16:12
    I'm sure there are others copies of this document, but I couldn't find one quickly, so here it is again. Look through it for examples of multiplication and division.
  • TappermanTapperman Posts: 319
    edited 2011-09-25 16:33
    Mike Green wrote: »
    Yeah, impressive isn't it ... envisioned by one person

    Amazing! I am in awe! What an incredible tool!
  • Rick_HRick_H Posts: 116
    edited 2011-09-25 18:35
    Thanks Mike, I haven't seen this doc before but the code looks to be the same as I remember. This is actually a much more concise doc, really striped down compared to the manual. I like it lol, thanks again.
  • Cluso99Cluso99 Posts: 18,069
    edited 2011-09-25 19:15
    Rick_H: Yes, its a spectacular chip. Pasm is the easiest I have seen on any micro and has real power too. I just use spin to glue it all together because rarely is speed a requirement once you have the cogs doing the intelligent peripherals and time sensitive parts.

    I will look at what Mike posted, but you can find the spin interpreter code and my faster spin code pointed to in my signature (my tools thread identifies it). My code unravelled the spin interpreter to make it faster and a few including chip contributed to particularly the multiply and divide routines to improve performance.

    As a possibility, you may find LMM useful now for some of the cogs where cog memory becomes an issue. There is plenty of threads discussing this. And if you need to know something, just ask.
  • Rick_HRick_H Posts: 116
    edited 2011-09-25 19:39
    I haven't run into a memory Issue yet, but I see it coming for sure. Most of my current projects are either workbench related or interface related. My programmable LFO system is nothing but a slick interface to my analog effects. I think I may have a go at directly controlling the BBD chip with a prop and see how that works.
    Once I start getting into periphery Like KVM's and SD storage I can guaranty I will be looking at LMM. At the moment though I make compromises with speed and COG's. not that I need more cogs but I need to start laying out my projects better to manege what and when code is loaded, how long that takes and where best to fit it in. Currently I swap out my LCD code for EPROM Storage. their is no real sacrifice hear but when it comes to ADC/DAC, User controls PB, Encoders, Serial transmission and everything else I need to judiciously load and unload without interrupting my processes.

    I also want to start an interface in VB. A lot of my projects would benefit from having a stand alone app to configure them. My LFO generator is hindered buy the complexity of the front panel 2x16 LCD and knobs and buttons. So their is lots more work to do and thanks to the prop for being so kind.
  • JonnyMacJonnyMac Posts: 9,205
    edited 2011-09-25 20:04
    Yes, its a spectacular chip. PASM is the easiest I have seen on any micro and has real power too.

    I taught three, standing-room-only Propeller classes at DEF CON 19 many of the participants were hard-core coders -- all agreed that the chip is amazing, and that PASM is easy and powerful. Sadly, too many people asked, "Why haven't I heard of the Propeller?" Of course, I couldn't answer that, but I'm hoping that my friends at Parallax participate in DEF CON 20 (going to be a big shindig) and other events where the Propeller might have been overlooked.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-09-25 20:24
    Paradigm shifts require energy and time. The Propeller is up to the task on both fronts. Parallax has only to outlast market inertia to prevail. It will happen!

    -Phil
  • RS_JimRS_Jim Posts: 1,768
    edited 2011-09-26 06:14
    Paradigm shifts require energy and time. The Propeller is up to the task on both fronts. Parallax has only to outlast market inertia to prevail. It will happen!

    -Phil
    Hopefully, the intro to Radio Shack will help in overcoming some of that market inertia!
    Jim
  • Rick_HRick_H Posts: 116
    edited 2011-09-26 08:50
    I heared that Radio Shack is starting to carry more components like they used too. Seeing a propeller in the stores would defiantly rock. I got my first Basic stamp and "What is a Micro" book from them.
  • Mark_TMark_T Posts: 1,981
    edited 2011-09-26 11:30
    I made myself a Prop T-shirt (the nice colourful pinout diagram on an iron-on transfer) - perhaps Parallax should market some of the nice artwork like this on clothing and mugs at ThinkGeek or similar?
  • JonnyMacJonnyMac Posts: 9,205
    edited 2011-09-26 11:41
    While at DEF CON I made I had a t-shirt made, too. After having several people come up to me and ask if the QuickStart was some sort of new Arduino board I had a t-shirt printed that reads:

    MY PROPELLER KICKS
    YOUR ARDUINO'S *SS!

    ... though there is no asterisk on my t-shirt. While teaching one of my classes a guy asked, "Do you have any thoughts on the Propeller versus the Arduino?" I opened my jacket to reveal the shirt and replied, "Yes I do..." Thankfully, everyone laughed and took my cheeky shirt with the spirit it was intended.
  • Kevin WoodKevin Wood Posts: 1,266
    edited 2011-09-26 14:46
    Jon, are your Defcon19 presentations available online?

    I've seen slideshows and videos posted from some of the others, but didn't come across yours anywhere.
  • JonnyMacJonnyMac Posts: 9,205
    edited 2011-09-26 16:10
    @Kevin: No, these were conducted in the Hardware Hacking village were I could work very closely with participants; this was not part of the formal set of presentations.
  • Cluso99Cluso99 Posts: 18,069
    edited 2011-09-26 18:34
    It took me less than half an hour to get a led to flash with the prop. So far it has taken me hours to understand how to compile code for an at tiny let alone flash a led and program the code. What a difference!
  • User NameUser Name Posts: 1,451
    edited 2011-09-26 19:05
    The SX-Key/SX combo had one thing in common with the PropTool/Propeller combo - both provided unbelievably positive experiences right from the start; so much so that both events are still etched in my mind.

    Funny thing about the Prop is that it just gets better and better. The more you call on it to do, the more you realize it is not like anything else you've ever used.
  • Kevin WoodKevin Wood Posts: 1,266
    edited 2011-09-26 19:28
    @Jon - Okay, thanks. Maybe next year somebody can tag along with a camera.
  • jazzedjazzed Posts: 11,803
    edited 2011-09-26 19:33
    Sure is nice to be able to read about all these wonderful experiences without distractions.
Sign In or Register to comment.