ImpulseAdventure / GUIslice-Builder

Cross-platform drag & drop GUI builder for GUIslice
Other
166 stars 35 forks source link

Add PlatformIO Code Generation Support #117

Closed SunboX closed 2 years ago

SunboX commented 3 years ago

Please add a possibility to export a PlatformIO project / Code instead of an Arduino *.ino

I know, I can convert it. But it would be more easy if the platformio.ini file is already populated with all settings and libs and the code is already split up how needed.

Pconti31 commented 3 years ago

@SunboX This is a community project. If you are willing to do the work I'm willing to help. If you are technical enough to do a fork, make the changes, and do a pull request I'm happy to look it over and if it's OK I'll merge it.

If you are not up to that look inside GUIsliceBuilder/templates and examine c.t, ino2.t and determine if you can come up with a template for PlatformIO. If so, create it or them and zip it up for me along with including a converted existing Builder example (I would suggest Txt Button) to a PlatformIO project and any notes or tips you think would be helpful.

Finally, be willing to test a Builder prototype for me.

ImpulseAdventure commented 3 years ago

Hi @SunboX -- I have begun to look into what's involved in updating the GUIslice library to work more seamlessly within the PlatformIO environment. In particular, I was thinking that I would create a monolithic platformio.ini file that includes a number of the supported display/touch driver combinations (as opposed to user edits of the GUIslice_config.h).

With respect to your particular request, would the above address what you require? Or is there more to it that I should be considering?

thanks!

ImpulseAdventure commented 3 years ago

Hi @SunboX — I have now created a first pass at incorporating native support for PlatformIO in the primary GUIslice repository. If you have an opportunity to try out the latest with platformio.ini from GitHub (soon to be released as v0.16), I would be interested in any feedback.

For the moment, I have integrated a number of example environments to select from (as well as a custom env to support full config from within the ini file). I intend to get input from the PIO community forum to determine if other approaches would better leverage the flexibility of the PIO environments. If it looks like I am headed in the right direction, I intend to add more example environments.

Any input from PlatformIO users would be greatly appreciated so that I can make the integration as seamless as possible.

Thanks!

DerZwergGimli commented 3 years ago

Hey @ImpulseAdventure, I'm using platformIO on Linux and a Teensy 3.6 here is my config file with a ILI9341_T3 and 4-Wire-Touch.


[env:teensy36]
platform = teensy
board = teensy36
framework = arduino
monitor_speed = 115200
lib_ldf_mode = chain+

lib_deps = 
   ;GUIslice (is downloaded into my project folder for easy-editing the "GUISlice_config.h")
   ILI9341_t3  (is also downloaded into my project folder for editing)
   Adafruit BusIO
   Wire

There was also no "teensy-adagfx-ili9341_t3-simple.h" in the "configs" Folder.

Pconti31 commented 2 years ago

fixed in release 17,b12