Where is the edge firmware?

Home Forums TinyG TinyG Support Where is the edge firmware?

Tagged: 

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #5185
    tomking505
    Member

    Yet again, I am astonished that some necessity is missing from the TinyG documentation.

    The location of the edge firmware is not listed on the top level wiki pages: https://github.com/synthetos/TinyG/wiki

    The location of the edge firmware is not mentioned on the page that discusses the bootloader: https://github.com/synthetos/TinyG/wiki/TinyG-Boot-Loader

    The location of the edge firmware is not mentioned on the page that talks about programming the TinyG via the ISP header: https://github.com/synthetos/TinyG/wiki/Programming-TinyG-with-the-Atmel-AVRISP-Mkii-Programmer

    And amazingly, there is no link to the edge firmware at https://raw.github.com/synthetos/TinyG/master/firmware/tinyg/default/ page devoted to firmware. This is particularly hard to understand, since I am told the edge version fixes long-known bugs that are not addressed in the master version.

    I was also unable to locate the edge firmware by typing “edge firmware” in the Synthetos search box.

    I was also unable to locate the edge firmware by googling “tinyg edge firmware location”.

    There should be a prominent link on all these wiki pages. I don’t understand how TinyG could get to version 8 without this kind of basic documentation.

    • This topic was modified 10 years, 10 months ago by tomking505. Reason: masochism
    #5189
    cmcgrath5035
    Moderator

    tomking505
    Is this what you are looking for?

    ?

    BTW, to get there, I opened the tinyg.h master URL you posted above, ten navigated upstream until I could switch to the edge branch.

    If it works well for you, please report on what version it reports as and what you see as fixed.

    • This reply was modified 10 years, 10 months ago by cmcgrath5035.
    #5198
    tomking505
    Member

    Yes, that is what I need. Thank you for posting it.

    I attempted to load it on my TinyG using AVRdude, and it still blows up, just like the other version I found.

    Can someone explain why this would be so hard to find, and why, if it works better than the master version, why isn’t it the master version?

    To help other poor souls who bought a TinyG thinking they would find basic info like the location of the firmware, I made this page, and linked it to the main wiki page. It is incomplete, because I’m not a developer, and the developers didn’t write it.

    https://github.com/synthetos/TinyG/wiki/firmware

    • This reply was modified 10 years, 10 months ago by tomking505.
    #5321

    When I click the links in this thread, I can only see a makefile, no firmware .hex files. I’d love to try out the edge branch’s improvements. Is my best bet putting together an environment and building it myself?

    #5322

    Ok, I was able to build the edge firmware. I’m on Mac OS X, so it was a little bit of an adventure, I should share how I did it. Basic steps I followed:

    0.) Already had XCode and all the Apple dev tools pre-installed

    1.) Signed up for Github (been meaning to do this!)

    2.) Installed and configured GitHub for Mac (http://mac.github.com)

    3.) Cloned tinyg GIT repo using the “Clone in Desktop” link

    4.) Switched to edge branch using GitHub for Mac’s nice GUI

    5.) Installed “MacPorts” (http://www.macports.org/install.php)
    Used MacPorts to get the relevant AVR tools:
    sudo port install avr-libc
    sudo port install avrdude

    6.) Installed the Mac OS X USB driver (http://www.ftdichip.com/Drivers/VCP.htm)

    7.) Edited the tinyg makefile to work with the MacPorts version of avr-bintools

    In the file …/TinyG/firmware/tinyg/default/Makefile

    find
    @avr-size -C –mcu=${MCU} ${TARGET}
    replace with
    @avr-size -A ${TARGET}

    8.) Navigate to …/TinyG/firmware/tinyg/default/ and run the make command

    9.) Success! The make process completes! I get a tinyg.hex that looks just like the master branch’s tinyg.hex file!

    :100000000C94A7410C94C8410C94C28E0C94C84126
    :100010000C94C8410C94C8410C94C8410C94C8413C
    :100020000C94C8410C94C8410C94C8410C943B8B6F
    :100030000C94C8410C94C8410C9487830C94C8411B
    etc…

    Ok, so I’ve got a firmware file. The only step above that looks dicey to me is 7. I have absolutely no idea what I’m doing. My avr-size tool simply lacked the -C option and I don’t know what –mcu=${MCU} does. I assume something important. Googling around I saw the suggestion to substitute the -A command, so I did.

    Throwing caution to the wind, I decide to try and flash my board with this file. I connect my board, fine the USB device name, and follow the wiki instructions. I hit the reset button on my board and execute the following command.

    $ avrdude -p x192a3 -c avr109 -b 115200 -P /dev/tty.usbserial-DA00CQ4M -U flash:w:tinyg.hex

    Connecting to programmer: .
    Found programmer: Id = “XBoot++”; type = S
    Software Version = 1.7; No Hardware Version given.
    Programmer supports auto addr increment.
    Programmer supports buffered memory access with buffersize=512 bytes.

    Programmer supports the following devices:
    Device code: 0x7b

    avrdude: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.01s

    avrdude: Device signature = 0x1e9744
    avrdude: NOTE: Programmer supports page erase for Xmega devices.
    Each page will be erased before programming it, but no chip erase is performed.
    To disable page erases, specify the -D option; for a chip-erase, use the -e option.
    avrdude: reading input file “tinyg.hex”
    avrdude: input file tinyg.hex auto detected as Intel Hex
    avrdude: writing flash (109382 bytes):

    Writing | | 0% 0.00s ***failed;
    ***failed;
    ***failed;
    ***failed;
    ***failed;
    (The failed message repeats over 109,000 times. I will spare you.)
    Writing | ################################################## | 100% 0.44s

    avrdude: 109382 bytes of flash written
    avrdude: verifying flash memory against tinyg.hex:
    avrdude: load data flash data from input file tinyg.hex:
    avrdude: input file tinyg.hex auto detected as Intel Hex
    avrdude: input file tinyg.hex contains 109382 bytes
    avrdude: reading on-chip flash data:

    Reading | ################################################## | 100% 16.49s

    avrdude: verifying …
    avrdude: verification error, first mismatch at byte 0x0002
    0x14 != 0xa7
    avrdude: verification error; content mismatch

    avrdude done. Thank you.

    So the flashing fails but does so especially gracefully. My board is still functional. Thoughts?

    #5323
    alden
    Member

    We are working on a page for all the hexes. Please be patient.

    As far as the verification error, we have seen that from AVRdude on occasion, but it does necessarily not signify that a failure has occurred. If the firmware returns the startup string and drives a motor then it has “taken”.

    Tom – the reason edge is not master (yet) is that it has not been fully tested. We make it available to people so they may try it out but people should know that it is not the “official” version yet. It may have bugs in it that we do not want as the main release.

    #5335

    Alright, an official page with builds sounds great.

    For the record, the firmware update did not just fail to verify. It failed to take at all.

    [fb] firmware build 380.08
    [fv] firmware version 0.96
    [hv] hardware version 8.00

    Any idea why this would be?

    #5339
    Riley
    Keymaster

    Zach,

    That is a new one. I suspect that there is something going wrong on your build process. However in the spirit of getting you and tom cutting on edge I am going to post a link to the “working” edge. I say “working” because it is EDGE! So this is going to be a release but for now its still being tested. So warnings and all that aside try this link out.

    I have ZIPPED it so there should be NO ISSUES with windows vs linux vs OSX.

    So try this.
    https://www.dropbox.com/sh/jyegsvudnhp9w0o/qbvJCmpTis

    Also note that we are working (as Alden said) on getting the bin files put up on a more obvious page.

    If you find bugs please open “issues” on github here:
    https://github.com/synthetos/TinyG/issues

    Thanks and let us know how it goes!
    ril3y

    #5351
    Riley
    Keymaster

    Anyone give it a go?

    #5360
    grim
    Member

    I tried it. The hex file worked and flashed to my tinyg (had to rename the file to tinyg.hex to get avrdude to work). It shows up as fw version 412.01 eventhough the file is named 412.02. It doesn’t play nice with tgfx though, but maybe that’s expected since it’s an edge build.

    • This reply was modified 10 years, 9 months ago by grim.
    #5378
    alden
    Member

    OK. We have a new downloads page up that should help. try it out here:

    http://synthetos.github.io/

    +grim We still need to chase down your tgFX issue, though. The build is actually 412.01, and it should work with tgFX. We’ll try thiis out again to make sure there’s not something we missed.

    #5386
    grim
    Member

    The new page looks great. I haven’t tried flashing those hex files yet but they are certainly easier to download now. And it’s much more clear now what the release status is. Thanks!

    As far as my tgfx issue, I flashed 380.08 back to my tinyg but I’ll put 412.01 back on and see if I can duplicate my issues and then provide a thorough description. It’s possible it’s something I’m doing wrong as I’m still starting out with this.

    • This reply was modified 10 years, 9 months ago by grim.
    #5389
    Riley
    Keymaster

    Grim,

    Thanks! As far as your tgfx issues go, lets see what I can do. I need more info on what is going on.

    Edge works fine for in tgFX. I am however not using the “exe or app” version but directly out of github and building via netbeans.

    Would you give me the run down? What OS, tgfx version and firmware (edge right?) and what exactly is going on?

    Perhaps we should open a new post.

    ril3y

Viewing 13 posts - 1 through 13 (of 13 total)
  • You must be logged in to reply to this topic.