Hi,
OK so my earlier enthusiasm for 0.4.9 may have been a tad too soon :-((.
I have a Photon and programmed it up with 0.4.9. Actually myself and my client have a few.
We can program up with code built for 0.4.7 and it runs OK. Much dicking around with updates followed by breathing magenta issues though. Not quite sure what I did to work around this
We have a version of the same code - with a few changes, and this builds in Atom Dev, and uploads just fine. Runs works etc. etc.
So - build the bin again using the CLI, try to DFU this code in and we get -
Error writing firmware…CRC is invalid, use --force to override
So add --force (BEFORE --usb!!) and it says that it has worked.
The photon reboots then sits there breathing magenta and NOT running my app (I use Serial1 for debug), and its printing nothing.
Press reset - reboots, connected and breathes magenta - still no serial output.
Run FLASH from Dev code downloads, starts up and runs just fine :-O.
SO - in Dev just compile (No flash) so that we get a bin file (after flash its lost!!). Then load this using DFU and it works perfectly.
Rebuild same code using CLI and the bin AGAIN fails CRC.
Compare the 3 bin files and they are completely different
Good one is 32396 bytes built 18:35
First CLI is 18154 bytes built 17:46
Last CLI is 26708 bytes built 18:38
Might I be so bold as to suggest that the CLI compiler is broken ???.
The following is the CLI output from the build
Memory use:
text data bss dec hex filename
32204 192 21416 53812 d234 /spark/compile_service/shared/workspace/6_platform_6_24_2/firmware/afc99afb14440f36ebae5929c12940971cc802759321ffdf290ad2a03a30/afc99afb14440f36ebae5929c12940971cc802759321ffdf290ad2a03a30.elf
grabbing binary from: https://api.particle.io/v1/binaries/56a90eb956dd1e6c117cd37c
Compile succeeded.
Saved firmware to: E:\Particle\Projects\HomeController\HC_060a.bin
So - the DFU reporting crc is bad should NOT be overridden with --force - as it is quite correct - the crc is bad because the file grabbed is broken :-O.
Hope someone can understand this issue and fix it please ;-))
I use Dev to create and test code - then use CLI to make a clean build to send to my client - as the CLI is (used to be) the only way to find warnings and some error details. When CLI says its clean - I used to trust it :-O.
NB If a perticle dev wants my code I am willing to send it by private email/dropbox etc. - as it actually belongs to my client. It IS now quite complex though…
Edited - it MIGHT of course simply be the CLI - as I also updated that yesterday to the latest - I WAS using 1.8.12 and am now using 1.9.3.
Best Regards
Graham