Driving Miss Daisy-wheel

I got the wireless key-fob working:

Family and friends have been having a lot of fun driving it around.

My end goal is to let the ‘bot talk to a base station connected to a PC. I REALLY want to write an RF bootloader, so I can reprogram without touching the ‘bot. This is the hardware for the base station ( Still need to write the software and firmware):

Deskpet pre-proto

I ordered a Nordic-FOB from Sparkfun to make the coding for the wireless module easier. While I’m waiting, I decided to hack together a pre-prototype of the deskpet using a Baby Orangutan from Pololu, that has an ATMega168 and an LB1836M, the same motor driver that the real board will use. If you want one of those Baby-O’s, get it quick, because they upgraded the motor controller on it, and the old version is going fast. On a good note, they added the LB1836M to their IC page for me, so they should be much easier to get now.

Here’s a pic of the prototype:

P.S. If you are looking for a cool off-the shelf ‘bot, the 3pi from Pololu looks really nifty. Can’t wait until it comes out…

Deskpet Update & Pics

I finished laying out the PCB during lunch today. Maybe I can clean it up and get it out to BatchPCB for fab by tomorrow morning:

I finally got around to taking some pictures of the base:


Deskpet Planning - Part B

1) I picked a battery: 230 mAh LiPo from All-Battery. If I raise the standoffs by about 0.05″ I can fit it between the motors and the PCB or I could add a small shelf to the back end of the frame, kinda like a penny-racer.

2) The IS471F requires 4.5V but I want to run from a max of 3.3V. Looks like I’m going to need to find another solution for proximity detection.

3) Charge pump for the color sensor LED’s: MAX1595? I have used some of the Maxim capacitor charge pumps in the past and they work well.

Deskpet Planning - Part A

I am working on the design for the Deskpet, and decided to build a prototype with a minimal configuration to get started. I plan to use an ATMega128 processor because I have several laying around. Here are the required input and outputs:

Input

  • Color/Line sensor
  • Linear Hall effect sensor
  • 2 way IR proximity sensor
  • Ambient light level sensor
  • Wireless data
  • Battery level sensing
  • Battery charge input
  • Pushbutton

Output

  • 2X Motors
  • Speaker
  • Wireless Data
  • OLED “face”

And here’s what I have so far for each:

Color/Line Sensor:

NECM005 RGB LED and TEMT6000 light sensor

Linear Hall Sensor:

Not sure yet. I like the 3 pin SIP devices from Allegro, but they need 4.5V. I would like to keep everything possible running from a 3V or maybe 3.3V supply.

IR Proximity Detect

2X IR LED’s and IS471F modulated detector. Could also be used for IR homing beacon for charging station. To avoid interference with the proximity detect, sending a specific pulse from the LEDs would trigger the charging station to transmit a response.

Light Level

CDS Cell or TEMT6000 light level sensor

Wireless Data:

Nordic nRF24L01 board from Sparkfun

Battery Level:

Voltage divider to ADC on the main processor

Battery Charging Circuit:

MAX1555 Lithium charge controller

Pushbutton:

SMT Momentary Normally Open SPST

2X Motors:

LB1836M Low Voltage Dual H-Bridge and 2X GM10 geared pager motors

Speaker:

Citizen Micro Speaker from Electronics Goldmine.

OLED “face”:

uOLED96 from 4DSystems. I have an older version than the one shown in the link with 8MB internal flash, and no uSD slot.

Still left to work on:

  • Battery - Size and mounting locations
  • Charging method - How does the robot find & connect to the charger?
  • Decide on a Hall Sensor
  • Find an LED charge pump since the G and B LEDs require 3.6 V

Route 66

I received the display (no pics yet :’( ). It is teeny, but the contrast is really nice. Last but not least, I just finished the routing of the PCB and should be sending it out for fab at BatchPCB by Friday.


I have three “airwires” left. The auto router choked on this board, so this was the best I could do manually. I added some vias so I could solder a jumper in to connect the nets.

Which switch is which?

I haven’t been working on the Pocketwatch much because I am waiting for the display, and I have been rather nervous about constructing the encoder/switch with my limited mechanical abilities. But tonight I was putting off starting the last Harry Potter book (Don’t tell me! I haven’t read it yet! *fingers in ears* NAH NAH NAH) and I decided to head into the lab and fiddle around. I ended up picking up the pocketwatch and constructing the switch mechanism. It actually turned out rather well, nice and smooth, not wobbly. It still needs finishing, but here it is:

switch1 Switch2

The tiny disc magnet is glued into a slot in the plastic shaft on the left. The bushing is made from a drilled out and turned down 2-56 nylon standoff. Pressing down on the shaft engages the tactile switch with a satisfying *CLICK* and spinning the shaft will cause the hall effect sensors to sense the rotation.

The encoder started as a sketch:

encoder1

Then Prowler50mil on the Steampunk Tactile forum suggested using one magnet and two hall sensors. Great idea! I built up a demo to try it out:

http://www.robotguy.net/tn_pw_encoder_test.jpg http://www.robotguy.net/tn_pw_encoder_test2.jpg

Lo and behold, it works!

The display is on it’s way

I ordered the OLED last friday. The US distributor was out of stock, so I had to order from Australia. Here is a 1:1 mock-up I did to get an idea of the display size:

http://robotguy.net/tn_pw_mockup.jpg http://robotguy.net/tn_pw_mockup2.jpg

I spent quite a while on Sat. night grabbing pics of pocket watch dials from eBay and resizing them.

SP-PDA update

I went to the local antique fair today and found this pocket watch case for $5:

I have also started a power budget:

Power Budget

The good news is that I found a 300mAh battery that fits in the case along with the electronics, so I should get 4.7 hours of runtime and/or 18 days on standby before I need to recharge the battery.

OLED info and demos

There is a demo of the 128 x 128 OLED here. It has the same drivers as the 96 x 64 version that I am using. Check out the unicorn animation near the end. I am hoping I can animate an imp and have the option of having a Dis-organizer.

Disorganizer