by PaulL » Mon May 26, 2014 10:34 am
by PaulL
Mon May 26, 2014 10:34 am
Thanks, Pat! Sometimes I lag a bit, but things are still moving forwards - would be nice if I could get paid to do this kind of work!!
Yeah - the board isn't what it used to be... But, for now, I post here. I've tried elsewhere, some forums have too much drama.
Update:
I've been working on the boards, I sent off all 9 designs for fab, ordered 3 paste stencils (multiple boards on 2 of the 3), and ordered parts for all yesterday.
The number of changes are many, and the power and control boards got reworked a bit as well. It took longer than I would have liked, but sometimes the rest of my life demands some time.
Changes:
* Found a problem with servo header height with plugs (dual USB jack on the SBC), so they'll be right-angled out the back.
* Moved switches and LED's from the control board to a switch and LED panel.
* Examined voltages of the PC Header, figured out how to get rid of the optocoupler.
* Added an OR gate for TX lines from foot and hand controllers.
* Changed controller board outline to route a few wires by it.
* Reworked the layout on the power board, it's a bit cleaner now.
* Reworked a number of routes on the control board. I relocated the laser actuator and power signals.
* Moved a filter cap from the power board to the control board, reworked the 3.3v trace on the power board.
* Reworked tStop and bStop layers, reworked polygons, etc, on the power board.
* Made a PC header board to connect to the signals there.
* Routed HDD LED signal through the control board and up to the Switch and LED board.
* Moved power inputs for body servos towards the fan on both sides (closer to the 20A DC to DC converter), increased servo pin header spacing.
* Built a board to connect 4 sets of power, gnd, tx, rx for hand and foot controllers, this same board breaks out power, gnd, PWM for neck servos.
* Finished the foot controller board (same board for either side).
* I managed to find an undocumented "I'm on" signal from the SBC, that should be handy for monitoring when it's OK to shut down the power.
Lots of small changes, but they're done and off to fab. I'll be building a total of 10 boards:
* Power
* Control
* Left Hand
* Right Hand
* Rx / Tx / Neck Servos
* PC Board Header
* Switch and LED
* Left Foot
* Right Foot
* Programming Board
I spent a good bit of time making sure the board-to-board and board-to-component wiring will work out.
Metalwork-wise, there are a few changes needed as a result of these boards:
* Top Plate needs Switch and LED cutouts and board mounting holes.
* Control Board needs revised alu bracket across the front of the SBC.
* Back Panel needs different cutouts for servo wires and such.
Otherwise, mechanically, everything should be OK as it is / was.
So, until the boards and stencils and parts get here, I'm back on firmware and / or mechanical work. I can code up just about every function I need using the V1 control and power board, except for the multi-processor comms, and I could do that with a few Maple Mini's.
The STM32 has a "multiprocessor" mode, I'm using the control board as host with the 4 other STM32's (feet and hands) as slaves. I'll probably just packet forward from the SBC instead of working out some different code for sending data to the slaves - I'll still have to poll for readings from the main STM32, though. Whatever I end up doing, it's all software, no hardware changes will be needed.
I still wonder if I'm going to run out of CPU on the main STM32, it's going to have a lot to do, and not a whole lot of RAM to do it with. I don't know how many moves I'll be able to store, 33 servos invokes quite a few data points.
What I'm not doing (for now):
* For now, nothing fancy with the foot controllers (FSR's), just an LED and an MPU-9150.
* LED's on the fingertips - I doubt it would work well. Maybe if I notch the bottom side of the UHMW blocks in the fingers, but that's not optimal either. I can always revisit later if I change my mind. I do have LED's for each knuckle.
* Charging Circuit. I just have nowhere to put one. Maybe once he's built I'll find a little room but I doubt it. For his charger, I'm thinking I'll set up a base for him instead with charger built in (after I get tired of manually recharging batteries).
The main thing left is to copy some dimensions from the boards back to CAD and re-cut the top plate, back plate, and front plate (this one needs the SSD mounting holes). I already know I made the battery covers too short, but those aren't a big deal.
A pic (sorry for the resolution, I sized everything to the smallest image OSHPark sent - the controller board).
Thanks, Pat! Sometimes I lag a bit, but things are still moving forwards - would be nice if I could get paid to do this kind of work!!
Yeah - the board isn't what it used to be... But, for now, I post here. I've tried elsewhere, some forums have too much drama.
Update:
I've been working on the boards, I sent off all 9 designs for fab, ordered 3 paste stencils (multiple boards on 2 of the 3), and ordered parts for all yesterday.
The number of changes are many, and the power and control boards got reworked a bit as well. It took longer than I would have liked, but sometimes the rest of my life demands some time.
Changes:
* Found a problem with servo header height with plugs (dual USB jack on the SBC), so they'll be right-angled out the back.
* Moved switches and LED's from the control board to a switch and LED panel.
* Examined voltages of the PC Header, figured out how to get rid of the optocoupler.
* Added an OR gate for TX lines from foot and hand controllers.
* Changed controller board outline to route a few wires by it.
* Reworked the layout on the power board, it's a bit cleaner now.
* Reworked a number of routes on the control board. I relocated the laser actuator and power signals.
* Moved a filter cap from the power board to the control board, reworked the 3.3v trace on the power board.
* Reworked tStop and bStop layers, reworked polygons, etc, on the power board.
* Made a PC header board to connect to the signals there.
* Routed HDD LED signal through the control board and up to the Switch and LED board.
* Moved power inputs for body servos towards the fan on both sides (closer to the 20A DC to DC converter), increased servo pin header spacing.
* Built a board to connect 4 sets of power, gnd, tx, rx for hand and foot controllers, this same board breaks out power, gnd, PWM for neck servos.
* Finished the foot controller board (same board for either side).
* I managed to find an undocumented "I'm on" signal from the SBC, that should be handy for monitoring when it's OK to shut down the power.
Lots of small changes, but they're done and off to fab. I'll be building a total of 10 boards:
* Power
* Control
* Left Hand
* Right Hand
* Rx / Tx / Neck Servos
* PC Board Header
* Switch and LED
* Left Foot
* Right Foot
* Programming Board
I spent a good bit of time making sure the board-to-board and board-to-component wiring will work out.
Metalwork-wise, there are a few changes needed as a result of these boards:
* Top Plate needs Switch and LED cutouts and board mounting holes.
* Control Board needs revised alu bracket across the front of the SBC.
* Back Panel needs different cutouts for servo wires and such.
Otherwise, mechanically, everything should be OK as it is / was.
So, until the boards and stencils and parts get here, I'm back on firmware and / or mechanical work. I can code up just about every function I need using the V1 control and power board, except for the multi-processor comms, and I could do that with a few Maple Mini's.
The STM32 has a "multiprocessor" mode, I'm using the control board as host with the 4 other STM32's (feet and hands) as slaves. I'll probably just packet forward from the SBC instead of working out some different code for sending data to the slaves - I'll still have to poll for readings from the main STM32, though. Whatever I end up doing, it's all software, no hardware changes will be needed.
I still wonder if I'm going to run out of CPU on the main STM32, it's going to have a lot to do, and not a whole lot of RAM to do it with. I don't know how many moves I'll be able to store, 33 servos invokes quite a few data points.
What I'm not doing (for now):
* For now, nothing fancy with the foot controllers (FSR's), just an LED and an MPU-9150.
* LED's on the fingertips - I doubt it would work well. Maybe if I notch the bottom side of the UHMW blocks in the fingers, but that's not optimal either. I can always revisit later if I change my mind. I do have LED's for each knuckle.
* Charging Circuit. I just have nowhere to put one. Maybe once he's built I'll find a little room but I doubt it. For his charger, I'm thinking I'll set up a base for him instead with charger built in (after I get tired of manually recharging batteries).
The main thing left is to copy some dimensions from the boards back to CAD and re-cut the top plate, back plate, and front plate (this one needs the SSD mounting holes). I already know I made the battery covers too short, but those aren't a big deal.
A pic (sorry for the resolution, I sized everything to the smallest image OSHPark sent - the controller board).