hisun
New Member
Posts: 33
|
Post by hisun on Feb 28, 2017 15:17:29 GMT
Hello, i'm looking for a bootloader for the ShieldBuddy and ethernet (WS5100) chipset?
I found a bootloader for the Arduino Mega with WIZnet ethernet shield.
With it it's possible to upload sketches via TFTP when the Mega is rebooting.
Looking for something similar for ShieldBuddy/WS5100.
Does somebody has an idea? Thanks for response :-)
|
|
|
Post by mjb on Feb 28, 2017 16:19:08 GMT
Hi, It would be possible to reprogram the program FLASH in the TC275 from a sketch that access the WS5100. You would need the functions we use to program the DFLASH in the EEPROM driver.
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 1, 2017 19:58:49 GMT
could you please describe which functions I need to use and how. Can I flash the hex file directly or must it be converted to a binary file?
|
|
|
Post by Admin on Mar 3, 2017 11:59:19 GMT
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 3, 2017 14:01:33 GMT
|
|
|
Post by Admin on Mar 10, 2017 17:51:49 GMT
We have this working at a basic level but it will take a while to make it releasable!
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 13, 2017 17:42:50 GMT
Thanks you for your update.
|
|
|
Post by Admin on Mar 13, 2017 18:50:43 GMT
We may need dome help here! We are finding that after 469 512 blocks are received, the packet size suddenly jumps to 0xa7ff. This causes the transfer to fail. There is no obvious reason for this. We are not experts in the W5100 so does anyone out there have idea what might be happening?
Thanks!
|
|
|
Post by Admin on Mar 20, 2017 16:19:36 GMT
The latest release now contains a method of programming the ShieldBuddy via an Ethernet shield. It is not a true bootloader but it allows programs to receive new versions of themselves via Ethernet and TFTP.
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 22, 2017 15:42:38 GMT
Hallo, we have installed new ShieldBuddyIDE on Arduino IDE 1.6.13, found BootLoaderTest sketch in 275.TC275SketchesLibrary, compiled and uploaded to our board M-DUINO PLC ARDUINO 21 I/OS But tftp client does not work, and we could not ping the IP adress on the board, set before in net.h. As pins for SPI we set 52, 50, 51, 53 We have also changed two lines in w5100.h
//#define ETHERNET_SHIELD_SPI_CS 10 #define ETHERNET_SHIELD_SPI_CS BOARD_SOFT_SPI_SS2 The first line, number 15, is now a comment and the line 16 is no comment
The example sketch EthernetSketch works correctly with these settings.
What should we do in order to get the BootLoaderSketch running on our ShieldBuddy board ?
Thank you in advance
|
|
|
Post by Admin on Mar 22, 2017 16:13:11 GMT
There was a problem with the original v1.33 add-in installer which meant that the SPI pins could not be altered. TO check if you are affected by this, look in "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\system\libaurix\source" and see if "net.cpp" is there. If not please download the add-in installer again.
The settings in W5100.h may be correct and the Ethernet sketch will work. However the Ethernet bootloader uses a completely separate W5100 driver and that is in "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\system\libaurix\source\net.cpp". Unless this file is present, editing "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\system\libaurix\include\net.h" has no effect.
Net.h:
/*** Bit Bashed SPI for TFTP Download ***/
/* Pin definitions for ICP SPI port */ #define SCK_pin 62 #define MISO_pin 61 #define MOSI_pin 63 #define TFTP_SS 10
/* Pin definitions for P406 SPI port with default slave select */ /*#define SCK_pin 52 #define MISO_pin 50 #define MOSI_pin 51 #define TFTP_SS 10*/
/* Pin definitions for P406 SPI port with pin53 slave select (MDUINO-21) */ /*#define SCK_pin 52 #define MISO_pin 50 #define MOSI_pin 51 #define TFTP_SS 53*/
We have tested the Ethernet bootloader using the M-DUINO21 Ethernet pins and it is OK.
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 24, 2017 9:57:57 GMT
Hallo, thank you for the answer. There was "net.cpp" in "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\system\libaurix\source\net.cpp" on my computer. I made Arduino IDE update to version 1.8.2 and reinstalled ShieldbuddyMulticoreIDE. Results were the same as before. I tried with all three settings for SPI pins.
Then I have renamed the file aurduinoupload.hex in c:\HIghtec, deleted net.cpp and recompiled the project. The renamed hex file and the new aurduinoupload.hex file were identical, checked with "fc /B ..." It means, that it does not matter in my environment, whether the file "net.cpp" is present or not, does it ?
Thank you in advance for your help
|
|
|
Post by Admin on Mar 24, 2017 10:17:19 GMT
I've just tested it again in the MDUINO pin configuration and it works OK here. You have 10 seconds from pressing the reset button to start the TFTP transfer otherwise the loader exits. Have you changed the IP addresses to suit your network in net.h? You should be able to ping the ShieldBuddy as soon as the user LED starts flashing. You should be able to just run C:\Hitex\AURduinoIDE\Tools\SendAppTftp.bat and it will transfer the last program built in the Arduino IDE to the ShieldBuddy.
I do not understand why editing net.h makes no difference. I will do some more tests....
|
|
|
Post by Admin on Mar 24, 2017 11:45:29 GMT
OK, please copy "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\system\libaurix\source\net.cpp" to "C:\Program Files (x86)\Arduino\hardware\aurduino\aurix\variants\tc275\net.cpp".
That will fix it!
|
|
hisun
New Member
Posts: 33
|
Post by hisun on Mar 24, 2017 16:12:00 GMT
Hallo, thank you. But it did not help. Results as before. Perhaps it would help, when I had a correct .hex file with Bootloader and would upload it to and start on my board ? Then we could compare... What do you think about it ? Could you send me a .hex file and an instruction for upload ?
Thank you in advance
|
|