Short Article Parallax Style Getting Brand X Programmer To Work

Idea is to use the patient way Parallax manuals are written.

Like 'What's a Microcontroller'.

I can see right away the need for a bootloader. Very wise of Parallax to sidestep THAT one!

The problem with other tutorials and books is they lose you within first couple pages.

There is a place for 'over explanation'. I guess that is the secret. Hard to put your finger on exactly how Parallax does it.

Looking forward to making millions on this.:)
JUNIOR ENGINEER

AMATEUR ASSEMBLY PROGRAMMER

Comments

  • 30 Comments sorted by Date Added Votes
  • I'm not sure exactly where you're going with this, but Dr. Jonathan W. Valvano (http://users.ece.utexas.edu/~valvano/) has 3 courses up on EdX covering embedded programming on ARM systems. They are worth checking out to see how they cleverly use DLLs with Keil to allow grading of both simulated code and code running on TI boards. Unfortunately this means that it's Windows only.

    All 3 courses are currently active, but will go dormant at the end of the year. I guess that the content will still be viewable, but they won't be grading etcetera. Anyways I think it's a good introduction for anyone wanting to learn about C and ARM. And for anyone wondering how the heck you could teach this kind of thing online.

    Embedded Systems:

    UTAustinX - UT.6.10x
    UTAustinX - UT.6.20x

    Covers RTOS topics - this one just began recently (it's a repeat, but the forums should be active etcetera)::

    UTAustinX: UT.RTBN.12.01x

    And of course there are books covering this content that Valvano self-publishes, but you definitely don't need them for the courses.

    Also Miro Samek has a little online course. It's quite short, but he covers some ideas that Valvano's classes don't get into. Also he shows how powerful it is to have a good debugger and how it can be used to explore the system. (Kind of how Forth or a REPL in general is used by some.)

    https://state-machine.com/quickstart/


  • Thank you Keith

    That certainly is a current type tutorial!

    ARM does attract a few users.

    Going to have to write lengthy section on using Brand X programmer for my little article/book.

    Bootloaders have drawbacks. We'll see.

    Parallax should be happy they have taught somebody something.

    How to write a good manual for beginner's.

    Thank you Parallax!



    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • Heater.Heater. Posts: 19,880
    edited September 24 Vote Up0Vote Down
    microcontrolleruser,
    ARM does attract a few users.
    They don't get much choice. Sadly if you want something a step up from an 8 bit PIC or AVR there is very little choice but ARM.
    How to write a good manual for beginner's.
    Writing clearly and engagingly requires great skill.

    First find yourself a bunch of beginners and explain it to them. It is often said that you don't understand a thing until you can explain it to others. You learn a lot from teaching.

    If that works you will know what to write and how to pitch it.

    I think a big difficulty with this idea is that there are a bazillion different chips and boards out there and they are changing all the time. What you write this week may not work exactly for somebody next week. As they are beginners they will likely give up.

    This is where Parallax streaks ahead. They have their own platform that is stable over time. They can invest time and effort into creating documents and learning materials and know that it is not all broken next year. Similarly for the Raspberry Pi and Arduino. Outside of that it is something of a mine field.

    Personally I would not want to invest too much time in writing learning materials that only support Brand X.










  • Heater

    What's going on is this.

    I am done whining at Parallax to get back into PIC's.

    Right now there is an old Parallax Clear View Emulator on Ebay.

    Do you know how hardcore you have to be to build and market a hardware emulator.

    That is up at the same level of understanding as Microchip lead guys.

    To throw all that experience away is just a major 'Does not compute' with me. Mind numbing.

    So. I have to fumble along and write an articles on the pitfalls of using Brand X programmer.

    Parallax could do this in their sleep.

    'But nooo!' It falls on me.
    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • microcontrolleruser,

    Why are you whining at Parallax to get back into PIC's?

    PICs are horrible things. There are no open source and cross-platform tools for them.

    The 8 bit hobbyist market has been taken over by the Arduino and it's AVR so it would be silly of Parallax to try and continue in that space.

    It makes no sense for Paralax to invest time and effort into supporting another manufactures chip when they have one of their own, the Propeller.

    If you want to write supporting materials for some historic artifact that is all well and good. I'm into technological archaeology as well. But I can't imagine it would have a wide audience.
  • Well you have your goals and Parallax has their goals. And getting back to pics is not a goal of Parallax.

    The basic stamps will be supported and produced by Parallax for a long time, but I do not think that the product line gets expanded.

    It makes simply no sense for Parallax to put a lot of work to document other manufacturers chips, if you are a chip-producer by yourself, you sort of promote your own products, not those of your competition.

    The Basic Stamps are now a legacy product, still supported, still produced, because one of the goals of Parallax is to support products over decades and not just years.

    You will find out that writing a book like 'what is a microcontroller' is a very time consuming effort if you do it right, like Parallax did.

    It cost a lot of money and time to produce good documentation, and Parallax does not 'do it in their sleep' but pay good engineers a sustainable income for working on things like that.

    To do that they have to sell the products for a long time to level out the costs. And for sure they will not give you the source for the boot loader and Basic interpreter, so you can build stamps on your own for say half the price, why should they do that?

    If you think a HW-emulator for Stamps is a sellable product then YOU have to build and market it. Not Parallax, because they do not see the value in it, you see the value in it.

    So stop whining and do it.

    Mike
    I am just another Code Monkey.
    A determined coder can write COBOL programs in any language. -- Author unknown.
    Press any key to continue, any other key to quit

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this post are to be interpreted as described in RFC 2119.
  • microcontrolleruser,

    Look at the older versions of What's a Microcontroller and Robotic (with the BOE-Bot) have.
    The BASIC Stamp was great because it was so easy to use and things such as the Arduino and Picaxe are based on it.

    The Propeller is a 32-bit microcontroller but it lacks a lot of the hardware such as ADCs and UARTs.
    The new generation Propeller that still in development not only has more I/O pins and memory that the Propeller but ADCs and other hardware. This chip is gonna be awesome when it comes out so if you want to write a book then choose this baby since if history is any indication then it will be around for a few decades.

  • microcontrollerusermicrocontrolleruser Posts: 556
    edited September 25 Vote Up0Vote Down
    'Parallax does not 'do it in their sleep'

    You misunderstand.'Do it in their sleep' is saying they had if anybody still remembers the stuff there.

    Tippy top expertise with Brand X.

    'you think a HW-emulator for Stamps' Another misunderstanding. That was an example of how high Parallax had climbed

    in the Brand X world. That is no home made programmer. To build something like that you have to be 'way into it'.

    An emulator is above a programmer and a debugger. Brand X one today will give anybody sticker shock. It's the 'last stop' in

    development.

    There are people right now working on projects that are 'riding the wave' and 'eating breathing and thinking' their projects

    round the clock. That's what it takes to operate at that level.

    'not give you the source for the boot loader and Basic interpreter' I don't know where that came from.

    I am working on 'plain talk' supplement to Brand X documentation about using hardware programmer the first time.

    Goal is to lower the frustration factor. Avoiding pitfalls. Needs a Parallax like approach.






    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 21,419
    edited September 25 Vote Up0Vote Down
    Goal is to lower the frustration factor. Avoiding pitfalls. Needs a Parallax like approach.
    So DO IT instead of just talking about it and disparaging Parallax for not going along. And be sure to come back when you have something to show us.

    -Phil
    “Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away. -Antoine de Saint-Exupery
  • Short story for you guys and gals.
    Forrest Mims III was my hero in the 80s.
    RadioShack was the best place on earth. RIP
    But even then we knew piracy was a bad thing.



  • Okay.

    'The new generation Propeller that still in development'

    Good.

    Add these features please:

    Compiles

    Single processor mode

    That's good that is 32 bit.








    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • I don't understand what you mean by brand x, but most of your posts where complaining about Parallax not doing what you like to have done.

    If you think it is a good idea, just do it. Spend a year writing a book in Parallax style. Get it printed, get it sold, cash in the millions you are talking about. But like @Phil I am sort of tired to read that your opinion is that Parallax should do this, and should do that, and missed doing this and missed doing that.

    Those 2 Brothers and the staff they hired and keep feeing every month are doing a amazing job. It is a SMALL company swimming in a pond with really big fishes.

    Atmel & CO have probably more people in their Call-Center every day as Parallax has Employees.

    And over 30 years now they keep staying alive, feeding themselves, feeding their employees and as you stated doing a excellent work providing educational material, customer service and - well - unconventional products.

    Maybe you should just go down to Rocklin and visit their place. I bet you will be surprised.

    Mike
    I am just another Code Monkey.
    A determined coder can write COBOL programs in any language. -- Author unknown.
    Press any key to continue, any other key to quit

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this post are to be interpreted as described in RFC 2119.

  • I am doing my best to find a SX-Blitz or SX-Key.

    That ought to be good enough for awhile.

    Get to work with Parallax SX.
    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 21,419
    edited September 25 Vote Up0Vote Down
    The SX was top-o'-the-heap for a time, but now it's yesterday's news. (It's even been EOL'd, in case you hadn't noticed.) I'm not sure I understand your obsession with early PICs and their derivatives, when there's so much better stuff available now -- even from Microchip, since you seem to be fixated on them.

    -Phil
    “Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away. -Antoine de Saint-Exupery

  • Want to use my SX Tech Board and SX compiler for something.

    The SX Assembler tutorial looks very cool.

    I don't think the guy that wrote it is even still there at Parallax. Don't know.

    A processor that compiles and you can program it in Assembler is a good thing.

    On top of it you get a good Parallax manual.

    Sounds like a good thing to me.

    As far as being old. So what. Learning SX is by no means a dead end.

    It's code is subset of Brand X.

    Its my top pick of the Parallax stable.
    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • microcontrolleruser,

    The SX ceased production years ago and Parallax stopped making the BS2sx and BS2e last year.

    I don't track Propeller 2 development much but it's my understanding that compilers exist for it.
    The Propeller is a multi-core processor and there are a lot of things that the Propeller can't do using only one Cog.
    Most of the really neat things such as video require most if not all of the Cogs.
  • "It's a Trap!"

  • Genetix Thanks!

    My brain just won't take on the extra load of multi processor.

    I am maxed out learning assembler.

    Along with dealing with hardware and processor selection.

    There may be some reason multi processor is A-Okay but I just don't want to deal with it right now.

    Propellor should work out for Parallax. There are some elements in there that are portable to other processors so

    it is worthwhile for the little tykes to learn.

    At least they will have good manuals!

    'Deconstructed' is the word I have been trying to think of all evening.

    Parallax style is deconstructing a process to the simplest level.

    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • @Genetix,
    The BASIC Stamp was great because it was so easy to use and things such as the Arduino and Picaxe are based on it.
    My understanding of the Arduino story is that when they were looking around for a system to educate non-nerds about micro-controllers they looked at the Picaxe. As it did not have any open source tools they decided to create their own platform, the Arduino. As you say inspired by the Picaxe. It's kind of a sad lost opportunity, but history now anyway.

    @E_TexasTesla
    But even then we knew piracy was a bad thing.
    Did we? I recall that anything and everything was copied all the time. Going right back to Bill Gates' original BASIC for the Altair and such. Bill complained and whined about such copying but it looks to me that ultimately it helped his empire get off the ground.

    Luckily today there is little need to "pirate" anything. A lot of what we need is Free and Open Source.

    @microcontrolleruser
    My brain just won't take on the extra load of multi processor.
    There is no need to take on the extra load of multi-processor with the Propeller.

    If you are a beginner or casual Propeller user you don't even need to know it has more than one core. Want a UART? Then just drop a UART object into your program and use it from the one core running your main line. You don't need to know or care if that UART uses another core or many. Want PWM? Or SPI? or SD card interface? etc. Same story.
    I am maxed out learning assembler.
    If you are learning assembler the Propeller has the simplest, most regular, elegant assembly language I have ever seen. Especially since it is so well integrated with Spin. It's a joy. I advise dropping whatever you are learning and try the Propeller and PASM.
  • There are several Propeller emulators. Have a look at GEAR in GitHub and SpinSim here in the forum. Both run under Windows and emulate a Propeller (SpinSim also emulates the Spin instruction set). If you actually have a Propeller (with SD card, TV, PS/2 keyboard), you can run Sphinx which includes a compiler/assembler.
  • JonM wrote: »
    "It's a Trap!"
    ;)
  • microcontrolleruser,

    I haven't really delved into PASM much but if you use a BASIC Stamp then you can write in Spin. If you look at the video demos you will see that they use PASM for the core drivers but the application uses Spin.

    The Propeller can also use C and now there is the web-based BlockyProp which many schools are using. Both of these languages were developed at the request of educators. Take a look at the Learn site.
    http://learn.parallax.com/tutorials/propeller-c
    http://learn.parallax.com/tutorials/language/blocklyprop

    Heater,

    Where did you hear that the Picaxe was the origin of the Arduino?
    The story I've heard and I believe it's on the Arduino site is that the Arduino was developed as a BS2 alternative because they are very expensive in Europe.

    Mike,

    microcontrolleruser was asking about compilers on the Propeller 2.

  • Heater.Heater. Posts: 19,880
    edited September 25 Vote Up0Vote Down
    Genetix,

    I think you are right, I'm getting my wires crossed re: the Arduino and BS2. It's been a while since I read that story and I can't find it just now. I've never used or even seen either of them so it's all fuzzy to me.

    I do recall that being closed source was an issue for the Arduino guys.


  • Well we do have enough Propellor hardware here.

    We will give it another chance.

    Are you sure you can just code away and never think about multi processor?
    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • I might have to backtrack on that statement a tiny bit, but first:

    If you write your program in Spin you will almost certainly never need to know that the drivers and such libraries ("Objects" in the Spin world) you use are using other COGs internally.

    I believe the same can be said if you use C on the Propeller now a days. Although it is a long time since I checked the state of Propeller libraries in C.

    From Spin you can launch assembler code and entirely replace the Spin program running on a COG with PASM.

    Now the little backtrack:

    1) Often the Spin objects you use in your program, as found in the Object Exchange (OBEX) http://obex.parallax.com/, will use additional COGs internally. So it is possible that if you load your program up with too many of those you will run out of COGs. This has never happened to me.

    2) Generally one wants ones assembler code and the Spin code that started it running on different COGs. The Spin code does the main line of your program in one COG and the PASM code does the high speed stuff in another COG. The Spin and assembler COGs the communicate by sharing variables in the shared HUB RAM. This sounds scary but really it's dead easy.

    I would urge you not to give up the idea on account of my little backtrack. All this is easier to do than to describe!

  • microcontrollerusermicrocontrolleruser Posts: 556
    edited September 25 Vote Up0Vote Down

    Okay. We will get busy coding in Propellor.

    I don't like the sounds of that 'Object' stuff though.
    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • Think of objects as a special kind of library package. Many of the built-in objects work that way as well as many of the objects from the ObEx (object exchange). They have a variety of subroutines that you can call from your program and they take care of setting up (usually by calling "start") and closing out (by calling "stop") the various resources that they use (typically a cog and some hardware). Take a look at some of them. Often they implement devices that, in other microcontrollers, are implemented in hardware. There are UARTs, PS/2 keyboard interfaces, TV and VGA video drivers for graphics or text-only, SD card file systems, floating point libraries, servo drivers, PWM generators, etc.

  • Mike

    Libraries! Okay. I have calmed down now.

    Okay. We will dust off one of the Propellor boards and get with it.



    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
  • microcontrolleruser,

    I was a BS2 user and resisted the Propeller for a long time but now I love the Propeller because it can do things that the Stamp could never do and it's a lot cheaper too.

    Near the top of the program you will see a section labeled OBJ which stands for Objects and these are all the Objects that the program uses.
    The Parallax Serial Terminal is a commonly used Object which functions similar to DEBUG statements in PBASIC.
    If you look at the Parallax Serial Terminal Spin file you will see that most of the code is written in Spin but the main driver part of the program at the bottom is written in PASM. Most of the program is made up of PRI-vate or PUB-lic methods with only the Public methods being usable from your Spin program.

    If you look at the Propeller Education Text it has a whole chapter on Objects. (Chapter 6 on Page 83)
    https://www.parallax.com/sites/default/files/downloads/122-32305-PE-Kit-Labs-Fundamentals-Text-v1.2.pdf
    https://www.parallax.com/downloads/propeller-education-kit-labs-fundamentals-example-code

  • Let me revisit Stamp 1 and 2 for awhile.

    Get a running start at Propellor.

    JUNIOR ENGINEER

    AMATEUR ASSEMBLY PROGRAMMER
Sign In or Register to comment.