Particle Desktop IDE - Compilation Results?


#1

I am new to the group and have been reading quite a bit of the forums. I bought myself a handful of Photons and am ready to play. A few tests with temperature sensing, webhooks and LED and OLED displays have boosted my confidence I will be able to make this work for me.

I am using the Particle Desktop IDE and would like to see the results of the compilation including things like lines compiled and memory allocation, and of course the error lists. The more verbose the compiler can be the better. I have no problem that the code is uploaded to compile and flashed remotely, I would just like to see the results to determine what I can do to better my code.

I switched to the local IDE instead of the web one after having some issues in the beginning which I cannot remember precisely. Does it have compile information that the local IDE does not? I would be willing to switch back to the web based IDE if it does and give it a try again.

I am looking forward to creating some interesting things with Particle and sharing whatever knowledge I can to support the community. I promise to search and search before I ask dumb questions!


#2

Particle Web IDE : firmware memory use

Upon build errors, hitting “Show RAW” will show the compilation details.

To get verbose compiler output I would have a look at the Particle local toolchain or po-utils.

The Particle CLI will not give you verbose compiler output, unless there is a problem.

My preference would be to try and use the local toolchain.


#3

Thanks for the response. I reviewed all of those options, and I believe they are above my skill set at this time. :slight_smile:

I see the web build platform shows this level of information:
Output of arm-none-eabi-size:

text data bss dec hex
5212 12 1452 6676 1

In a nutshell:
Flash used 5224 / 110592 4.7 %
RAM used 1464 / 20480 7.1 %

I was hoping the local IDE had the same or better or may have created temporary files during the process I could view.

In the local project folder I see a file "photon_(ver)_(#########).bin is created which is some indication as to size to compare. I was curious how much memory I could save by editing libraries to be more specific to my hardware and software.

I guess I can’t have Turbo Pascal for Particle Photon, yet. Thanks again; I will keep looking at the other tools as I progress.


#4

Hi @Norsworthy!

I am @nrobinson2000, the creator of po-util.

Po-util is a tool I’ve been maintaining for over a year that provides a great local particle experience on macOS and Linux.

It installs all of the required tools and dependencies for you (including particle-cli and dfu-util), and it has a sane project structure. It uses the local toolchain to build your firmware for any of particle’s devices.

It has simple commands and can even be used from within Atom (the IDE Particle Dev is based on). It has many more features, including library management and tab completion.

Po-util can be installed by running this command in your terminal:

bash <(curl -sL https://master.po-util.com/install)

Feel free to join the po-util room on gitter, or to check out the “manual” I wrote on Hackster.

It is my goal to get you comfortable with po-util.

UPDATE:
Po-util does display the information you are looking for when it builds:

   text	   data	    bss	    dec	    hex	filename
   3244	      8	   1360	   4612	   1204	/home/nrobinson/temp/project/bin/firmware.elf

This is an example for blank firmware with just setup() and loop().
Text is equivalent to Flash used and bss is equivalent to RAM used.


#5

Thanks! I gave this a brief look and will revisit it after working with the PC environment for awhile. I have an old Mac I could use or would set up a new cheap linux box.