RobotC (4.65) on Wine (3.0.3) on macOS (10.14.1)

  1. last week

    mhayes

    Dec 5 Hong Kong

    Been wrestling with getting access to the serial port from RobotC on Wine on macOS.
    I have used wine regedit to add Registry entries for the comm ports.

    I can run RobotC on wine, but using the A-toA serial cable, I cannot see the serial port, thus, cannot download code to the Cortex.

    I then tried using the programming kit instead of the A-to-A cable,
    now I can see the logical serial port in macOS and in wine, but still cannot download code to the Cortex. (see attachments)

    Has anyone been able to do this?

  2. DarkMatterMatt

    Dec 5 Auckland, New Zealand 2900C

    I've run robotc through wine on Linux and Chromebooks, have never been able to get download working

  3. mhayes

    Dec 5 Hong Kong

    I have been exploring all sorts of ways to get robotc off of windows.

    PROS works well using the programming kit, but may be a bit advanced for year 9 students in a semester course.
    I was really hoping wine would work, but had a bad feeling about the serial port from the beginning.

    Vex has documentation for replacing the cortex with an arduino , but the programming samples are using robotc, not the arduino ide.
    Still looking for some resources for doing programming the arduino, with the arduiono ide, to control vex motors/sensors.

    Then there is Vex V5 which apparently runs on macOS. Looks like a nice piece of kit, but costs $4000 HKD vs $200 for the arduino.

    Just plain annoying that robotc 4.x runs on windows only.

  4. Barin

    Dec 5 Arizona

    @mhayes I have been exploring all sorts of ways to get robotc off of windows.

    PROS works well using the programming kit, but may be a bit advanced for year 9 students in a semester course.
    I was really hoping wine would work, but had a bad feeling about the serial port from the beginning.

    Vex has documentation for replacing the cortex with an arduino , but the programming samples are using robotc, not the arduino ide.
    Still looking for some resources for doing programming the arduino, with the arduiono ide, to control vex motors/sensors.

    Then there is Vex V5 which apparently runs on macOS. Looks like a nice piece of kit, but costs $4000 HKD vs $200 for the arduino.

    Just plain annoying that robotc 4.x runs on windows only.

    Are you looking to use the Arduino IDE to use Arduino microcontrollers to interface with VEX motors and sensors?
    Or are you looking to use RobotC to use Cortex microcontrollers to interface with VEX motors and sensors?

    I'm confused.

  5. sazrocks

    Dec 5 Arizona 2114V

    Try using a Virtualbox win 7/10 vm, and then pass through the USB device. The issue is that the cortex needs drivers, and wine isn't able to deal with that properly.
    The other option would be to install windows on a separate partition on the macs and boot from it, but if this is a school that likely isn't an option.

  6. mhayes

    Dec 6 Hong Kong

    We are a 1-to-1 macbook school; students own their computer; thus, we are eager to dump windows.
    Presently we have a some old Macbooks with windows installed; these machines are used just for running robotc. Students do not take these machines home. Not an ideal situation.

    I can run RobotC in VirtualBox and access the serial port, no problem. But this option would require a Windows license on every student machine.

    Being able to run robotc on wine on macos would be nice, but getting to the serial port does not work. Having said that, the wine documentation says that it should work.

    Another non-windows option is PROS, which I like, but can be a leap for beginners.

    Another non-windows option is replace the cortex with an arduino, and program the arduino with the arduino ide (not robotc). BTW, robotc can target the arduino board, but the code is still composed in robotc.
    So the question is, are there some good resources for composing code in the arduino ide to target the arduino controller (not the cortex). Like PROS, the arduino ide runs on everything, not just windows.

  7. tabor473

    Dec 6 V5 Beta Tester OYES, WPI

    @mhayes We are a 1-to-1 macbook school; students own their computer; thus, we are eager to dump windows.
    Presently we have a some old Macbooks with windows installed; these machines are used just for running robotc. Students do not take these machines home. Not an ideal situation.

    I can run RobotC in VirtualBox and access the serial port, no problem. But this option would require a Windows license on every student machine.

    Being able to run robotc on wine on macos would be nice, but getting to the serial port does not work. Having said that, the wine documentation says that it should work.

    Another non-windows option is PROS, which I like, but can be a leap for beginners.

    Another non-windows option is replace the cortex with an arduino, and program the arduino with the arduino ide (not robotc). BTW, robotc can target the arduino board, but the code is still composed in robotc.
    So the question is, are there some good resources for composing code in the arduino ide to target the arduino controller (not the cortex). Like PROS, the arduino ide runs on everything, not just windows.

    I have used arduino a decent amount. I still think the learning curve with PROS will be easier.

  8. jpearman

    Dec 6 Moderator, ROBOTC Tech Support, V5 Beta Moderator Los Angeles 8888

    @mhayes Being able to run robotc on wine on macos would be nice, but getting to the serial port does not work. Having said that, the wine documentation says that it should work.

    The fundamental problem is that the cortex is not quite a standard serial port. I wrote a driver back in 2013, but I do not support that anymore, OSX has moved on too much and the old USB APIs from 2013 are obsolete. Easiest way to install that old driver is to install the RobotMesh extension for Mac which also happens to include it, it may or may not work, depends on the exact Mac configuration.

    You could also try using the programming kit that connects to the controller, that's far more practical to use than direct A-A cable to the cortex and also then allows wireless programming.

  9. mhayes

    Dec 6 Hong Kong

    @tabor473 I still think the learning curve with PROS will be easier.

    What age were the students when you used PROS, and did they have any prior programming experience? We are limited to a semester course and they are about 13 years old.
    (Personally I think PROS is the coolest option; real C and close to the hardware.)

  10. mhayes

    Dec 6 Hong Kong

    @jpearman You could also try using the programming kit that connects to the controller, that's far more practical to use than direct A-A cable to the cortex and also then allows wireless programming.

    I did try using the programming kit with wine and it was better than the A-to-A cable in that I could at least see the logical serial devices; I could see the USB device in .wine/dosdevices and also in /dev, but still could not access the physical device. (Using the A-to-A cable I could not see the logical devices.)

  11. mhayes

    Dec 6 Hong Kong

    @jpearman The fundamental problem is that the cortex is not quite a standard serial port. I wrote a driver back in 2013, but ...

    I do recall reading about that in another thread, and thank you for that effort. I suppose I could give the old driver a try via RobotMesh.
    PROS is sounding like the cleanest way to avoid windows.

  12. jpearman

    Dec 6 Moderator, ROBOTC Tech Support, V5 Beta Moderator Los Angeles 8888

    @mhayes I could see the USB device in .wine/dosdevices and also in /dev, but still could not access the physical device.

    ok, if that's the case using the old Mac cortex driver isn't going to help. ROBOTC does some USB enumeration at a lower level than just accessing COM ports, I suspect that's also an issue with an emulator such as wine.

  13. tabor473

    Dec 6 V5 Beta Tester OYES, WPI

    @mhayes What age were the students when you used PROS, and did they have any prior programming experience? We are limited to a semester course and they are about 13 years old.
    (Personally I think PROS is the coolest option; real C and close to the hardware.)

    If the goal is ease of use above all else. It is possible that just using robot Mesh in browser is the best answer. It is all in python and comes with a built in simulator that is quite impressive.

    @John TYler sales pitch activate.

    For the C options, arduino is going to have more unimportant stuff that needs explainings than PROS. PROS handles interrupts, pinout and pwm writing for you for example. One issue I have with arduino is the information you are going to find online is all written for different audiences, often assuming knowledge of embedded systems or C++.
    Some people would disagree but I think starting learning with C is better than C++. (I just like the feature set being small for beginners)

    For ease of use for 13 year olds I would probably rank
    ROBOTC > PROS > Arduino
    ROBOTC only gets first because it has the nicest debugging workflow

  14. sazrocks

    Dec 6 Arizona 2114V

    @mhayes We are a 1-to-1 macbook school; students own their computer; thus, we are eager to dump windows.
    Presently we have a some old Macbooks with windows installed; these machines are used just for running robotc. Students do not take these machines home. Not an ideal situation.

    I can run RobotC in VirtualBox and access the serial port, no problem. But this option would require a Windows license on every student machine.

    Being able to run robotc on wine on macos would be nice, but getting to the serial port does not work. Having said that, the wine documentation says that it should work.

    Another non-windows option is PROS, which I like, but can be a leap for beginners.

    Another non-windows option is replace the cortex with an arduino, and program the arduino with the arduino ide (not robotc). BTW, robotc can target the arduino board, but the code is still composed in robotc.
    So the question is, are there some good resources for composing code in the arduino ide to target the arduino controller (not the cortex). Like PROS, the arduino ide runs on everything, not just windows.

    You can just not activate windows. I do it all the time for temporary installs (as this would be temporary and very limited). The only limitation is a watermark in the lower right corner and the inability to chnage personalization settings. Though honestly it might be better to just use robotmesh.

  15. Joey The Great

    Dec 6 Suspended Maryland 24k

    I didn't even know you could get it on a mac

  16. @tabor473 Nah, you said it nicely. Robot Mesh Studio works on Mac from a browser. We've got Python for Cortex. If you ever do switch IQ or V5, we have Python-based languages for both and C++ for V5 through the same interface.

  17. mhayes

    Dec 7 Hong Kong

    @tabor473 If the goal is ease of use above all else. It is possible that just using robot Mesh in browser is the best answer.

    OK, thanks for the reminder about RobotMesh. Heard about it just recently and will give that another go. Many thanks for all the feedback guys. Seems like PROS and possibly RobotMesh are the most promising non-Windows options.

  18. Deleted last week by mhayes
  19. mhayes

    Dec 7 Hong Kong

    @John TYler @tabor473 Nah, you said it nicely. Robot Mesh Studio works on Mac from a browser. We've got Python for Cortex.

    John - I have RobotMesh running in Chrome on macOS 10.14.1, but it is not connecting to the Cortex to download code.
    The Robot Mesh Connect Extension is installed in Chrome. When I click on Robot Mesh > Options > Install RMC plugin..., it reports that the plugin is installed; it also says to install "the lastest USB drivers and firmware." The link provided goes to the Vex site, VEX EDR Legacy Firmware; but these are all .exe files for Windows. Is there a USB driver that has to be installed in order to use Robot Mesh on macOS?

  20. mhayes

    Dec 7 Hong Kong

    @John TYler Robot Mesh Studio works on Mac from a browser. We've got Python for Cortex.

    I forgot to mention that the macbook I am using has USB Type C ports only. I have a hub hanging off the Type C port, and I plug the Vex A-to-A cable into a Type A port on the hub.

  21. Newer ›
 

or Sign Up to reply!