Monday 23 April 2007

Double chicken and egg

My spiral saw arrived at the weekend. Although it was dispatched the day after I ordered it, it took another 17 days to get here from Yorkshire. For some reason Business Post could not find the address. Have they never heard of Google maps ?!



Although it was only cheap it does seem to have pretty solid bearings so looks promising for routing. At 600W and revving at 30000 RPM it should rip through most things. I just hope my z-axis motor is strong enough to lift it at 1.6Kg. If it can't then I may have to counter-balance it with a weight and a pulley or else use a bigger motor like this one for example.



I don't have any torque data for it but, at 85mm diameter, it looks beefy.

I plan to make the extruder body by milling this material.



I don't know what it is but it seems very hard and rigid. My best guess is that it is some sort of epoxy type resin with possibly a metallic filler - it has a bit of a sparkle to it. I might be completely wrong though. Anybody know what it is?

The chicken and egg problem is that to make the extruder I need to use the router, but to make the router mountings I could do with using the extruder!

It speaks, but my PC has its fingers in its ears

I almost got UDP working this evening. I wrote a simple Python test script to send a "get status" command to HydraRaptor. Here it is :-
   from socket import *

# Set the socket parameters
hydra = "10.0.0.42"
inPort = 21000
inAddr = (hydra,inPort)
outPort = 21001
outAddr = ("localhost",outPort)
buf = 1024

# Create sockets
sendSock = socket(AF_INET,SOCK_DGRAM)
recvSock = socket(AF_INET,SOCK_DGRAM)
recvSock.bind(outAddr)
recvSock.settimeout(2.0)

# Send a get status command
cmd = "\x12\x34\x56\x78\x00"
if(sendSock.sendto(cmd,inAddr)):
print "Sending message ....."

# Receive the reply
try:
data,addr = recvSock.recvfrom(buf)
if data:
print " Received message '", data, "'"
except:
print "Read failed"

# Close sockets
recvSock.close()
sendSock.close()
HydraRaptor replies with its x,y,z coordinates and the number of steps remaining. The reply packet arrives at my PC which then sends an ICMP destination unreachable (port unreachable) message back. I have no idea why. netstat -ad shows :
  UDP    shuttle:21001          *:*                                    2412
[Pythonwin.exe]
Which looks to me to show that the port is being listened to. I have tried turning my firewall off but that made no difference. I am sure the problem is at the PC end because Ethereal shows me that the packets are well formed. I have had enough for this evening. Any Python socket experts out there? I have never done sockets in Python before.

It speaks!

HydraRaptor just replied to ping, so that's PHY, MAC, ARP, IP and ICMP working.

Pinging 10.0.0.42 with 32 bytes of data:

Reply from 10.0.0.42: bytes=32 time=1ms TTL=128
Reply from 10.0.0.42: bytes=32 time<1ms TTL=128
Reply from 10.0.0.42: bytes=32 time<1ms TTL=128
Reply from 10.0.0.42: bytes=32 time<1ms TTL=128

Ping statistics for 10.0.0.42:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms

UDP next.