Shop OBEX P1 Docs P2 Docs Learn Events
Downloader? — Parallax Forums

Downloader?

JonnyMacJonnyMac Posts: 9,197
edited 2012-02-25 09:22 in Propeller 1
Perhaps I missed it somewhere.... Is there a simple downloader utility for end-user (i.e., non-programmer customers) to update Propeller-based products in the field? Way back when there was such a beast for the BASIC Stamp, I had hoped there would also be one for the Propeller. EFX-TEK has a bunch of Propeller based products being released this year and we'd like to be able to provide updates to our customers without having them install the full Propeller Tool.

In an ideal world such an application would have variants for Windows, Mac, and Linux.

Comments

  • Duane DegnDuane Degn Posts: 10,588
    edited 2012-02-24 11:33
    I'm pretty sure the closest thing to a downloader is Propellent.

    The S2 GUI source has this in it's "Scribbler.pm" file.
    $stampw = $self->init('loader');
     until ((lc $stampw) =~ m/[B]propellent.exe[/B]/ && (-e $stampw)) {
      $stampw = $self->dialog(
       -text => 'Please help me find Propellent, "Propellent.exe"',
       -explore => '/Program Files/Parallax Inc',
       -buttons => ['okay', 'cancel']
      );
    


    I believe the Propeller Tool (a stripped down version without the help files) is only started when one wants to view the Spin file generated by the GUI.

    IIRC Propellent is Windows only.
  • SRLMSRLM Posts: 5,045
    edited 2012-02-24 11:40
    bstl and bstc can download code to a Propeller, and they're cross platform command line utilities.

    http://www.fnarfbargle.com/bst.html
  • max72max72 Posts: 1,155
    edited 2012-02-24 12:15
    http://forums.parallax.com/showthread.php?104304-PropLoader-Propeller-Firmware-Loader
    You need to install FTDI drivers anyway.

    or the SDloader routines if you can upgrade from SD.
    In this case you simply have to copy the file to the SD.
    http://obex.parallax.com/objects/620/
    it now works also with fat 32

    Massimo
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 13:05
    Thanks, all. As most of my customers are Windows based, I will work with Praxis's PropLoader until a cross-platform tool emerges. As I have focused my efforts on embedded programming my PC programming skills are very rusty. Still, I recently purchased a cross-platform compiler (Q7 BASIC) and will try to jump back in the game.
  • pedwardpedward Posts: 1,642
    edited 2012-02-24 16:31
    Don't most of your products have an SD card slot? I'd just have it do in-situ updates from the SD card. Customer needs only download a file to the root directory, it loads, deletes the file, then reboots. I think there's code to do this already, specifically Kye has code to run programs from SD card, so you could put basic firmware in the device and have it load and run the program from SD on boot, then updates are simply a matter of loading a new version on the SD card.
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 17:05
    Don't most of your products have an SD card slot?

    No. If the products in question had an SD card socket I would not have started this thread.
    Customer needs only download a file to the root directory, it loads, deletes the file, then reboots.

    Yes, I know -- I coded this feature into the AP-16+ a long time ago. That's part of the problem for me: our customers love the easy updates (we're very responsive when new features are requested). The new designs don't normally require and SD card, nor do we have enough IO to support one so I'm looking for the next best option.
  • pedwardpedward Posts: 1,642
    edited 2012-02-24 17:22
    Forgive me, your website only has 1 Prop based product on it, and it has an SD card socket.

    BTW, your address is listed as Rocklin for your v1.5 firmware upgrades, is this correct?
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 17:37
    JonnyMac

    With something like the item shown below and the programming offered in this thread, this could easily be accomplished.
    http://forums.parallax.com/showthread.php?133979-Project-In-Progress-New-Serial-Terminal-Taking-Suggestions

    Simply select the proper spin file from a file dialog box and click okay to load it into the prop. Of course the DB9 connector could be swapped out to any preferred connecting device.

    Bruce
    1024 x 768 - 91K
    1024 x 768 - 89K
    1024 x 768 - 96K
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 18:12
    My customers already have a PC so I'm going to stick with that option.
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 18:20
    JonnyMac

    Are the Propellers always going to be connected to the PC? If so, have you considered an autoupdater?

    Bruce
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 18:23
    Forgive me, your website only has 1 Prop based product on it, and it has an SD card socket.

    For now; that is changing shorty. I have one PCB on my desk that I'm doing final coding for, another at the fab house (that will benefit from code I'm writing for the first), and two others that are still in schematic design. We also do a lot of Propeller-based work for clients and they have requested a mechanism for allowing their end users to update in field (again, without having that customer install the Propeller Tool).
    BTW, your address is listed as Rocklin for your v1.5 firmware upgrades, is this correct?

    Not sure where you're seeing that; our main web site and store web site both have our main office Knoxville address. If you see Rocklin on something we control, please point me to it and I'll fix that.

    The latest offical release of the AP-16+ is 1.72 and can be found on the product page.
    -- http://www.efx-tek.com/topics/ap-16.html

    Note: there is a 1.8 beta in our forums; I am folding those features and a rewrite of the audio driver into v2.0 that we will release as soon as I get through these new products.
  • Roy ElthamRoy Eltham Posts: 3,000
    edited 2012-02-24 18:28
    JonnyMac,
    Assuming they have appropriate FTDI drivers installed, then you could wrap the propeller-load.exe (part of the propgcc project) in a batch file to do the update(s). It should work on PC, Mac, and Linux.
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 18:31
    Are the Propellers always going to be connected to the PC?

    No, but our customers are programming other boards to "talk" to these, or may "hack" these products to do custom things with them. The point is that they have a PC so if we add new features they can get them into the product (there is a connector on our boards for a PropPlug).

    Attached is a picture of the first one to be released, the HC-8+. It's a general-purpose controller with eight TTL inputs and eight high current outputs. It comes from us with coding that lets it act as a serial slave using TTL serial or RS-485. Yesterday I finished updates to the PWM and fade-manager cogs so that our customer (when in TTL serial mode) can tell the unit to do multiple simultaneous fades using specific timing. In DMX mode it's a simple slave; on power up it will configure itself to have a combination of dimmer and servo channels. Disneyland used an early HC-8+ in the Haunted Mansion last season as part of the gingerbread cake in the dining room. Another customer in the mid west has used it in a network gaming system. We're finally through the production start-up woes and will start selling it in a few weeks ($130).
    1024 x 768 - 132K
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 18:32
    Roy

    Is the propeller-load.exe currently available for download? And can it be executed from the command line with parameters?

    Bruce
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 18:39
    JonnyMac

    If the program that Roy mentioned is available as open source, you could modify this program to automatically get the updates from your website. You could have the program monitor for a connection of one of your boards and monitor updates that are available on your website. When one of your devices is detected, you could open a dialog which informs the user that an update is available and ask them if they wish to update. If they say yes, then download and install.

    Bruce
  • pedwardpedward Posts: 1,642
    edited 2012-02-24 18:43
    JonnyMac wrote: »
    For now; that is changing shorty. I have one PCB on my desk that I'm doing final coding for, another at the fab house (that will benefit from code I'm writing for the first), and two others that are still in schematic design. We also do a lot of Propeller-based work for clients and they have requested a mechanism for allowing their end users to update in field (again, without having that customer install the Propeller Tool).



    Not sure where you're seeing that; our main web site and store web site both have our main office Knoxville address. If you see Rocklin on something we control, please point me to it and I'll fix that.

    The latest offical release of the AP-16+ is 1.72 and can be found on the product page.
    -- http://www.efx-tek.com/topics/ap-16.html

    Note: there is a 1.8 beta in our forums; I am folding those features and a rewrite of the audio driver into v2.0 that we will release as soon as I get through these new products.
    http://www.efx-tek.com/php/store/index.php?main_page=product_info&cPath=7&products_id=41
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 18:56
    [JamieHyneman]Well there's your problem! [/JamieHyneman]

    That product is long out of stock (thanks to Disneyland! -- they're used in Pixie Hollow with custom code) and that page should have been removed. I'll do it. Thanks for pointing that out.
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-24 18:59
    idbruce wrote: »
    JonnyMac

    If the program that Roy mentioned is available as open source, you could modify this program to automatically get the updates from your website. You could have the program monitor for a connection of one of your boards and monitor updates that are available on your website. When one of your devices is detected, you could open a dialog which informs the user that an update is available and ask them if they wish to update. If they say yes, then download and install.

    Bruce

    Uh... no; this is taking a bazooka to a sling-shot fight! ;) I actually marked this thread as solved several posts ago. Most of my customers are Windows users so they''ll be fine; perhaps a cross platform version of Praxis's loader will come around. I'd like to try, but have a lot of PC programming rust to knock down first.
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 19:40
    JonnyMac

    I know you have marked this as solved, but here is a suggestion according to my understanding of the documentation.

    If you have an image file that you wish to have downloaded to a propeller chip, the only file (application) that should be needed is Propellent.exe", which is a command line based program. Your customer should only need to input the proper parameters and the rest should be history. I have attached the necessary file for you and the executable is part of Propellent-v1.3, which also includes the PDF that I have attached. Look under "Propellent Executable Command-Line Options" and the very first "Syntax Definition". Should be a piece of cake. And if you want to personalize for your company, simply create a simple company based executable that executes the Propellent.exe with the proper paramenters. Pretty simple stuff.

    Bruce
  • idbruceidbruce Posts: 6,197
    edited 2012-02-24 19:54
    And as a gesture of goodwill and in appreciation for the help that you have given me, I would be willing to create a simple personalized application for your company that would allow a user to select an eeprom file, and execute it using propellent.exe.

    Bruce
  • JonnyMacJonnyMac Posts: 9,197
    edited 2012-02-25 09:22
    Thanks, Bruce, but there's no need to recreate what already exists (i.e., a Windows downloader). And I do have a cross-platform compiler that I need to start using, this gives me a project to work with.
Sign In or Register to comment.