Skip to content

Conversation

@satishgn
Copy link
Contributor

@satishgn satishgn commented Aug 1, 2014

Dependencies:
core-common-lib branch : feature/flasher_additions
core-communication-lib branch : feature/flasher_additions
server ota code needs to be updated to get the save files on external flash feature working.

@satishgn
Copy link
Contributor Author

satishgn commented Sep 2, 2014

Merged in latest master changes.

Dependencies:
particle-iot-archived/core-common-lib#32
particle-iot-archived/core-communication-lib#22

@m-mcgowan
Copy link
Contributor

Can you find out how much extra flash/RAM is taken by the additional code? I feel that we should try to keep the firmware as lean as possible, and move as much as possible to an external library.

Using weak functions, it's possible to have hooks in the firmware that are either not defined (NULL) or defined externally by a library. For example, making Serial_Flash_Update() weak, and defining it in a library we could save some space. (And also gives a quick way to see how much flash is saved.)

I'm away from the computer at present, but I can try this when I get home, if you don't get to it first.

@kennethlimcp
Copy link
Contributor

@satishgn, is there some example that i can play around with that demonstrates how this can be used?

@satishgn
Copy link
Contributor Author

@kennethlimcp , you can check this doc PR : particle-iot/docs@410c270
for how to flash a new firmware via Serial using the teraterm application. Press "f" command when in Smart config mode to start the flash update process.
The underlying example code is this that does the actual flashing : bool Serial_Flash_Update(Stream *serialObj, uint32_t sFlashAddress) in spark_flasher_ymodem.cpp

@kennethlimcp
Copy link
Contributor

@satishgn opps thanks! i totally forgotten that the docs have been merged. I'm going to test it (hopefully) this weekend

@satishgn
Copy link
Contributor Author

If you check the ongoing feature/hal branch, we have taken a different path by adding the YModem code to libraries/ directory so the ymodem serial flashing won't be enabled till the user includes this header "Ymodem\Ymodem.h" in application.cpp

@m-mcgowan
Copy link
Contributor

Shall we close this, now that the current progress is in feature/hal?

@towynlin
Copy link
Contributor

👍 to closing

@m-mcgowan m-mcgowan closed this Apr 5, 2015
@m-mcgowan m-mcgowan deleted the feature/flasher_additions branch April 22, 2015 13:29
m-mcgowan pushed a commit that referenced this pull request Oct 30, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants