PiCon, the Raspberry Pi Configuration Manager


73 posts   Page 1 of 3   1, 2, 3
by avatar1337 » Sun Aug 11, 2013 2:27 am
Hi,

I have created a Configuration Manager called PiCon. It makes it easy to configure raspberry pis config.txt file. It is written in Java to be platform independent and is mostly meant to be run on a host system, like a Windows PC but should be possible to run on Raspberry Pi as well although it is kind of heavy. Just put the SD Card into your computer and extract the content in the boot directory. Run the Jar file either by double clicking (in Windows etc.) or by typing java -jar PiCon.jar in linux. Push the "save settings" button when you are done and it saves the settings to your config.txt file. Don't worry if you have settings not listed in the application, PiCon saves those settings as well as custom settings. Please tell me if you find any bugs, either here or by mailing me. I will link to two files, one rar and one zip. You only need to download one of them. Tell me what you think.

Image
Click here for a bigger picture:

PiCon is no longer available as a free download on this forum.
Click here to get the latest version from PiStore.

*Update Note! 1.0.8* - It is now possible to start PiCon from another location and also to start it without a console in Linux. Some minor GUI bugs was corrected.

*Update Note! 1.0.9* - I have done some major changes. The reason it took so long is because I'm trying to submit PiCon to PiStore. There are still some kinks to fix before it's out. The raspberry pi version got a plugin so that you can setup your overscan settings easily. I will post this version here until it is out on PiStore. It will not have that plugin though but you will be able to use PiCon as before. I have added a splash screen so that you know it is loading. That is useful on raspberry pi because it takes some time to load. There are GUI fixes and some general bug fixes.
Here is how that plugin looks like when run on Raspbian:

Image
Click here for a bigger picture:

Please support project PiCon by clicking here :P Thank you!
Email: mikael.murstam@gmail.com
Last edited by avatar1337 on Thu Nov 07, 2013 12:01 am, edited 24 times in total.
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by DeeJay » Sun Aug 11, 2013 7:38 am
Looks nice. I'll give it a try - thanks for your efforts.

To avoid confusion and disappointment: I think I am correct in saying that PiCon will only work with OS installations that have been 'imaged' directly to the SD card (eg. using Win32diskimager or dd). It will not be possible to modify the config.txt file for an OS that has been installed via NOOBS, since the /boot directory for a NOOBS-installed OS is inside an extended partition that is not easily accessible to Windows. (Executing PiCon on the running OS on the RPi itself would not be restricted in this way, but I note you have concerns about performance.)
How To Ask Questions The Smart Way: http://www.catb.org/~esr/faqs/smart-questions.html
How to Report Bugs Effectively: http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
User avatar
Posts: 2033
Joined: Tue Jan 01, 2013 9:33 pm
Location: East Midlands, UK
by avatar1337 » Sun Aug 11, 2013 1:09 pm
Ah, I didn't know that about NOOBS, I havn't tried it. I will write a more Raspberry Pi optimized PiCon later when this is bug tested and put it up on Pi Store. Btw, you need Java 7 to run this.
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by xranby » Sun Aug 11, 2013 2:23 pm
avatar1337 wrote:Ah, I didn't know that about NOOBS, I havn't tried it. I will write a more Raspberry Pi optimized PiCon later when this is bug tested and put it up on Pi Store. Btw, you need Java 7 to run this.


you can make the pi store install openjdk-7-jre and then instruct to start the jar with java -jamvm -jar PiCon.jar for easy deployment and good performance using the openjdk version.
Xerxes Rånby @xranby I once had two, then I gave one away. Now both are in use every day!
twitter.com/xranby
User avatar
Posts: 401
Joined: Sat Mar 03, 2012 10:02 pm
by avatar1337 » Sun Aug 11, 2013 2:35 pm
I will try that. Thank you!

Edit: I tried openjdk 7 and I can say: wow it is slow, really slow. I recommend the embedded java version
http://www.oracle.com/technetwork/articles/java/raspberrypi-1704896.html
This one is really fast. Perhaps 4 times as fast. =) Although I still don't recommend running it on Pi just yet.

This is PiCon running on RPi with JDK™ 8 Early Access Release 8 Build b102
https://jdk8.java.net/download.html

Image
https://dl.dropboxusercontent.com/u/4969127/PiCon_screenshot.png

It is much much faster. =)
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by avatar1337 » Sun Aug 11, 2013 4:33 pm
I have fixed two bugs now. One with a jumping slider and one serious with a runtime exception. =)

https://dl.dropboxusercontent.com/u/496 ... 1_Beta.rar
https://dl.dropboxusercontent.com/u/496 ... 1_Beta.zip
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by xranby » Mon Aug 12, 2013 6:10 am
avatar1337 wrote:I will try that. Thank you!

Edit: I tried openjdk 7 and I can say: wow it is slow, really slow. I recommend the embedded java version
http://www.oracle.com/technetwork/articles/java/raspberrypi-1704896.html
This one is really fast. Perhaps 4 times as fast. =) Although I still don't recommend running it on Pi just yet.

This is PiCon running on RPi with JDK™ 8 Early Access Release 8 Build b102
https://jdk8.java.net/download.html

Image
https://dl.dropboxusercontent.com/u/4969127/PiCon_screenshot.png

It is much much faster. =)


Good work, all seems to be working!

Any issue with OpenJDK can be fixed by the pi community, openjdk is re-distributable without any extra licence fee for any usecase, the source-code is available and can be improved,
it is possible to create a better java2d implementation that take advantage of the gpu drivers of the pi, creating a hardware accelerated java2d it probably the best way to improve all applications using swing like yours.
The JVM itself can also be improved, by default openjdk uses zero (zero is the only jvm in the openjdk codebase), there exist several alternative jvm like jamvm, cacao and avian created by different research groups that can be slotted in and be used.

When measuring performance its always good to compare performance agains 2d api's and interpreters written in other languages to be clear where the bottleneck really is.
Xerxes Rånby @xranby I once had two, then I gave one away. Now both are in use every day!
twitter.com/xranby
User avatar
Posts: 401
Joined: Sat Mar 03, 2012 10:02 pm
by avatar1337 » Mon Aug 12, 2013 5:44 pm
It seems like I am using the hotspot java virtual machine on RPi which is much faster at this. https://jdk8.java.net/download.html
It might be possible to do something about it though. It seems to be based on OpenJDK https://wiki.openjdk.java.net/display/O ... spberry+Pi
what do you think? Can I bundle this with my application or is there some license issues?
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by xranby » Mon Aug 12, 2013 8:52 pm
avatar1337 wrote:It seems like I am using the hotspot java virtual machine on RPi which is much faster at this. https://jdk8.java.net/download.html
It might be possible to do something about it though. It seems to be based on OpenJDK https://wiki.openjdk.java.net/display/O ... spberry+Pi
what do you think? Can I bundle this with my application or is there some license issues?


There is serve license issues, you can not bundle the jdk8 ea binary release with your application:
When you download the jdk8 ea from https://jdk8.java.net/download.html you agree to the "Early Adopter Development License Agreement for Java SE" found here: http://www.oracle.com/technetwork/licen ... 52003.html
The license prohibits you to do any form of redistribution. Please ask your lawyer.


OpenJDK is licensed differently and you have permission to bundle OpenJDK with your application change it and make the changed version available and use it for any purpose. http://openjdk.java.net/legal/gplv2+ce.html
This means that if you build OpenJDK or get it from Rasbian/Debian you can redistribute OpenJDK with your application under this GPLv2+classpath exception licence. OpenJDK is free software.

It is possible to build OpenJFX 8 using OpenJDK 8 i tested it today: I only had to remove web (required the properitary oracle java plugin to compile) and media (also required closed source parts to compile) from the OpenJFX source to get it working.
https://twitter.com/xranby/status/36692 ... 12/photo/1
OpenJFX is also free software. You can bundle both OpenJDK and OpenJFX with your application.
Xerxes Rånby @xranby I once had two, then I gave one away. Now both are in use every day!
twitter.com/xranby
User avatar
Posts: 401
Joined: Sat Mar 03, 2012 10:02 pm
by avatar1337 » Fri Aug 16, 2013 2:13 am
Yeah I thought so, but because it said it was based on OpenJDK I thought it might have worked :P

Anyone else tested PiCon? :?
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by wai0004 » Fri Aug 16, 2013 3:26 am
Great program! works really well! :D

Anyway, when you save the modified config.txt it still says "# This config file was generated by PiCon 1.0 Beta #" when i'm using v1.0.1

Thanks.
My webpage, hosted on a pi: http://jameswait.net:443/
Posts: 9
Joined: Tue Aug 13, 2013 8:20 am
Location: Australia
by avatar1337 » Fri Aug 16, 2013 3:39 am
Great you liked it. Oh crap I need to fix that :D

Edit: Now it should be fixed =)
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by avatar1337 » Sun Aug 18, 2013 3:26 am
All right! It looks like there are no more bugs. I will release it then =)
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by Torched_ » Sun Aug 18, 2013 8:57 am
This looks amazing! I'll do some testing on my Pi when I get up. I'm sure it's gonna be useful for a lot of people new to the Pi.
On my Windows 7 laptop running Oracle's Java 7 it works perfectly fine. I played around with the settings and sliders and thingies and it all seemed to work perfectly. I do have something to note, however.

The popup thingies that appear when you mouse over an option only appear for 4 seconds, I suggest you change this to as long as the mouse is on that item. In certain cases you'd have to read very fast to read all the text in that time. And yes, I know you can just mouse over again, but it's a bit more friendly in my opinion.

Apart from that it's an amazing application and I'm sure it's gonna be used by a lot.
Maybe it even deserves a spot on the frontpage when it's out of beta :3
Pi model B, 512 MB Ram
Maybe you'll figure it all out on your way
And realize that it's all still so very far away
User avatar
Posts: 11
Joined: Sat Aug 17, 2013 12:29 pm
by tonyhughes » Sun Aug 18, 2013 9:33 am
Very cool. What about a commandline version?
Baked Linux Mod http://www.geek101.co.nz/bakedlinuxmod

Easy install of Drupal, Wordpress, RazorCMS, Chyrp, Apache, Nginx, Lighttpd, firewall, Webmin, VNC, RDP, FTP servers, mailservers, MySQL, SQLite, Transmission and more...

tall.co.nz/webcam.jpg
User avatar
Posts: 931
Joined: Wed Dec 26, 2012 3:46 am
by Torched_ » Sun Aug 18, 2013 9:38 am
The commandline version would be SUDO NANO /BOOT/CONFIG.TXT, right?
Pi model B, 512 MB Ram
Maybe you'll figure it all out on your way
And realize that it's all still so very far away
User avatar
Posts: 11
Joined: Sat Aug 17, 2013 12:29 pm
by DeeJay » Sun Aug 18, 2013 10:51 am
Torched_ wrote:The commandline version would be SUDO NANO /BOOT/CONFIG.TXT, right?


Close...
Code: Select all
sudo nano /boot/config.txt


stands more chance of working. (If someone needs that level of help, they are likely to need it precise... )
How To Ask Questions The Smart Way: http://www.catb.org/~esr/faqs/smart-questions.html
How to Report Bugs Effectively: http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
User avatar
Posts: 2033
Joined: Tue Jan 01, 2013 9:33 pm
Location: East Midlands, UK
by Torched_ » Sun Aug 18, 2013 11:00 am
Uh, yeah, I suppose. I'm kinda used to doing it that way from another forum I used to be active on :3
And to me it's a bit more clear.
Pi model B, 512 MB Ram
Maybe you'll figure it all out on your way
And realize that it's all still so very far away
User avatar
Posts: 11
Joined: Sat Aug 17, 2013 12:29 pm
by avatar1337 » Sun Aug 18, 2013 2:54 pm
tonyhughes wrote:Very cool. What about a commandline version?


Hi, did you mean you wanted me to write a command line version of the program (1) or did you want to know how to edit the file in the terminal (2)?

(1) I don't see a need to write a command line tool because it wouldn't be much different than editing the file manually. One could make profiles and so on, but I really don't see the need. The point was to make an easy yet powerful tool which guides you through the settings. I will however make a more suitable application to be run on raspberry pi itself. It can be kind of heavy to run on rpi.

(2) You can edit the config.txt file however you want. You can edit it in Windows or in Linux. In Raspberry Pi, as prior posts demonstrated you can type sudo nano /boot/config.txt or sudo vi /boot/config.txt if you like to use the vi editor instead. It just means open config.txt in nano or vi and edit it.

P.S A tip to y'all =) :
Don't forget to create presets. If you have many SD cards or different monitors, TV's etc you can create presets to easily switch between them. The presets are saved in the /boot/presets folder.
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by avatar1337 » Sun Aug 18, 2013 8:43 pm
Torched_ wrote:This looks amazing! I'll do some testing on my Pi when I get up. I'm sure it's gonna be useful for a lot of people new to the Pi.
On my Windows 7 laptop running Oracle's Java 7 it works perfectly fine. I played around with the settings and sliders and thingies and it all seemed to work perfectly. I do have something to note, however.

The popup thingies that appear when you mouse over an option only appear for 4 seconds, I suggest you change this to as long as the mouse is on that item. In certain cases you'd have to read very fast to read all the text in that time. And yes, I know you can just mouse over again, but it's a bit more friendly in my opinion.

Apart from that it's an amazing application and I'm sure it's gonna be used by a lot.
Maybe it even deserves a spot on the frontpage when it's out of beta :3


Unfortunately I haven't found a way to fix that quite yet. It seems to be embedded and out of my control.
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by tonyhughes » Sun Aug 18, 2013 8:58 pm
avatar1337 wrote:
tonyhughes wrote:Very cool. What about a commandline version?


Hi, did you mean you wanted me to write a command line version of the program (1) or did you want to know how to edit the file in the terminal (2)?

(1) I don't see a need to write a command line tool because it wouldn't be much different than editing the file manually. One could make profiles and so on, but I really don't see the need. The point was to make an easy yet powerful tool which guides you through the settings. I will however make a more suitable application to be run on raspberry pi itself. It can be kind of heavy to run on rpi.

(2) You can edit the config.txt file however you want. You can edit it in Windows or in Linux. In Raspberry Pi, as prior posts demonstrated you can type sudo nano /boot/config.txt or sudo vi /boot/config.txt if you like to use the vi editor instead. It just means open config.txt in nano or vi and edit it.

P.S A tip to y'all =) :
Don't forget to create presets. If you have many SD cards or different monitors, TV's etc you can create presets to easily switch between them. The presets are saved in the /boot/presets folder.

I meant creating this tool as a command line app. It would be equally useful for people who don't have the ability or confidence to edit the file themselves...
Baked Linux Mod http://www.geek101.co.nz/bakedlinuxmod

Easy install of Drupal, Wordpress, RazorCMS, Chyrp, Apache, Nginx, Lighttpd, firewall, Webmin, VNC, RDP, FTP servers, mailservers, MySQL, SQLite, Transmission and more...

tall.co.nz/webcam.jpg
User avatar
Posts: 931
Joined: Wed Dec 26, 2012 3:46 am
by avatar1337 » Sun Aug 18, 2013 9:36 pm
Yes, but how would that work? What would you do with that command line. Like, if you want to load presets you could just copy premade config files "sudo cp preset.config /boot/config.txt" (raspi-config does that), and if you want to make complex changes how would you create a command line tool that isn't as complicated as the config.txt file itself? Hmm I am not convinced but I might do it if people really want it. =)
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by tonyhughes » Sun Aug 18, 2013 9:42 pm
Maybe I should have said console app - not necessarily "command line".

Use whiptail or something to provide a graphical interface, but then it can be used headless via SSH.
Baked Linux Mod http://www.geek101.co.nz/bakedlinuxmod

Easy install of Drupal, Wordpress, RazorCMS, Chyrp, Apache, Nginx, Lighttpd, firewall, Webmin, VNC, RDP, FTP servers, mailservers, MySQL, SQLite, Transmission and more...

tall.co.nz/webcam.jpg
User avatar
Posts: 931
Joined: Wed Dec 26, 2012 3:46 am
by avatar1337 » Mon Aug 19, 2013 6:42 am
Yes it could possibly be useful with a text based GUI over SSH. I don't think that will happen though. Maybe :|
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm
by avatar1337 » Tue Aug 20, 2013 12:05 am
I enabled another feature in version 1.0.2 Beta: "Force HDMI Mode", this will try to force an HDMI mode (resolution and refreshrate) even if RPi thinks it is not supported. If you know that your monitor can display a certain mode and it doesn't work, this one is useful.
I used it on my monitor to change it to 75 Hz because I knew it supported it. With the feature turned off, RPi defaults back to a lower setting.

Image

https://dl.dropboxusercontent.com/u/4969127/PiCon_1.0.2_Beta.rar
https://dl.dropboxusercontent.com/u/4969127/PiCon_1.0.2_Beta.zip
The creator of the Raspberry Pi Configuration Manager (PiCon)
User avatar
Posts: 67
Joined: Sun Jan 27, 2013 3:14 pm