Wishlist for C for EV3 (EVC, EV3-C)

Discussion specific to NXT-G, NXC, NBC, RobotC, Lejos, and more.
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by HaWe »

Online mode

It would be great if we could have again a feature that once was provided by the Robotics Invention System (RIS) for the RCX and the programming language RCX code or alternatively VisualBasic plus Spirit.ocx (and which I have sorely missed for the NXT):

One could create a program on the computer and let it execute on the computer, remote-controlling the brick automatically online via a serial connection (previously it was a serial wireless IR tower, either connected to the PC through RS232 or USB).

To make it clear: you didn't ever need something like a .net program running on the PC (or any other additional PC-Brick communication program like. e.g. Aforgenet, Monobrick, Mindsqualls), the online program and the offline program have been completely identical: you only had to choose either EXECUTION_ONLINE or UPLOAD/EXECUTION_OFFLINE !

This now should be able to do again with the EV3, too: alternatively execute a program online (wired or wireless) or alternatively upload the same program to the EV3 brick (as previously to the RCX brick) and then execute it offline, autonomously.
mattallen37
Posts: 1818
Joined: 02 Oct 2010, 02:19
Location: Michigan USA
Contact:

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by mattallen37 »

In regard to running programs remotely.

Would there be any advantage? In order for it to run at it's optimum speed, the program would need to be executing from internally. Sending the OP-Codes one-at-a-time to execute would likely slow things down considerably, and I see no advantage.

If the idea is that you want to keep the EV3 free of a cluttered file system, then use a temporary directory (created specifically for this purpose), or else delete the files when you're done (which you should be able to automate if necessary).

I don't mean to say it's a bad idea, I would just like to understand the advantage.
Matt
http://mattallen37.wordpress.com/

I'm all for gun control... that's why I use both hands when shooting ;)
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by HaWe »

there are no limits to the imagination - it's because of the same reason why people wish to have a BT or USB connection to a PC host;
currently for the NXT via BT or USB it's shaky and complicated and not everybody is experienced in Mindsqualls or .net programming and/or the NXT mailbox crap.

As an idea, e.g., you can monitor sensor readings for advanced graphical evaluation by charts like this one
Image
(this one by Labview)
Additionally you may use your PC keyboard, your mouse, and even a barcode scanner as input devices and your PC screen and your printer as output devices -
- or you maybe can spline in (? correct idiom ?) calculation results of a simultaneously running image processing program on the PC through an Input-Output Interface.

So in such cases the online mode could
a) temporarily help debugging and optimizing code (and online features would be disabled when in offline mode), or
b) it could be used exclusively if a steady connection to a PC host will be indispensable and always be given.
tcwan
Posts: 186
Joined: 30 Sep 2010, 07:39

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by tcwan »

doc-helmut wrote:Online mode

To make it clear: you didn't ever need something like a .net program running on the PC (or any other additional PC-Brick communication program like. e.g. Aforgenet, Monobrick, Mindsqualls), the online program and the offline program have been completely identical: you only had to choose either EXECUTION_ONLINE or UPLOAD/EXECUTION_OFFLINE !

This now should be able to do again with the EV3, too: alternatively execute a program online (wired or wireless) or alternatively upload the same program to the EV3 brick (as previously to the RCX brick) and then execute it offline, autonomously.
Since EV3 is Linux based, I presume that you would be able to write the program as a client-server pair communicating over TCP/IP (I'm simplifying the explanation). This way, the server runs on the EV3 to perform the tasks, while the client can be compiled to run locally on the EV3 or else remotely on the PC connected via the WiFi Dongle. Best of both worlds.
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by HaWe »

sounds reasonable, and the communication program then should be completely integrated into the BCC IDE, running automatically if once been started (run_online), so that one has to write only 1 source code for either execution mode (online vs. offline).
Although I'm afraid that WiFi would be too slow (my WiFi is just about 10-50 Mbit/s, USB 2.0 is 480 Mbit/s).
mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by mightor »

Heh, how much data do you think the EV3 can generate? :) I highly doubt your WiFi will be the bottleneck in this case.

= Xander
| My Blog: I'd Rather Be Building Robots (http://botbench.com)
| RobotC 3rd Party Driver Suite: (http://rdpartyrobotcdr.sourceforge.net)
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by HaWe »

to be honest: I have no idea :oops:
mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by mightor »

ok, consider the worst case scenario:
The first two sensor ports are running at 460Kbit/s each.
The third and fourth are going at 230Kbit/s each.

That's 1.38Mbit/s in total. Even if you could, somehow, get that data out of the UARTs, processed and out through the WiFi, your network would still be fine :) I am sure you'd have to do some pretty mad optimisations to get that kind of throughput :)

= Xander
| My Blog: I'd Rather Be Building Robots (http://botbench.com)
| RobotC 3rd Party Driver Suite: (http://rdpartyrobotcdr.sourceforge.net)
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
HaWe
Posts: 2500
Joined: 04 Nov 2014, 19:00

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by HaWe »

I'll do my very best! :mrgreen:
mightor
Site Admin
Posts: 1079
Joined: 25 Sep 2010, 15:02
Location: Rotterdam, Netherlands
Contact:

Re: Wishlist for C for EV3 (EVC, EV3-C)

Post by mightor »

No, what I am saying is that I have my doubts whether the EV3's current firmware is capable of delivering this throughput. I have no doubt you will work hard on getting as close to the theoretical maximum as the hardware and software will allow.

= Xander
| My Blog: I'd Rather Be Building Robots (http://botbench.com)
| RobotC 3rd Party Driver Suite: (http://rdpartyrobotcdr.sourceforge.net)
| Some people, when confronted with a problem, think, "I know, I'll use threads,"
| and then two they hav erpoblesms. (@nedbat)
Post Reply

Who is online

Users browsing this forum: Semrush [Bot] and 14 guests