How do I connect my sphero ollie to my Mac OSX? - ruby

I'm trying to play with the ruby artoo gem. To do this, I need to first register the device with my bluetooth adapter on my Mac. I've opened the system bluetooth settings, my bluetooth is on, but scanning produces no results.
I'm unsure if I need to do something to my ollie first to turn it on and make it discoverable.
I've tried playing with the node cylon-ble-scan tools and poked around at some other projects, but nothing has worked so far.
Any clues?

You can't find it on your typical scanner because your Ollie uses BLE, or Bluetooth Low Energy. Try finding a BLE scanner such as LightBlue, and you will be able to connect to it.

Related

How do you disconnect a Bluetooth device in a Windows driver so that Windows doesn't lose it's pairing?

I'm currently working on a Windows driver for Nintendo Wii remotes and I want the PC to be able to disconnect the device without removing it's pairing. I know this behavior exists since my mouse is capable of doing it. What I want it to do is, when looking in Devices and Printers, the device should show as grayed out when off/out of range. Unfortunately I can't find any documentation on how to do this, either because I don't know what this exact behavior is called or because it's never clearly stated in the documentation. Does anyone have any idea how this is implemented?
EDIT: Realized this was probably not a Bluetooth specific feature since printers also make use of this and removed the Bluetooth tag.

Arduino not connecting to computer after working before

I bought my Arduino Uno R3 a few months ago. It's been working like a charm since then, but today, it stopped interfacing with my computer. Let me be more specific. I have a 2013 Macbook Pro Retina with OS X 10.9 (Mavericks). It has the latest Arduino IDE installed.
I was using it today and after uploading a simple sketch (it worked for a little while) my Mac stopped recognizing it, and since, I haven't been able to access it. The LED connected to Pin 13 stays on 100% of the time. The RX/TX LEDs don't flash, but the main functions of my sketch (other than the serial functions).
Have I screwed my Arduino's Serial chip? What can I do? I am only 15, so another $30 is a little bit too much to spend to get another one.... :)
Thanks!!
UPDATE: I forgot to mention that I have tried my other Windows computer, and another cable, just to rule out those possibilities.
That is a very common issue with Arduino. I used to face that problem all the time while using Arduino. Though I never really found a solution for this, the problem did go away after sometime. Did you try resetting the uC using the reset button on the board, or restarting the IDE or your system if neither worked?
Make sure you have chosen the right COM port. On a windows system you can do this by going to device manager and look for the ports tab under it.

Force bluetooth legacy pairing in Windows 7

I recently acquired a Bluetooth headset (Philips SHB9100) for my smartphone, but also wanted to use it with my Windows 7 PC, so I bought a cheap USB Bluetooth adapter without noticing it was a v2.0 adapter, while the headset is v2.1 + EDR.
The USB Adapter installed correctly on Windows 7, and I am able to discover my headset, but when they try to pair, an ugly Error 0x80004005 appears, never asking me for a PIN.
After some googling, and founding many people had this pairing problem, I read that the major improvement in Bluetooth v2.1 is SSP, which permits pairing without the need to enter a PIN, and also that Windows 7 chooses the "best pairing mechanism" automatically. And so I started to suspect that this is what's happening:
Windows discovers a SSP capable device.
Windows tries to pair with that device using SSP.
The USB Adapter, being v2.0, is unable to permit pairing with the headset via SSP.
Windows does it's best showing a 0x80004005 error.
I searched for a v2.1 or superior USB Bluetooth Adapter in my city but couldn't find any (I'm from La Plata, Argentina) and even though I think I'll end buying one, I'd like to make this work, or at least know for sure why the devices aren't pairing.
And so my question is (and I swear I did some more googling before asking here):
Can I force Windows to try a legacy pairing with my headset?
Any info on the subject is welcome.
Thanks!
I recently faced a similar issue and after a lot of trial and error together with research, I finally fint a compatible driver. I downloaded a few drivers from the intel site and tried it with each one of them. Finally I was able to fix my issues with the driver below.
https://communities.intel.com/thread/103579
https://downloadcenter.intel.com/download/26191
This link can also help with the issue, worth sharing.
https://superuser.com/questions/471767/bluetooth-headset-pairs-and-appears-in-sound-devices-but-shows-as-disconnected

Pairing Sphero with Windows 8

To make the dev process a bit more efficient, I"m seeking to pair Sphero with my PC. My PC doesn't seem to find the device so that I can pair to it. Does anyone have any advice for getting this to work or know that it won't?
Looks like this was an issue with the bluetooth drivers for the motherboard. I updated the drivers for the ASUS Z87-PRO and can now see the Spheros device.

Custom USB Driver for Windows? Mac?

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?

Resources