electronics software for linux - Page 1
Forum section: electronics / general

author: Simon
author_rank: Unknown
timestamp: April 08, 2012, 07:52:52 am
content: Well I've pretty much switched to linux as my main operating system. KiCAD works on it but what about a pic programing suit, does anyone know any ? or are there any that work well on wince ?

author: amspire
author_rank: Super Contributor
timestamp: April 08, 2012, 08:08:25 am
content: The latest MPLabx from Microchip runs on Linux.

author: Simon
author_rank: Unknown
timestamp: April 08, 2012, 08:11:18 am
content: oh right, that is good. What about a basic compiler ?

author: Bored@Work
author_rank: Super Contributor
timestamp: April 08, 2012, 08:23:19 am
content: sdcc supports PIC.And for all sorts of EE tools on Linux,http://elettrolinux.com/provides an overview.

author: Simon
author_rank: Unknown
timestamp: April 08, 2012, 08:24:58 am
content: thanks, I still need to learn to install under linux as at the moment I just use the OSes program repositories that often don't have stuff or is out of date - KiCAD is available on linux mint but the latest version has only just come through

author: shebu18
author_rank: Frequent Contributor
timestamp: April 08, 2012, 09:33:59 am
content: What shall be used for AVR?

author: quantumfall
author_rank: Regular Contributor
timestamp: April 08, 2012, 10:04:15 am
content: Quote from: Simon on April 08, 2012, 08:24:58 amI'm still very much a noob at linux but have used it on and off for many years, Installing software, well if I want the latest version of a program I think its best to go to the website of the development team / programmer. They will have a link mostly to the latest version in a "package" a package is a standard file a bit like a zip, on debian based linux distributions that is a .deb file, on Red Hat its an .rpm you need you just download and double click to install mostly, or open with your software manager.After installing you are best to run a system update, it will install any new updates for "dependency" system software, thats just software that your new install will use or need on your system and will make sure you have the latest, its not always needed just what I've seen done as good measure.The readme and manual pages of the program or website will normally tell you if you need some special "dependency" installed for it to work.Some programs have their own repository, you can add this to your software manager (whatever one you use) then when you do a system update it will find any for that software.What I have said is as much as I know, if it comes to building packages or kernel building I'm lost.I've had a good experience of "Zorin OS" Linux its a derivative of Ubuntu I think or could be Debian, anyway it comes as a free version and some paid for custom versions. The free is very easy to use, its desktop layout is a bit like windows, so easy to start with if you are new to the Linux OS.It's a large distribution and comes with a lot of programs already installed, you need to download a DVD iso and burn that to use as a setup disk.You need a modern-ish system to run it, 2GHz processor, 2Gb RAM 80Gb disk drive as a sensible minimum I would say. Not "Skipware"I installed it to a separate hard disk on its own system box as linux and windows do not always play nice together, thats my experience, I know it can be done but its just easy that way for me. I use an nvidea based graphics card for the Linux system, I could not get my AMD / ATI onboard graphics to work well with Linux but thats probably because I'm still a Noob with Linux.Hope this helps.

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: April 08, 2012, 10:33:27 am
content: QuoteFirstly, congratulations. I hope you enjoy the journey as much as I have.Quote from: Simon on April 08, 2012, 08:11:18 amI'm sure you don't mean a BASIC compiler rather a simple C compiler, I just wanted you to know that BASIC, the computer language, is a dirty word in the Linux community.Ix-nay on the Basic-ay.There are BASIC compilers, however, in actuality most are BASIC to C cross-compilers and really not that useful in 2012. Unless you happen to come across an old BASIC listing and want to convert it to C.Have fun!

author: bingo600
author_rank: Super Contributor
timestamp: April 08, 2012, 10:37:57 am
content: Quote from: shebu18 on April 08, 2012, 09:33:59 amavrdude is the standard Linux programmer , for AVR./Bingo

author: shebu18
author_rank: Frequent Contributor
timestamp: April 08, 2012, 10:39:32 am
content: ftware interface? I mean something like avr studio. You write the code, select the chip, port and click burn.

author: Bored@Work
author_rank: Super Contributor
timestamp: April 08, 2012, 10:56:25 am
content: You select whatever editor or IDE you like, not what the manufacturer dictates.

author: Unknown
author_rank: Unknown
timestamp: April 08, 2012, 11:07:14 am
content: The most popular IDEs appear to be Eclipse and Code::Blocks. There is an AVR-gcc plugin available for Eclipse. They all use the same avr-gcc compiler used by the Windows IDEs ('WinAVR'). Plenty of people don't use an IDE but use a good text editor.

author: Simon
author_rank: Unknown
timestamp: April 08, 2012, 11:23:32 am
content: well I know basic at the moment. I guess I should take the time to learn "C" but then I only want to do basic things at the moment

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: April 08, 2012, 12:01:17 pm
content: Quote from: Simon on April 08, 2012, 11:23:32 amSh1t. You're serious. I hereby excommunicate you.Learn C by example in just 5 hours.C tutorial on-line.http://johnt.tripod.com/c.html(could this be the most disgusting looking website ever?)edit: I have this in the dead tree variety, didn't know it was on the net..http://aelinik.free.fr/c/(Sams Teach Yourself C in 24 Hours)Have fun!

author: Christopher
author_rank: Frequent Contributor
timestamp: April 08, 2012, 12:16:12 pm
content: Makefiles! Learn how to use them, these days I just code in nano or GEdit and make.AVRDude and avr-gcc is all you really need..

author: McMonster
author_rank: Frequent Contributor
timestamp: April 08, 2012, 12:30:05 pm
content: Quote from: Christopher on April 08, 2012, 12:16:12 pmIt's strictly a matter of preference, some people use bare editor, compiler etc. some really like advanced IDEs. Both have their distinct features not found in the other.Most people coming from Windows should start with some IDE and try using bare makefiles etc. in the free time as they'd require a lot of learning, setting up and getting used to.

author: Psi
author_rank: Super Contributor
timestamp: April 08, 2012, 12:48:10 pm
content: Quote from: shebu18 on April 08, 2012, 09:33:59 amAVR is easy on linux, avrdude/avr-gcc plus whatever programming text editor you want.But yeah, as above, you need to know a little bit about makefiles to get started.

author: markus_b
author_rank: Regular Contributor
timestamp: April 08, 2012, 01:00:59 pm
content: I'm using Eclipse with avrgcc on linux and have yet to see the need to touch a makefile manually. Eclipse does the make magic for me transparently.Knowing about makefiles is useful, but optional, when using Eclipse.Markus, from his mobile

author: ejeffrey
author_rank: Super Contributor
timestamp: April 08, 2012, 01:59:20 pm
content: Quote from: Simon on April 08, 2012, 11:23:32 amThere are some basic interpreters / compilers for linux, but nothing that is terribly popular. One problem is that "basic" isn't well standardized -- while the syntax is largely the same, the libraries are not, at least if you want to go beyond 1970s era file and console IO.If you are coming from windows, I guess you are interested specifically in visual basic? I think the mono project does have a VB.NET compiler. I don't know how well it works, but that might be a good place to look.Scripting on linux is more commonly done with shell scripts (bash), or scripting languages like python or perl. These languages have much of the simplicity of basic with considerably more power if you need it.

author: Zero999
author_rank: Super Contributor
timestamp: April 08, 2012, 05:56:45 pm
content: Quote from: ejeffrey on April 08, 2012, 01:59:20 pmI think he's talking about a MCU BASIC compiler for Linux.FreeBASIC can be used to write Linux programs but that isn't what he wants.I don't know of any PIC BASIC compiler for Linux, he could try running a Windows program under WINE or in a virtual machine and using the HEX generate file to program the PIC.

author: amspire
author_rank: Super Contributor
timestamp: April 09, 2012, 12:45:36 pm
content: Simon, what linux distro are you using?I currently have the UER - Ubuntu Electronics Remix as a VMWare virtual linux, so I can try out gEda. It includes PIC development. They sy it has a PIC IDE, but I am not sure where.Fedora offers FEL - the Fedora Electronics Lab distro that includes, PIC and Atmel development tools along with gEda, KiCad and Asic design tools.http://spins.fedoraproject.org/fel/If you are running a standard Fedora, you can install FEL with the following command from a terminal window:Code:yum groupinstall 'Electronic Lab'For PIC32 development, you can get an open source Unison linux target environment:http://www.rowebots.com/embedded_processors_supported/microchip_pic32There are several PIC IDE's available for Linus in general:http://elettrolinux.com/integrated-development-environment?start=4Richard.

author: McMonster
author_rank: Frequent Contributor
timestamp: April 09, 2012, 07:40:56 pm
content: My personal advice is not to use special Linux distro's spins or mentioned "yum groupinstall" command on Fedora, they both basically get you every possible electronics related app available into your system and you most likely won't use a third of them. It's usually better to identify and install particular apps than to bloat your system with everything.But it'd be a good idea to download the spins and use as a LiveCD, which enables you to run the system straight off the CD (or USB drive too) and just see what's available and play around. All without touching anything on your hard drive.

author: firewalker
author_rank: Super Contributor
timestamp: April 09, 2012, 08:24:06 pm
content: Quote from: shebu18 on April 08, 2012, 10:39:32 amHave a look at CodeBlocks.http://www.codeblocks.org/Alexander.

author: vk6zgo
author_rank: Super Contributor
timestamp: April 11, 2012, 01:34:21 am
content: Comments from a non-programmer:Back in the day,I learnt enough to program a microprocessor development board to make the readout say rude things if I held it upside down!Later,I learnt just enough Basic to make my Commodore 64 say rude things(on the screen).When I ran into MS/DOS,Isaid rude things & left it well alone.When I discovered Windows,I was in 7th heaven,I could make it say rude things without any programming!I always had the nagging feeling that I should have persevered with programming,so I was interested to see the links in Reply#13.When I looked at the links I was back to saying rude things ,so I think I will forget about it.

author: GeoffS
author_rank: Unknown
timestamp: April 11, 2012, 03:36:54 am
content: I've been a UNIX administrator for nearly 30 years and have used Linux since it became available as a hobbiest 'hack' and later in a commercial environment. It's all I run now (well typing this from an old Apple Mac Mini as I've had a hardware meltdown in the Linux server and the Linux laptop died...).I run Centos as my server operating system but use VMware extensively for those rare things for which I need Windows and for trying out a Linux distribution or package collection without clogging up the host OS.Unless it's a graphics heavy application, it runs just fine as a VM. Just make sure you have lots of memory available.

author: djsb
author_rank: Super Contributor
timestamp: April 11, 2012, 09:59:18 am
content: Quote from: amspire on April 09, 2012, 12:45:36 pmJust to clarify Unison is an embedded OS for the PIC32 unless I'm mistaken. It runs ON a PIC32.David.

author: shebu18
author_rank: Frequent Contributor
timestamp: April 11, 2012, 03:36:13 pm
content: Something i found about AVR's, eclipse and linux.http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=65879

author: Christopher
author_rank: Frequent Contributor
timestamp: April 11, 2012, 07:19:30 pm
content: I work for a small company that makes custom Linux distributions as a day job (For embedded things like musical keyboards, mostly (expensive) sound equipment).We base distros on Debian or Ubuntu (Tend to go with Debain these days), and find it highly effective for desktop environments. For our servers (Build etc) we use Debian because that's what we know the best...

author: BBQdChips
author_rank: Contributor
timestamp: April 11, 2012, 08:06:50 pm
content: There is a PIC-Basic compiler, or at least there used to be. It wasn't a Microchip product, and it was expensive as Cadillac cars. But, if you look around a bit, you might be able to find that. If I recall, I think it was in the neighborhood of $1000USD, but it may have been less. I know it was a lot. I never bought it and at that time, the C compilers were a fortune also. They had no free versions.C is actually quite easy. It's not as forgiving as Basic, but, I'm not sure forgiving is a good thing. Any language is going to have some traps for a beginner vs something they already know. But C is really quite simple if you are only doing simple things. Get a nice little Hello World, or Hello Blinking Led program going, and from there you see how easy it is. C compilers are free, so you can afford a little time spent learning.MPLabX is a bit slow. Nothing like the old MPLab used to be. The added functionality though is worth the wait if you ask me. If all you want to do is program chips, they have other utilities for that anyway. I've been using MplabX on linux since Beta 2 or 3. Though at that point, I did a lot of things on windows in the old system.I recall reading somewhere here too that a person has DipTrace running under Wine on Linux. There's another package you should install, and get familiar with doing some custom configs so programs work like you remember them on Windoze. Seems I also remember a person having LTSpice running on Ubuntu under Wine too. You should be able to get a pretty complete system going if you spend a little time at it.

author: free_electron
author_rank: Super Contributor
timestamp: April 11, 2012, 08:47:00 pm
content: Free Basic language compilers for PIC / AVR and others : Free as in code limited if you don't pay for the licence, but with some you can make fairly large projects.OshonsoftSwordfish BasicMikroE Basic ( up to 5K compiled code for free.) AVR / PIC / 8051 / ARM / PIC32 and othersBascom AVR / 8051Fortunately they all run on windows so no mucking around with that elitist loonix stuff that still thinks command lines are state-of-the-art ...The best linux plug-in would be a VM running windows :p. That way you don't have to choose. you can run software from both worlds. Why limit yourself ?

author: T4P
author_rank: Super Contributor
timestamp: April 12, 2012, 09:32:43 am
content: Quote from: BBQdChips on April 11, 2012, 08:06:50 pmHeck yes . MPLAB X is a hell lot slower even on my Phenom 4C 3.2GHz computer , i switched back to the MPLAB 8 for my review :http://www.element14.com/community/roadTestReviews/1225

author: BBQdChips
author_rank: Contributor
timestamp: April 12, 2012, 05:02:43 pm
content: @Dave.Sit was around Beta 4 or 5 that I ported that kit over to Linux, and did what I think was the first demos not on windoze. It actually worked quite nice, and I was impressed with how smoothly it worked throughout the os. It's actually pretty cool how under linux, you can redirect things to act upon I/O from that USB device much more easily than you can in windows. Such as, linking a pseudo serial port to it and using any-ole comms program to talk with it.But yea, MPlab8 is 10x faster in compile / upload operations than MplabX. It doesn't affect me quite so much cause my projects are not that large. But, I've talked to people doing work on projects that take 3-5 minutes to compile and upload, and that's just unacceptable. And, ultimately, it's up to Oracle to fix the thing cause Microchip has their hands tied. They can only fix their own code so much, then it's up to the platform to pick up the slack. And, there is a lot of picking up to be done on Oracle's part.Sorta analogous to using C or Basic. The best basic programmer in the world is a big performance hole to the guy using C or assembly.Interesting thing about C for the Pic. A few small demos have been done where people have shown a disassembly listing of C to have not a single extra instruction vs writing the code in assembly. Of course thats not always the case, but, there isn't often much to be gained by doing inline assembly.

author: T4P
author_rank: Super Contributor
timestamp: April 12, 2012, 06:31:48 pm
content: but something's weird ... Netbeans ( based on the same eclipse ) is much faster then MPLAB X ...It's either Oracle or Eclipse or Microchip ...

author: BBQdChips
author_rank: Contributor
timestamp: April 12, 2012, 08:34:27 pm
content: Anytime they build on top of a pre-made IDE, there's a huge performance hit. The thing just does way too much and was written with the "include the kitchen sink" mentality. That would be fine if all the code was real tight, but it's not. As for Oracle, I won't get started on themAnother great program for Linux or Windoze is:http://joshmadison.com/convert-for-windows/Take note at the bottom of the page, if you're running linux, you probably need to set the options for the tab bar to be a single line w/scroll bar. If you don't have this on your system, you shoud get it.