Forum Rule: Always post complete source code & details to reproduce any issue!
Page 2 of 2 FirstFirst 1 2
Results 26 to 31 of 31

Thread: TFTP Bootloader, update firmware over ethernet?

  1. #26
    Quote Originally Posted by cclavio View Post
    Wow guys, this is a great thread. Thank you all for your time an effort on creating a solution. My biggest interest is reprogramming the teensy 3.1 via bluetooth using the Arduino IDE. Unfortunately so much of what is discussed above is way over my head. I am a very novice programmer (trained in fine art rather than CS or MechE) and am just learning how deep this rabbit hole really goes. If there's anything I can do to support this project please let me know. I do know that if I could reprogram my teensies over bluetooth I would continue to buy more and more of them. This is a very valuable feature.

    Thanks again,
    Chris
    I too would like to load code into the Teensy via network (ethernet). The reason being that my teensy-based project is now 10 feet in the air inside an enclosure, two teensys which I communicate with via a wifi router that's also 10 feet in the air. So it's become fairly inconvenient...

    Since the teensy boot loader is apparently off limits and will remain off limits, I am thinking that perhaps it is possible to do this totally outside the boot loader.. by changing teensyduino to located the compiled sketch somewhere other than the regular entry point.. and locate the network loader at the normal entry point. Then upon boot the network loader could check for a new sketch and if available, load it in the (new) sketch location and jump execution there.

    Has anyone pursued this already? Is it a fatally flawed idea?
    Figure I should ask before I really get into it.

    Thanks

  2. #27
    Senior Member
    Join Date
    Jan 2015
    Location
    SF Bay Area
    Posts
    255
    my version (for arduinos only) https://github.com/d0ughb0y/NetLoad.
    Last edited by doughboy; 02-16-2015 at 10:31 PM.

  3. #28
    Senior Member
    Join Date
    Jun 2013
    Location
    So. Calif
    Posts
    2,828
    wouldn't a pair of $5 data radios be better than Ethernet, unless you already have ethernet for the project per se?
    I have over the air reprogramming for an AVR, but not Teensy. uTasker has some capability too, for the Teensy and others.

    Radios and protocols... I use the RFM69H radio at 125Kbps, 900MHz
    http://www.airspayce.com/mikem/arduino/RadioHead/
    radio hardware from: http://www.anarduino.com/details.jsp?pid=145
    PC server is a python program.

  4. #29
    Member
    Join Date
    Mar 2014
    Location
    Switzerland
    Posts
    84
    Hi All

    I have just completed connecting a Microchip ENC424J600 (http://www.microchip.com/wwwproducts...cts=ENC424J600) to the Teensy (via the WIZ820io & Micro SD Card Adaptor).
    This is a 10/100M Ethernet controller that communicates via SPI and has a factory programmed MAC address (which can be used or optionally overwritten). It costs about $2.60 and then needs an RJ45 socket with magnetics and a 25MHz crystal (although could potentially be driven from a clock from the processor). I used a Microchip PICtail evaluation board connected via the WIZ820io connector pins, whereby no WIZ820io was needed of course.

    The results are here:
    http://www.utasker.com/kinetis/TEENSY_3.1.html#LAN

    First of all I built a Web Server based boot loader for the Teensy (about 18k Flash is needed) but combined it with USB-MSD loading, USB-HID (KBOOT) and also UART 0 (KBOOT 57'600 Baud) to take up about 30k of Flash.

    Then I made an application configuration with internal TCP/IP stack including web server, FTP server, TELNET, SNTP, SNMPv1/v2, SMTP (for sending emails), NetBios, DNCP client - FTP and Web servers use the SD card (also USB-MSD can read and write it) to be able to load and serve large web server content. If there is not SD card present it will fall back to a small file system in internal Flash, which also works with FTP and the web server.

    There is a command line menu (shell) on Telnet, USB-CDC and a UART 0 (115200 Baud) and the code size is around 110k. RAM requirement is about 25k.

    There are details of the wiring if anyone would like to try the Teensy performing independent TCP/IP.

    The difference between the WIZ820io solution is that the Teensy runs all code and the HW is a little cheaper (although not hugely cheaper). Of course there is more code in the Teensy since it has the compete stack locally but there are advantages of being very flexible and independet from a stack in the HW; as well as having protocols that the WIZ820io doesn't include it is IPv6 capable (including 6in4 tunnelling to transvers non raw IPv6 networks) and allows multiple network operation (multiple IP addresses can be assigned so that the device can operate in multiple networks and perform bridging between them) plus VLAN.

    If I find time I will make a video to show it in operation.

    Regards

    Mark

  5. #30
    Junior Member
    Join Date
    Mar 2018
    Posts
    1
    Hi Mark,

    It`s been 3 days since I search how to update Teensy firmware over ethernet, and I must admit I`m getting nowhere... Actually I have use UP-board to upload Teensy firmware, but that`s mean assign new IP address on UP-board, and that`s not really good if I want to deploy hundred Teensy on the field. Not to mention UP-board cost and bandwidth allocation by using VNC Server...

    I have back and forth read uTasker websites, and found there some web server bootloader here:
    http://www.utasker.com/kinetis/TEENS...ID_MSD_WEB.hex

    ,download uTasker v1.4 on github websites:
    https://github.com/uTasker/uTasker-Kinetis

    and read:
    http://www.utasker.com/docs/uTasker/...rialLoader.PDF

    which only gives headache to me...

    So here is what I want. Let`s say I have an "blink.hex" on PC with IP 192.168.202.113. There is Teensy 3.2 connected with Wiznet WIZ550io with IP 192.168.202.250. I want to upload "blink.hex" from PC to Teensy using Ethernet Cable. Can you please tell me step-by-step how to do that?

    Please note that I`m more electrical-guys rather than networking-and-programming guru, so please kindly bare with me. Sorry for bad English. Thank you for your time and guidance.

    Papatonk

  6. #31
    Member
    Join Date
    Mar 2014
    Location
    Switzerland
    Posts
    84
    Hi

    The uTasker project has a solution for Kinetis parts with Ethernet or the Teensy with ENC424J600 (potentially over RNDIS on USB but I never tried it and it probably has no advantage over USB-MSD since it is short range via cable and not long range of Ethernet/Internet).

    It doesn't support with Wiznet WIZ550io which has its own TCP/IP stack and so would need to be worked out using this instead. Therefore I can't help here.

    Regards

    Mark

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •