New run of orbshields

SpaceOrb drivers and software discussions
Post Reply
vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

New run of orbshields

Post by vputz » August 18 2012, 16:28 PM

Folks--

It's taking me ages to rewrite the OrbShield for the Arduino Leonardo (my hope being that the built-in USB hosting will make for a more stable USB experience and eliminate some of the problems we were seeing with the old OrbShields). Also, you can take some comfort in the fact that my new motherboard manifests the "buttons work but axes don't" problem, so hopefully I can diagnose better. So the rework is coming, but since Seeed ran out of kits, I've had a few (5-6) requests for a shield that I can't fulfil, and that bothers me. As such, I'm doing a small run myself.

This next run will be a "production process" run, and instead of going through Seeed, who honestly have been great (and I would recommend to anyone), I am going to try and do the production myself, mostly to learn about the whole process more. This also means I'll have more kits in hand and might be able to assemble and test some for people who want that.

This'll still take a lot of time (hoping a month or two), and in that intervening time I'll try to hack the leonardo a bit more (the good news is that I think the old-design shield will work on a leonardo, just ignoring the USB port). So hopefully there'll be some progress there, but the next two months are going to be pretty full of my transition overseas. So--don't hold your breath, but if you've been frustrated by the shortage of shields, at least know there's some relief coming.

Whew! Crazy times.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » August 19 2012, 20:29 PM

Juuuust kidding. I have a better idea.

I did the part costing and it wouldn't be any cheaper for me to make a run of boards than to have another run done through seeed. I *may* do that, but I have a better idea.

I loved the idea of a shield for the Arduino because it let me do a minimal electronics design and leverage a board that users could use for other things. But it turns out that may have been wasteful. Many people just use the Orbshield as a joystick and never reprogram it, and the truth is there's a lot of hardware on the Arduino board that is an overage; we don't need the power jack, for example; if most people aren't going to reprogram it and just want the BasicJoystick, we can leave off the FTDI chip and leave a header for programming the beastie via a USB-to-serial adapter. Etc.

Inspired by an email conversation with Martin Neumann, I'm going to try and do a single-board design with a lower cost than an Arduino + Shield that's still programmable from the Arduino environment. The specs for the Arduino are online and I'm pretty sure I can manage this after I'm set up in the new area, so it'll still be a while, but it'll be a lot neater and cleaner than the old design, and if it works I may be able to provide a fully-assembled version for a bit more.

Not that it matters to most... but I want to learn this, so it'll be fun to try.

jaycrowe
Posts: 30
Joined: May 27 2007, 9:52 AM
Contact:

Re: New run of orbshields

Post by jaycrowe » October 15 2012, 20:48 PM

The messageboard is back online. I apologize for the outage... I had my web server (I use the term "server" very loosely) crap out. I built a new machine and restored the boards, but failed to remember to set the static IP on the new machine so that it could be found via the web. No wonder its been so quiet on here. :wink:

clutch
Posts: 2
Joined: December 04 2008, 17:16 PM

Re: New run of orbshields

Post by clutch » October 27 2012, 17:13 PM

So...I'm back. And I work for the company that makes the OS in question, as a field engineer for Windows. As such, I was wondering how this is playing with Windows 8 (I've found some games I genuinely enjoy that might make my 3 Sporbs useful again) and I'm catching up on the hardware interface to make this go. Badass. :-)

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » November 26 2012, 15:06 PM

Clutch: Slow going! I lost a month or so in the transition to England. I think this should play with Win8 just fine, since it's meant to be just a HID device, but I haven't tested it yet.

For news: I'm back online, having finally moved into a house here but no room for a proper workshop so it's been sluggish. I've put together a schematic of a bare-bones arduino board and will do a PCB test of that, then add the OrbShield stuff. The new device should be significantly smaller and cheaper but still use the "fake a USB device" schematic--I wanted it to still be a kit, rather than something that required surface-mount chips like the new versions of the ATMega chips (which unfortunately do USB much better).

The advantages: smaller, cheaper, will not require a separate Arduino. Disadvantage: I'm looking at selling them preprogrammed with the "basic joystick" sketch, but reprogramming them will require a FTDI cable; you can get these for about $10-$15 online. I did that to make the part itself much simpler, and because many people will not need more than the six axes and six buttons and will just reprogram those via joytokey or some such. Since the new device will be a single board rather than a "sandwich", I'll also try to make a simple plexi "case" which will make the whole thing more reliable and "nice" feeling. I'm hoping that the simpler design will also eliminate the errors people were seeing that frustrate me to this day.

Disadvantages: the need for an extra cable for programming, and I had hoped to have a better USB solution. But my focus is "simple and cheap", and preferably something that people can build. I am also going to try to make a SMD "complete board" for sale for somewhat more, since that seems to be a request (and would allow me to test them before shipping).

I'm also going to try to set up a web store and take orders directly, which has its hazards, but I'm finding that I've sold more of these than expected and have no idea who's bought them, which makes it tricky to get updates out except via this board.

Really sorry for the delays; I've wanted to get back to making things for a while, but it took some time to find a place to live and I still haven't quite gotten things like my mill set up, found a new PCB source, etc. Darn that "have to have a real job" thing!

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » December 03 2012, 16:00 PM

Breadboarded a minimal arduino today and it worked right the first try. Started putting together the serial driver. The big question is if the software interrupt-driven serial driver can play nice with the V-USB interrupt-driven USB schematic. If not, we're back to the DIP switches of the original if I want any debugging. Still, it's progress, and more than I've made in a while.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » December 09 2012, 13:23 PM

Made contact with the orb again, ie made a TTL-to-RS232 circuit out of the Max3232 (the previous orbshield used the Max233, which eliminated a bunch of capacitors on the board but cost several dollars more). Man, was that ever painful! Took forever to figure out out why I wasn't receiving anything.

So, to recap, we have the two biggest "chunks" of the circuit planned out, ie the microprocessor to do the thinking and the serial converter to do the talking. One more "big chunk" remains (the USB part) but that should be pretty easy since I can lift it almost verbatim from the original.

Integrating everything will be relatively easy, but one big question I still need to answer is if I can put the orb on a different part of the processor than the i/o line used to program it. It'd be nice if I could, because then debugging would be a lot easier, but we'll see if interrupts permit.

Hopefully I can get the new board blocked out tomorrow, but my mill isn't up and running so prototypes will take a while.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » December 18 2012, 2:53 AM

Having a teeeny bit of trouble, but I think I can work through it.

I'm actually a bit puzzled. I made a circuit which talked to the orb using a TTL-to-serial converter, and that worked OK. I then made another circuit that talked to the Atmega chip (the "arduino chip"), and that worked OK. But connecting the two is giving me trouble--specifically, powering the serial converter and the orb seems to screw things up a bit. The orb pulls a bit more current than expected, so maybe this particular serial converter isn't allowing enough through--or more likely I have something connected strangely. It's still coming along, just slow going! I'll try a bit more tonight.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » December 18 2012, 3:26 AM

Nevermind; sorted. That's good progress actually, though I'm not 100% sure why the fix fixed it. Okay; can communicate with the orb, can debug to the computer. Just need to get the USB running and it'll be time for a prototype board. Whew! Not sure it'll happen before Christmas but I'm motivated now ;)

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » December 18 2012, 15:56 PM

properties_win8.PNG
properties_win8.PNG (15.84 KiB) Viewed 7650 times
Man, this is PAINFUL :)

Without my mill working, I'm having to breadboard everything, and honestly I don't have much skill or patience for breadboarding, so it's all shaky and bad connections. But:

1) The orb can talk to the processor
2) The debug serial port can show what the orb is saying
3) Without the orb attached, I've at least got recognition of the new "orbduino" and it's transmitted its device descriptor under Windows 8 as a USB device
4) I cannot get all these things working at once, but it's time to start making boards so this gets more official.

You can take a look at what I'm working with and see why I'm having a little difficulty :) Lots of connections doing lots of dodgy things. I need to build a prototype board so I can make this more sensible. There's a place here that may do that for me; I think it may be beyond what my wee mill can manage.

But behold, progress!
properties_win8.PNG
properties_win8.PNG (15.84 KiB) Viewed 7650 times
properties2_win8.PNG
properties2_win8.PNG (13.14 KiB) Viewed 7650 times
IMG_20121218_204157.jpg
IMG_20121218_204157.jpg (204.45 KiB) Viewed 7650 times

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » January 08 2013, 15:20 PM

Okay, back to work. Prototype PCB came in but something's still off with the USB side of things (and with the serial side, but I'm more confident I can fix that). I'll do another round of development this weekend and try again. The proto's a little on the large size; I'd like to get it shrunk down quite a bit.

Man, this is harder than it should be! :)

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » January 08 2013, 18:08 PM

Serial port was wired backward because I chose the wrong gender for the socket on the PCB. Sigh. Fixed. Okay, only thing that doesn't work now is the USB side of things. Still hoping for prototypes by Feb.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » January 12 2013, 9:02 AM

MADDENING! I used a ceramic resonator for the timing, and was plagued with erratic connections (like 1 in 100 times it would seem to work) until I finally looked in the source code for the USB library:

Code: Select all

General Description:
This file is the 16 MHz version of the asssembler part of the USB driver. It
requires a 16 MHz crystal (not a ceramic resonator and not a calibrated RC
oscillator).
Damn, damn, damn. But that's OK, this will wind up a tiny bit cheaper than before. I am going to drop the debug LEDs and compact the board a bit. I'm actually feeling better about this, although the new board is getting a real excess of 0.1 uf capacitors. New prototype request will go out this weekend if I can make these changes.

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » January 12 2013, 15:28 PM

Home stretch. Replaced the resonator with a crystal and capacitors, fixed the USB schematic and tested with an old OrbShield, and got full response on all axes/buttons with a SpaceOrb. I'll clean up the design, shrink the board, and send off for a new prototype. Hurrah!

vputz
Posts: 339
Joined: March 25 2006, 20:21 PM

Re: New run of orbshields

Post by vputz » January 17 2013, 18:06 PM

Okay, new prototype board came in today; looks nice and tidy, and it's a three-day weekend. If all goes well ("the breadboard worked fine!"--famous last words), I'll send out for beta manufacturing by the beginning of next week, maybe get the laser-cut "cases" ordered or at least designed, and hopefully getting boards to testers by end of month. Will try to put together a web store as well, just for the experience.

One advantage of the new build is that it does not require an Arduino (that's "built in" to the board)--the good part being that it saves you $30 for an arduino. The bad news is that without the Arduino's USB-to-serial adapter we now need a $15 usb-to-serial adapter. I may be able to make it programmable via the onboard usb, but no promises there; the FTDI cable is probably a better bet. If you have an old Arduino, you can probably use it as an FTDI cable, actually; may try it if I have time.

Post Reply