# Which library? for simple GUI programming, need to use it with Arduino

**URL:** https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299
**Category:** Electronics (Arduino, etc.)
**Created:** [November 7, 2019, 11:21am UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299 "2019-11-07T11:21:51Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![jk2019](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@jk2019](https://discourse.processing.org/u/jk2019)
#### Post date: [November 7, 2019, 11:21am UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/1 "2019-11-07T11:21:51Z")

</div>

Hi,

Could someone please inform which library should I use?

Need - want to create a simple GUI for the data captured from Arduino. Want to reflect changes in the data, and may also display data. Former alone is also enough for now. Required GUI example - split the display in n rectangular parts, change any single part as may be required, based on data capture. Change example - display the data in that part, or change background color, or change text color(for some default text), any other advice is also welcome.

Thanks and wishes.

---

<div class="post-metadata">

### Author: ![kll](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kll/32/964_2.png) [@kll](https://discourse.processing.org/u/kll)
#### Post date: [November 7, 2019, 12:10pm UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/2 "2019-11-07T12:10:42Z")

</div>

your description sounds very theoretical,

also the approach with a grid part would be better understandable  
if we know what you want to do / what data you have / need to visualize.  
but rectangles with changing text and color… in grid form are  
easy  
up to rect buttons:  
means rects show data, and  
with a button function, on click can show more , details…

* * *

actually there might be no need to use a library to show some data,

- first get the arduino processing communication going
- design a good way of data transport, i love text lines what look like CVS

> 1,1023,1023,

- store the data to int or float arrays
- `println(data);` it to console
- print it to canvas with `text(data,x,y);`
- organize it as array of text lines…

for graphic elements like GRAPH can start with easy line graphs from the data array  
but also could later  
use meter  
[GitHub - BillKujawa/meter: Display values in an analog style meter.](https://github.com/BillKujawa/meter) ,  
or grafica lib…  
[Grafica library - jagracar](https://jagracar.com/grafica.php) ,

here is a short beginner info  
[http://kll.engineering-news.org/kllfusion01/articles.php?article\_id=92#example3](http://kll.engineering-news.org/kllfusion01/articles.php?article_id=92#example3)  
appended to the real SCOPE show ( you should ignore for now )  
where you see already a simple plot function for a running 2 line graph.

---

<div class="post-metadata">

### Author: ![jk2019](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@jk2019](https://discourse.processing.org/u/jk2019)
#### Post date: [November 7, 2019, 5:23pm UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/3 "2019-11-07T17:23:53Z")

</div>

Thank you, kII! Shall try something based on what you suggested.

---

<div class="post-metadata">

### Author: ![jeremydouglass](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/jeremydouglass/32/20_2.png) [@jeremydouglass](https://discourse.processing.org/u/jeremydouglass)
#### Post date: [November 11, 2019, 8:44pm UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/4 "2019-11-11T20:44:47Z")

</div>

Will the GUI code be running on the Arduino, or on a laptop/desktop Processing sketch that is communicating with the Arduino?

If on the Arduino, what is the connected display?

---

<div class="post-metadata">

### Author: ![jk2019](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@jk2019](https://discourse.processing.org/u/jk2019)
#### Post date: [November 11, 2019, 10:50pm UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/5 "2019-11-11T22:50:02Z")

</div>

Hi Jeremy,

Display is to be shown on a computer to which the Arduino is connected. Data is coming continuously from the Arduino. Some of that data needs to be selected, used or processed. Display has to be changed based on that processing… We have freedom to choose the rest - GUI on Arduino or otherwise. Hope I understand you correctly.

Thanks.

---

<div class="post-metadata">

### Author: ![jeremydouglass](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/jeremydouglass/32/20_2.png) [@jeremydouglass](https://discourse.processing.org/u/jeremydouglass)
#### Post date: [November 12, 2019, 4:12pm UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/6 "2019-11-12T16:12:57Z")

</div>

In that case, run your GUI on the computer in a computer-side Processing sketch, and any Processing GUI library will work – your Processing sketch received the data, and the GUI doesn’t need to be Arduino-specific. The two most common GUI libraries to use are [ControlP5](http://www.sojamo.de/libraries/controlP5/) and [G4P](http://www.lagers.org.uk/g4p/) – they each have advantages depending on what you want your GUI to do.

---

<div class="post-metadata">

### Author: ![jk2019](https://avatars.discourse-cdn.com/v4/letter/j/ee7513/32.png) [@jk2019](https://discourse.processing.org/u/jk2019)
#### Post date: [November 12, 2019, 6:42am UTC](https://discourse.processing.org/t/which-library-for-simple-gui-programming-need-to-use-it-with-arduino/15299/7 "2019-11-12T06:42:03Z")

</div>

Thanks. Shall check and try!
