Missing port option in arduino ide - c++

The port option in Arduino Uno IDE is not accessible.
I have win7 32bit, I have tried the installation of driver file arduino.inf, but still it is not working

Probably because windows did not recognize any com ports. Go to device manager and look for COM ports. Check if it shows up there or not.
If not, then that means windows did not recognize it and there is a connection problem

Related

Difference between USB Serial in Windows and Linux

I bought a Variense VMU931 inertial measurement unit (IMU) for a robotics project at school, and I am struggling to get it to reliably communicate with my laptop in Ubuntu. I am using C++ with termios to connect to it using 8n1 no parity blah blah blah. I've tried EVERY permutation of settings I can think of, and I still cannot reliably send commands to the IMU.
I called Variense support and spoke to the engineer that wrote their software, and he said it is a known issue. Evidently it works perfectly in Windows (and the Windows demo software worked fine with my device), but neither of us is aware of a significant difference between the USB Serial emulation in Windows and in Linux.
The constructor at the top of this file shows how I am opening and configuring the port:
https://github.com/jsford/FFAST/blob/master/VMU931/src/vmu.cpp
Any help would be great. I've been tearing my hair out over this!
Thanks!
Use the cu utility for running tests with different parameters.
To debug the issue: run the USB packet capture with Wireshark on Linux directly and also on a Windows VM running in VirtualBox/VmWare. Compare the traffic.
Check which kernel module is chosen and loaded for that USB device. Use /sys/ filesystem for that: this virtual fs has information from kernel about what's used. Also, the lsmod-kind of commands show the kernel module usage. The driver choice for USB depends on something like <usb-manufacturer-id>:<usb-product-id>.
Put some printfs into the kernel module to see where is fails. Use the DKMS build system for rebuilding the kernel module. There is a config file somewhere in Linux to blacklist/whitelist the kernel modules - useful to make sure that the right one is loaded.
That's what I was doing to fix a driver of an USB-serial device.

How to read DIO port?

I am working on a project based on qt 4.8.5 and C++, the system is ubuntu 1404 and the motherboard in the pc was a DL631-c226 (information on DFI.COM ).
In the specification there is a DIO digital input output port 8 bits.
I read and I see every where on the web the simplest command is;
echo 1 > /sys/class/gpio/export
And after that a directory has been created but on my system it is not. Nothing happen even if I send the command using sudo root or root or admin
I get an error message "permission denied".
There is nothing in the BIOS regarding the DIO or GPIO configuration, in the kernel the GPIO is set to YES
I need help to read the value as changed on the pin of the DIO of my motherboard.
The interface to the DIO port is over i2c. Consulting their manual you can see an example of how to talk to it. I suggest you investigate i2c under Linux to understand how to handle it. At the very least you will need to install i2c tools and ensure your kernel has i2c support in it.
Their example: http://www.manualslib.com/manual/725217/Dfi-Dl631-C226.html?page=75#manual

Serial Device Names in MinGW

I am attempting to use GDB to debug a remote target over a serial line on a windows box using MinGW. The target remote command GDB expects a path to a device driver (e.g. /dev/ttyS0) in order to connect to the remote target. There are 4 properly functioning serial ports on my machine, but they don't seem to be visible from MinGW. Is there a way to install them, or is this just not possible in the self proclaimed minimalist MinGW?
I did some searching on MinGW, Google, and here and wasn't able to find anything relevant.
Per #J.J Hakala com ports are just named com1, com2, etc in windows. They are in the root directory so ./com1 works as well. There is no need to install drivers.

linux development on windows

We develop C++ code primarily on a headless linux x64 server with VI. We are provided with windows desktops and I was wondering how others in similar situation work? Do you just use windows to remote into linux box or is there a way to develop on windows.
Two solutions that come to my mind are:
Run a linux VM on windows desktop.
Cygwin. (not sure about it).
Any others?
There is a VIM port for windows. As an everyday user I can say that the experience is seamless, except for using windows path separators.
There are other options to consider:
MSYS supplies you with a set of GNU tools compiled natively for windows, including a shell, ssh/scp
MinGW gets you a Windows port of gcc.
UnxUtilx is another set of GNU tool ports, but with no recent activity.
As others have mentioned, putty gets you ssh/scp, purpose-built for windows.
The only C++ app I currently develop is Qt based and cross platform so I tend to develop in Windows using Visual Studio and then test on linux. For testing on linux I mostly use putty, vi and make but if I need to use a debugger I use nemiver and xming with putty exporting the x session to the PC for xming to render.
Do you just use windows to remote into linux box or is there a way to develop on windows. -- yes mostly I do that.
winscp is a tool that lets you do your text-editing locally in your editor of choice, whether it be emacs for windows or gedit or notepad, and save remotely.
When I worked in an environment like that, I installed Cygwin/X and putty on my windows box. You use putty to connect to the Linux box with the Connection --> SSH --> X11 --> "Enable X11 forwarding" turned on. You
Install Cygwin including Cygwin/X http://x.cygwin.com/ — download the installer, make sure the xinit package is selected in the things to install, and hit go!
Install PuTTY http://www.chiark.greenend.org.uk/~sgtatham/putty/ and enable X forwarding in your session settings. PuTTY will automagically set your DISPLAY environment variable correctly.
Start your X server on Windows (Start -> Programs -> Cygwin/X -> XWin Server ) — you may want to copy this to your Startup group so it runs whenever you log in.
Use PuTTY to connect to your *nix box and fire up an X Windows program — remember to "amp it off" http://www.catb.org/jargon/html/A/amp-off.html.
You can use whatever X programs are available on the Linux machine seamlessly on your local client desktop. You can do it with Eclipse or gvim or kate.
Another thing I've had good luck with is using Samba on the Linux box to share my source tree, and then mapping a drive in Windows to that share, using native Windows tools to edit it.

How to debug a linux C++ program from Windows with Eclipse?

I use a headless (i.e. no screen) remote ubuntu server x64 for developping a C++ application (with no UI either).
I want to conveniently (IDE like, not command line) debug this program from windows (7/64), with Eclipse if possible. I have a windows share between the two and full root access on both machines.
So far I have heard of two solutions :
Remote gdb
Remote X server
I have worked on solution 1 : built a cross gdb, copied my program and libs on windows. I'm able to remote-gdb from cygwin command line, but not from eclipse (stuck at "launching... 85%" with no error message nor log)
I have also worked on solution 2 : installed xauth, set X forwarding, installed xming on my windows, set DISPLAY on the linux box. But no effect "can't open DISPLAY xxx" with no easy troubleshoot.
When googling for those problems, I only find outdated pages or different problems.
Did anyone do it ? Can you share advices or fresh pointers on how to remote debug a C++ linux app from Windows ?
I suggest to install an X11 server on your Windows machine (e.g. Xming perhaps?) and to do ssh -X with some X11 client applications (like emacs, ddd if needed, xterm) on your Linux server. Don't use a complex thing like Eclipse. You could just use emacs (remotely on the Linux server, displaying on the Windows desktop X11 server)...
Once emacs works well (running on the remote Linux server, displaying on the Windows desktop X11 server), you can run gdb inside it.
To get ssh -X working, you need to configure it appropriately. Maybe you forgot that step. To test it, just use ssh -X yourlinuxhost xterm, and work on configuration till that step works.
Of course you could also install Linux on your laptop or desktop, perhaps inside a virtual machine above your Windows.
NB. I never used Windows, but I do know that some X11 servers exist for it.
There is a eclipse plugin RSE (Remote System Explorer), it can pretty much do what you are expecting. The code base can be in linux server, eclipses uses telnet / ssh to login. Execution again can happen on a server, native gdb is used to debug.
You can use the following simple plugin for Eclipse.
http://marketplace.eclipse.org/content/direct-remote-c-debugging
It needs just ssh connection to the server and it cares about anything else