Calculators for various robot combat shtuff3D Printing / CNC Machining / Mold-makingNeedle Roller Bearings- These bearings (at least the 3/8 bore one I'm using) will slip-fit over the shaft. They are not press-fit onto a shaft like a ball bearing. (I put this here because nowhere on the web could I find an answer to this question!)
Robot Hints and IdeasWindows 7 File Permissions/Ownership IssuesA re-install of Windows 7 can make file permissions go all wonky; apparently it has difficulty matching an old account to a "new" account (created on re-install) with the same name. Even Administrators won't have the direct power to delete/move/etc certain files and directories. Two things to try: - In the Security tab of the directory (or file) properties, go to the Advanced properties, Permissions tab. Select your account or the Administrators group (presumably your account is part of the latter) and Change Permissions. Make sure you select the checkbox "Include inheritable permissions from this object's parent."
- Take ownership of the file or directory. Make sure you apply the ownership to all subfolders and files.
You may need to do step 2 before step 1. Compaq Armada 1700 laptopbind9, Ubuntu 12.0.4The stub named.conf.options file now includes the line dnssec-validation auto. Now, I'm not the world's foremost authority on dnssec, but I know commenting out that line lets bind9, running on a VMware Workstation VM, forward to VMware Workstation's provided DNS server (usually 192.168.x.2, where x is whatever subnet was assigned to VMnet8). sudoTo allow any sudo'd command to be run without entering a password, do the following: sudo visudo (edits the /etc/sudoers file)- add to the bottom of the file
<user id> ALL=(ALL) NOPASSWD: ALL - save and exit
Some people will say this is extremely dangerous, and it is. I only do it for Linux virtual machines used as educational tools (not production boxes, machines with sensitive info, etc.). In particular, it aids in grading student work. HTC USB Connectors- My HTC REZOUND smartphone has what appears to be a propriety USB connector on it, probably to trick people into buying HTC-branded chargers and cables. It turns out, however, that the jack on the REZOUND (and, presumably, other HTC phones) can accept a standard micro-USB plug (that's the flattest of the USB standard plugs).
Notepad++- I like to configure Notepad++ so that *.ino (Arduino 1.0-and-later) source files use C++ formatting and *.pde (Processing) source files use Java formatting. To do this, go to Settings->Style Configurator... and in the dialog, select the language (C++ or Java) you want to configure and at the bottom in the "User ext. :" box, enter the appropriate extension (ino or pde) without the dot and save.
- This explains how to change the default editor for TortoiseHg to Notepad++. Handy when you want to view a file from an earlier revision (TortoiseHg defaults to using regular Notepad on Windows, but Notepad can't handle UNIX-style text files properly).
MIDIOpenWRTOpenVPN- Error: "Windows route add command failed: returned error code 1"
- Most likely you are using Windows Vista or Windows 7 (or later) and did not run OpenVPN as Administrator. Change the shortcut's properties to Run As Administrator and you should be ready to go.
- An alternate problem, assuming the above didn't work, is that the Windows command ROUTE.EXE is in a place where OpenVPN doesn't expect it. Supposedly adding
win-sys 'env' to your config file should work.
- OpenVPN periodically asks for your username and password to remain connected:
- In your config file (*.opvn) remove or comment out the
auth-nocache line - Be aware this will cache your username and password -- in cleartext! -- in your computer's memory, meaning a trojan/virus/worm/rootkit/etc. could read your password. Best to use a unique password for the VPN connection.
Android Development- Eclipse and the Android SDK:
- when updating the SDK using "Android SDK Manager" you may get an error that the SDK directory can not be moved. Most likely this is because Eclipse has a lock on that directory. The fix is to exit Eclipse and run Android SDK Manager by itself (I found it by searching via the Windows start menu).
- adding a
Fragment to an Activity associated (via setContentView()) with an .xml gui file: this tutorial uses the line
getSupportFragmentManager().beginTransaction().add( android.R.id.content, childFrag).commit();
to accomplish said task. I was having trouble with multiple fragments overlapping each other when the code ran -- best I could tell all fragments were being located at the same absolute (x,y) position instead of being placed one after another as should happen with LinearLayout (the root element of my main.xml file). I fixed it by manually assigning that root an id (here, rootLinearLayout) and changing the above line to: getSupportFragmentManager().beginTransaction().add( R.id.rootLinearLayout, childFrag).commit();
R/C Servo Control Signals (PPM)freeFTPd (freeware sftp/ftp server)- The setup of virtual directories is not explained well:
- folder name is what you want to call it and how it will show to a logged-in user
- virtual path is where it will appear in the logged-in user's directory view
- real path is the actual path-on-disk
- So a virtual directory with folder_name="music" and virtual_path="/john/media" and real_path="C:\temp\faves" would present a directory to the logged-in user with path "/john/media/music", which will allow access to the actual directory "C:\temp\faves"
I2C- Multi-master I2C programming with Arduino
- 0x0 is the general call address -- basically a broadcast of sorts (though with an optional response from interested parties). Wire.h does not seem to use this directly, however you can use Wire.begin(0x0) on many devices and they all will respond to Wire.beginTransmission(0x0). (But maybe it doesn't matter which address you use here?)
- Valid addresses for I2C devices are 0x8 (decimal 8) through 0x77 (decimal 119).
Tech details for PC cooling fans (a possible source of cheap brushless motors + control hardware?) Sources for robot parts- www.robotmarketplace.com (combat robot parts, has stocking issues)
- www.hobbyking.com (robot and r/c parts -- supposedly a good source for "Hong Kong" specials?)
- http://www.fingertechrobotics.com/ (small robot parts)
- www.kitbots.com (small but useful selection, i.e., motor mounds for B16/B62 gearmotors)
- http://www.lynxmotion.com/default.aspx (motors for beetleweight, parts for non-combat robots)
- http://www.pololu.com/ (robot parts -- supposedly make very good electronics):
- servo-mountable wheels w/ encoder stripes
- solarbotics-mountable wheels w/encoder stripes
- small motor drivers (cheap source of ESCs for ant/beetle-weight motors?)
- various reflectance sensors
- www.mcmaster.com (shafts, bearings, pulleys, etc)
- http://seeedstudio.com/depot/ (only place I could find pre-made "jumper cables" compatible with pin-headers)
- http://www.robotshop.com (robot parts)
- http://www.horizonhobby.com/ (robot parts)
- http://www.jamenco.com/ (all sorts of fun electronics, incl. robot parts)
- http://www.banebots.com/ (specializes in combat robot motors & gearboxes)
- OnlineMetals.com via http://www.makershed.com (prices on metals seems to be better than mcmaster-carr)
- ServoCity.com: Robot parts, seems more oriented towards slower, non-combat 'bots.
- http://www.hobbypartz.com/: Another "Hong Kong Specials" store. Can get a 6-channel 2.4GHz radio system for $35 there...
- http://www.theengineerguy.com: lots of raw materials. Bonus: located in Atlanta.
- http://www.sdp-si.com: small mechanical components (gears, pulleys, bearings, etc).
- http://www.vexrobotics.com/vex/products/accessories/motion/276-2193.html: cheap antweight ESC?
Other intersting parts suppliersRaw Materials / Parts for Various Projects| What | Useful For | Sourced From | | 6061 Aluminum | 'bot armor | McMaster-Carr | | Polycarbonate (Lexan) | 'bot armor | Lowe's | | Ultra High Molecular Weight Polyethylene (UHMW-PE) | 'bot armor, 'bot bulkheads | McMaster-Carr | | Wonderflex | vac-forming without the vacuum? | http://www.cosplaysupplies.com/wonderflex/ , http://www.theengineerguy.com/cgi/commerce.cgi?preadd=action&key=WONDERFLEX-SHEET-43- | | PVC sheeting/boards | who knows? it just looks cool | Lowe's, Home Depot | | National Semiconductor LM3914/3915/3916 | driving arrays of LEDs (see next line). Appears to include current-limit resistors in-package = easier connections! |
| | 10-segment LED bar graph | who knows? it just looks cool | Sparkfun.com, Digikey, etc. | | 80/20, MicroRAX | building Al frames | 80/20.com (larger scale), MicroRAX.com (small-scale) | | Rotary Encoder Dial (info and usage) | knob for incrementing values in a microcontroller digitally (instead of analog via a potentiometer). Can detect both direction and distance of the turn. | Mouser Electronics | | Glass-filled Nylon | bot armor? nearly 5x tougher than UHMW-PE... | | | Oilite bearings | one-piece bearings with a porous structure that holds lubricating oil | | | WheelWatcher wheel encoder | | http://www.nubotics.com/products/ww11/index.html | | Magic Sculpt | model making, sculpting | http://www.magicsculp.com/ | | Ureshell Polyurethane Hard Coat | model making, scultiping, props | | | | | |
ArduinoPinout for Lilypad Arduino
(click through for larger version) |
|