I run a system76 11.04 Ubuntu box, and i a m very interested in not having to virtualize windows to create and compile robotc files. I know that you cannot get the complete IDE to run even in Wine, but i was wondering if:a: It would be possible to use PlayOnLinux to run the IDE--or--b: Is there a standalone compiler i could use, so i would program in an IDE like NetBeans or CodeBlocks but compile the files through this possibly nonexistent program (i would load the program to the NXT through some other means).

I would greatly appreciate getting feedback on this topic, but i would also like to know if there is an FTC compliant programming language that can be run in Linux (would NBC be an option, with the programs to be initiated through a RobotC program, maybe?).

I believe LabVIEW, ROBOTC and possibly NXT-G are the only allowed programming solutions for FTC. There's a number of reasons for this including:

These solutions have been fully tested to be compliant with the FTC competition Field Management System to ensure programs start and stop when required. And that robots can be disabled from the Field Management System.

These solutions have been enhanced with device drivers for the Hitechnic motor and servo controllers used by FTC. I'm not sure that there are implementations for other solutions. The official solutions have been tested to work with all the subtleties of the controllers (i.e. appropriate enable/disable of the watchdog timers in the controllers, not overloading the message message queues in controllers, ensuring messages are sent to all devices daisy chained on one sensor port, etc).

These solutions understand the message formats used to send joystick/game controller messages to the NXT during a FTC competition.

Etc

NBC is not an option. It requires a different firmware than that used for ROBOTC.ROBOTC is designed for Windows and uses numerous Windows OS function calls so it does not natively run on LINUX or MAC systems. Some users have reported success in running it in a Virtual Machine on a Mac system but I believe that VM is running Windows. I'm personally not familiar with the non-Windows options.

Mon Sep 26, 2011 7:39 am

anderfernandes1

Rookie

Joined: Mon Jan 23, 2012 2:07 pmPosts: 1

Re: A RobotC for NXT compiler in Ubuntu

Let's be honest. It is not available for Linux because you have to pay for it on Windows. Most of the software on Linux is free. I doubt they would give RobotC away for free.

Let's be honest. It is not available for Linux because you have to pay for it on Windows. Most of the software on Linux is free. I doubt they would give RobotC away for free.

There is plenty of commercial software for Linux. Making something available for Linux does not imply having to make it free or even Open Source. I've been working professionally with Linux for over 17 years now and I can assure you there is plenty of commercial stuff out there:

Oracle everything

Red Hat Enterprise Linux

IBM Websphere

MySQL Enterprise Edition

Splunk

VMWare Workstation

I could go on but I'm sure a quick Google search will confirm my statements.The main issue is that Linux is used only by a very small fraction of users on the desktop. They're a very vocal bunch, sure, but developing or porting a product is a lot of work and maintaining multiple versions of it for multiple platforms even more so. There's a good reason ROBOTC 3.x moved to a single package, instead of one for each robotics platform: efficiency.Even Red Hat, a major commercial enterprise-grade Linux company has given up trying to push Linux to the enterprise desktop, it's not worth it. Windows is, for now, the main Desktop OS, after that it's Apple's OSX and the small pickings that are left is a wide range of Linux distributions.

That brings me to another issue with making commercial software available for Linux, the extreme fragmentation of all of the distributions and various versions thereof. If we take the main distributions that are big used at the moment, Red Hat, SuSE, Ubuntu and Mint, we have 4 distributions, some of which have multiple supported concurrent versions. So, in all, you're probably talking about 10-12 different packages that you need to create, test and maintain, one for each. Every time there is a minor or major update, you need to revalidate your packages for that specific distribution and perhaps re-engineer some of it. I really don't think you understand and appreciate the amount of work that goes into maintaining software.

I know that making ROBOTC open source and having the communities of each distribution would at least partially solve this issue, but Robotics Academy and Robomatter have made significant investments in developing this product and their business model consists of selling licenses and giving courses to educators and much more.

There is no lack of open source NXT programming software out there, some of it even works under Linux, just not ROBOTC.

Let's be honest. It is not available for Linux because you have to pay for it on Windows. Most of the software on Linux is free. I doubt they would give RobotC away for free.

Paying for software has nothing to do with Windows or Linux. You have freeware on either platforms and you have paid software on them as well. There is nothing wrong with paying for software. If you can find free software that does what you want, that's great. But it takes resources (time and money) to develop and test software. So it is fair for the person/organization who develops the software to ask for compensation. If you don't think the software is worth the price, don't buy it.

Mon Jan 23, 2012 5:03 pm

karl101

Rookie

Joined: Mon Aug 20, 2007 4:01 amPosts: 28

Re: A RobotC for NXT compiler in Ubuntu

I would pay for RobotC licence on linux. Especially with the Raspberry PI http://www.raspberrypi.org/ a $25 computer the size of a credit card, and built for use in education soon to be coming to market. The purpose of this computer is to re-introduce children to real programming, not mucking about with excel, word, etc.

This could be a massive opportunity for RobotC.

Karl.

Thu Jan 26, 2012 7:02 pm

chrismamo1

Rookie

Joined: Fri May 20, 2011 6:01 pmPosts: 20

Re: A RobotC for NXT compiler in Ubuntu

I just had an idea: RobotC does work in Wine, it just can't download files to the NXT from Wine. Would it be possible to write a script to run in Wine to connect to the host computer and use a utility like LinXT to download the program? If not, would it be possible to run ONLY the RobotC compiler in Wine, compile a RobotC program written in something like Eclipse or Vim, and then use LinXT to download it?

Best regards,

Chris

Wed Oct 10, 2012 4:33 pm

Spiked3

Expert

Joined: Tue Feb 28, 2012 3:10 pmPosts: 197

Re: A RobotC for NXT compiler in Ubuntu

chrismamo1 wrote:

I just had an idea: RobotC does work in Wine, it just can't download files to the NXT from Wine. Would it be possible to write a script to run in Wine to connect to the host computer and use a utility like LinXT to download the program? If not, would it be possible to run ONLY the RobotC compiler in Wine, compile a RobotC program written in something like Eclipse or Vim, and then use LinXT to download it?

Best regards,

Chris

way more than possible However, it does require a pretty deep knowledge of scripting and OSs in general (hint: monitor file creations), the kind of knowledge you should have before running linux in the first place, so have at it. Are you adhering to the license agreement?

On the other hand, there is absolutely no motivation I can think of for RoboMatter to even attempt to support anything like that. Heck, there isn't even enough motivation to support mac in other than PC emulation.

Who is online

Users browsing this forum: No registered users and 2 guests

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum