I'm absolutely stuck here. I want to program a micro controller (Arduino Pro Mini and later native AtTiny85) from my mac using Arduino IDE 1.6.12. I need to use a usb to serial converter as the micro controllers in question do not have a usb interface. I purchased an Arduino usb2serial converter and attached it to my mac, but unfortunately the serial interface does not show up in the Arduino IDE :-(
From searching the web, it seems like the problem is that no serial driver can be loaded. So first I made sure, that the rootless configuration is put in a state, that necessary kext extensions can be loaded:
csrutil status
System Integrity Protection status: disabled.
Next I tried various hints rom the web saying I needed to install FTDI Support - so I got myself libusb, FTDIUSBSerialDriver and DFU-Programmer and installed everything - which worked flawlessly.
Nevertheless, my serial connection is not shown in the IDE and I can't pull any board information. Has anyone any idea???
I attach some links, so people may be able to follow my path of thinking:
Micro Controller: Arduino Pro Mini
USB2Serial Converter: USB2Serial converter at exp tech
Related
I have a custom ESP32-S2-based circuit board with USB-C which does not have a USB-serial converter IC like a common dev board might. On this board, USB(-) is on GPIO19, and USB(+) is on GPIO20. USB works great for powering the board and for uploading firmware.
The board works well and I have access to good old-fashioned serial console via a USB-to-logic level serial interface, but it would be nice to be able to get serial out to USB along with the firmware upload (like a dev board).
I’m using PlatformIO in Visual Studio Code, and writing with arduino-esp32 rather than ESP-IDF.
I understand by these instructions from Espressif that when using ESP-IDF I can configure log output to go to USB CDC rather than UART, and this has been done successfully on my custom board. But I would like to be able to do this without having to switch over to ESP-IDF.
I’m presuming that one of the partitions that PlatformIO is building for me is this configuration with some nice common sense defaults, but I can’t see how I might alter those defaults to do what I’m looking for.
Any thoughts or pointers?
I have a Metrologic MS1690 Barcode scanner that I'm trying to use with Windows 8.1, I get a Unrecognized Device: Device descriptor request failed error in devices and printers. The scanner gets no power from the computer when it is plugged in because of this. It usually shows up as a usb keyboard in windows 8 and 7, but with 8.1 it does not and I can't find an answer anywhere. Please help! Or even if someone could tell me how to get a generic usb keyboard driver for this thing that may help as well. Thanks.
The scanner gets no power from the computer when it is plugged in
Bit of a guess, but there was a change in Win8.1 that can affect HID devices like this. Such devices are now suspended when no application or service is accessing it. This can cause the device to misbehave if it depends on receiving timely power to operate correctly.
The workaround is to disable Enhanced Power Management for the device. The instructions are pretty elaborately spelled-out in this blog post. At break-neck speed: use Regedit.exe, locate the device in the HKEY_LOCAL_MACHINE\ SYSTEM\ CurrentControlSet\ Enum\ USB key and set the EnhancedPowerManagementEnabled value to 0.
The "solution" for me has been to add a PCI-E USB card, and use that for the scanner. I went with this one from Rosewill because it uses an NEC chipset which I have heard good things about.
After installing the provided drivers for the PCI-E card, the scanner seems to enumerate consistently (I have only been able to test it for a couple days so far).
According to the person I bought my scanner from, it's an issue with the USB chipset on the motherboard. Some are compatible and some aren't. If I had to do it over again, I would go with an RS232 cable and a power adapter instead of USB. I haven't tested that setup, but if your app needs serial data like mine does, it should be more reliable given that it's not dependent on the vagaries of integrated USB chipsets.
I ran into a problem when using Silicon Labs' CP2102 USB-UART bridge controller. Silicon Labs offers an application for changing USB related configuration values (PID,VID,Device Description...) so I changed the VID value to the ones assigned to me by the USB-IF Administration. All fields appear to have been correctly updated (I ca see that in Device Manager) but Windows reports that there are no drivers available. Before changing the VID/PID and device description everything worked well.
Any idea how to tell Windows to use the same drivers as before? Is it possible or perhaps even normal for a driver to be tied to a specific VID/PID and by changing it I basically "broke" the controller unless I write my own drivers?
OS: Windows 7
USB-UART Controller: Silicon Labs CP2102
More information about the controller: http://www.silabs.com/products/interface/usbtouart/Pages/usb-to-uart-bridge.aspx
Thank you in advance for all your help.
Take a look at the Driver Customization Wizard (AN220SW). If you create a driver with a matching VID and PID as your customized device you can get it to load again (as well as re-customize back to default, or something else). The documentation for this is in Application Note 220.
I would like to create my Kinect development environment and am contemplating using iMac as the box with Windows 7 installed as dual boot and/or parallels.
Has anyone tried this configuration earlier and does it work?
Running Bootcamp(dual boot) works with windows 7/8 Parallels does not.
I have a macpro 1,1 and a mac air both work with bootcamp(dual boot).
The only thing that could cause it not to work is the USB configuration. Kinect requires that it be connected to a USB host controller and not a hub. I believe all of the iMac's USB ports are host ports so I don't believe this to be an issue. If you use the Kinect Sensor Chooser control built into the WPFViewers sample app it will tell you if that particular problem arises (insufficient bandwidth).
Parallels will not work with the SDK at the time of this writing due to driver. Kinect is not an official USB device and the driver requires direct communication with the Kinect. I hoped that this would be resolved with the official Kinect for Windows hardware but alas it was not.
You might want to look at native OSX Kinect development using OpenKinect
http://openkinect.org/wiki/Getting_Started
If you don't want to have to write all the image processing code yourself, and are working in C#, you could start with the Accord library:
http://accord-net.origo.ethz.ch/
I'd like to modify a USB driver to send and receive USB data over a network.
Take for example, an iMac and a PC. I have an iPod plugged in to my PC (in NY). I want my iMac (in LA) to recognize the iPod as plugged in to a local USB port and be able to communicate with the iPod.
Forget my qualifications, or lack thereof (I have background in web, iOS apps, I've toyed with Java and C).
Where can I get source code for a USB driver for Windows that I can modify? Mac OS?
Any tips or pointers towards accomplishing my goal would be appreciated as well.
It looks like folks are coming up with something close to what you want. If you do decide to roll your own, the USB driver source you asked for is libusb.
On the Mac OS X end, drivers are built up in a stack. What you want to do should be relatively simple (nothing is really simple in kernel land). You need to create a driver that can communicate over ethernet with the PC and looks like a USB device to the driver matching software. Then everything else will happen automatically.
The source code is available for Apple's USB stack. You should also read about the IOKit API and IOKit device driver guidelines and IOKit fundamentals.
Oh yes and you say you have toyed with Java and C. To write device drivers on OS X, you'll need to learn some C++.
I suggest you to go see USBIP project. This is available on Linux and Windows, but not clear for MAC. If you can get a VHCI-Controller driver installed for MAC, we can kick start USBIP for MAC.
Sounds quite like this product, a bit unsure if theirs works over wide-area networks though.
I have a general idea of how I'd go about it, but not any specifics. Basically, I'd use the platform's driver development kit to write a USB device emulator on the client machine. I'd then add a virtual device to that system called "Networked USB Host", or something similar that maintains an open port to listen for communication from the server and passes it on to your virtual USB device. IIRC, the Windows DDK comes with a USB simulation framework that might be able to help you with this.
On the server, you'd have to hook into the USB subsystem to send raw USB packets to the client machine. libpcap and wireshark have USB capturing facilities for that, but I'm not sure if this works with winpcap and the Windows version of wireshark as well.
EDIT: Look at this for cross-platform USB capture alternatives.
You can buy OSR USB learning kit: https://www.osronline.com/custom.cfm?name=index_fullframeset.cfm&pageURL=https://www.osronline.com/store/index.cfm
This is actually small USB device with known interface. Windows Driver Kit (WDK) contains sample KMDF driver for this device: http://www.microsoft.com/whdc/driver/wdk/
This is good starting point to learn Windows Drivers development, and USB drivers development specifically. However, it is still far away from your problem solution.
Can't you use some sort of Remote Desktop?