Building a Programmable Robotics Controller With XBee, Arduino, 3D Printing and PCBs Part 1

  Рет қаралды 11,057

Will Cogley

Will Cogley

Күн бұрын

Here's a fully programmable, battery powered, arduino controller which uses XBee to communicate wirelessly with any project you can think of! It's a work in progress, check back for the final thing!
PCBs for this project made with JLCPCB: $2 for 1-8 Layer PCBs, get JLCPCB $54 new user coupons jlcpcb.com/?from=will
Support me on Patreon! / nilheimmechatronics
Discord Server: / discord
Contact: enquiries@willcogley.com
GitHub: github.com/ikkalebob/NM-bioni...
MatterHackers site: www.matterhackers.com?aff=7517
MatterHackers Silver PETG: www.matterhackers.com/store/l...
MatterHackers Tough PLA White: www.matterhackers.com/store/l...
Chapters:
00:00 Building a Programmable Robotics Controller With XBee, Arduino, 3D Printing and PCBs Part 1
01:23 Motivation
02:17 Electronics
03:26 PCB Design
05:44 CAD Design
07:07 XBee
10:06 Next Steps

Пікірлер: 73
@tinayoga8844
@tinayoga8844 Жыл бұрын
More on surface mount. When a manufacture shows the pad size for a part they are assuming the solder will be paste applied through a stencil. JLC does offer a stencil service at a great price. But a stencil is not required for low density boards that don't use fine pitched components. (back to the pad size) The suggested pad size is often the minimum. It is assumed you want to cram as much together as possible. But if you are hand soldering a board it really helps if the pads are made oversized. I extend the pads where the soldering iron will be used to contact the pad. It helps to have an extra mm or two. It is more work modifying the footprints but it is really worth it when it comes to assembly. Even more so if you need to do any rework later. Maybe replacing a faulty switch. (more on this below) The soldering iron tip you used was ok but a finer tip would be desirable if you have difficulty soldering the parts. Smaller diameter solder also helps. I forget if I mentioned it in the last video but lead free solder sucks. 63/37 tin/lead solder has a lower melting point. It is what was normally used in industry before the EU put restrictions on imports of commercial products that used it. Lead free solder needs a higher temperature to work and even when it does the results look crappy in comparison to the leaded solder. I think you did a pretty good job in the design. It is always difficult getting multiple layered parts to fit properly together the first time. The 3D printed housing looks like crap. That's just the way it is with the layer lines. When you get the parts fitting the way you want then it would be worthwhile to put some effort into improving the surface before paint. Sanding, filler, repeat, sand then paint, the sand, then paint. I love the ability 3D printing gives us but it takes more effort into making it look good. Here is a video for inspiration. kzfaq.info/get/bejne/q5aVfqaD2d_XoqM.html Cheap surface mount tactile switches. At one point we changed to some cheap switches. They were less than half the cost of the mane brand switches we used for more than a decade. We were buying 10,000 at a time so there was a significant saving, at first. The problem was the plating on the internal contacts. We found that after a while they were becoming intermittent. High humidity environments were part of the problem. We ended up switching to another brand (still cheaper than the first one we originally used) and we haven't had the problems since. Odds are you will probably not have the same issue but if you do you want to be able to replace them. (easier to do with leaded solder and larger pcb pads) As far as a smaller CPU board. I am a hardware designer. While I have done some programming for microcontrollers for products I am not a programmer. At one point I wanted to get back to doing home projects I decided to use the Arduino IDE because it was so easy to get started with it. The hardware was dirt cheap. There were tons of libraries, some good, some less so. I mainly use the ESP8266 and ESP32 modules because of the wifi capability. But I have also looked at the STMicroelectronics STM32F103C8T6 CPU used on a hobbyist board generally called the "Blue Pill". It has 32 IO pins available and I think it would be a good replacement for the large ATmega board. It is a 3.3 volt processor rather than 5 volts of the AVR parts. There are clones of the STM32F103C8T6 par being used on some versions of the Blue Pill boards. I have read they are ok, but have some differences compared to the original part. I don't have any experience with them. The "Black Pill" boards use a more advanced processor, STM32F411. The black pill boards only have the original part as far as I have read. I have some of these boards but have not had the time to use them in anything yet. They are higher performance than the STM32F103C8T6. Both are faster CPUs than the old microcontroller used in the ATmega board. If you were to use one of these the slower blue pill board would be better for you as it would use less power. Keep these in mind when you come to the point where you want to change to a smaller CPU board.
@StormBurnX
@StormBurnX Жыл бұрын
I love the idea of using a 3D printer for rapid prototyping the controller body (large layer size for fast printing) and then once it's dialed in nicely, creating a final version with really fine layer height (long-ass print but incredibly smooth) and then resin-dipping it for that ultimate surface smoothness... just my thought from seeing the thumbnail, anyway, time to watch and see what happens :D
@ToriKo_
@ToriKo_ Жыл бұрын
I think the vision for this project is perfect and so commendable
@drumbum7999
@drumbum7999 Жыл бұрын
I just so happened to be fiddling with an esp32 and ps5 dualsense controller to control my robot right this very moment and just seen you uploaded this video. Brilliant!
@saveplanet3977
@saveplanet3977 Жыл бұрын
Mr.Cogley really enjoy learning from your videos. Once again thank you for disseminating knowledge.
@dadbear5316
@dadbear5316 Жыл бұрын
I've wanted to make a controller like this for a long time, but never actually had anything to use it for. This looks great!
@mikhailpavlovskiy4100
@mikhailpavlovskiy4100 Жыл бұрын
Will, thank you so much for coming back!! We’ve all been waiting for your videos so much!🫡🤙🤙
@AlynneTheFlorifant
@AlynneTheFlorifant Жыл бұрын
Welcome back???? It's been years!!!!! EDIT: I'm so hecking happy for news
@rob57898
@rob57898 Жыл бұрын
sooo glad youre back
@kevinmcaleer28
@kevinmcaleer28 Жыл бұрын
Thanks for sharing such inspirational projects on KZfaq. I created a new Robot (Bubo-2T) based on the eye mechanism you shared how to build. I'm based in the North West too, probably a bit further west of Leeds than you! Thanks again @WillCogley
@lycanfpv9530
@lycanfpv9530 Жыл бұрын
This is awesome I'm a hand amputee & I've been wantingvto get into building my own 1 handed controller
@Im_the_Trashman_
@Im_the_Trashman_ Жыл бұрын
So happy this guy started uploading again
@vortexen3976
@vortexen3976 Жыл бұрын
I would highly recommend using a teesny 4.0. they have essentially the same function as the mega 2560 but a lot smaller
@themakesmith4322
@themakesmith4322 Жыл бұрын
Yes! He still uploads!!
@madcatandrew
@madcatandrew Жыл бұрын
I am loving the Mega 2560 Pro Mini, that might be another thing to consider. Using one to drive a head with your eyes and mouth, some cat ears, and neck motors currently. Same number of pins but much more compact.
@hrofty
@hrofty Жыл бұрын
Very nice project! I love when people explane their thougt process insted of just showing the final desing. For Analogue trigger buttons i strongly recommend using Hall Effect sensosrs and a magnets, Its much simplier and robust design then using pots. Ben Heck constantly rants about it in his vodeos and he have designed built and hacked hundreeds of controllers.
@ValonDragon
@ValonDragon Жыл бұрын
For making your 3D printed part smooth I suggest using woodfiller and sandpaper, then apply some paint to finish it
@netherstarbuild
@netherstarbuild Жыл бұрын
this looks neat
@technomindsindia
@technomindsindia Жыл бұрын
I love it colour and design........ Specially these print layers are more beautiful than the smooth cad design..
@watchit9307
@watchit9307 Жыл бұрын
just never stop uploading please
@fotmheki
@fotmheki Жыл бұрын
For the trigger you can use a linear potentiometer instead of a rotary one
@martincastellano89
@martincastellano89 Жыл бұрын
to improve the soldering a little bit you can use flux (it can be done really easily)
@stefanguiton
@stefanguiton Жыл бұрын
Awesome!
@sapiosuicide1552
@sapiosuicide1552 3 ай бұрын
Incredible
@Inappropriatematt
@Inappropriatematt Жыл бұрын
I’ll be watching the progress on this one like a hawk. Had nothing but issues with nrfs. I just have to make one small enough to hide in my hand. Luckily it won’t need as many outputs.
@simonl7784
@simonl7784 Жыл бұрын
there are hall sensors that are 3pin and emulate a potentiometer. Because of their great sensitivity, you could mount magnets directly on your shoulder triggers. Cheers
@sephirothbahamut245
@sephirothbahamut245 Жыл бұрын
You can use a Teensy 4.1 instead of an Arduino. It's way smaller, it has incredibly greater processing performance, and has more analog pins than even the largest arduino that I'm aware of.
@HassanAhmed-zw2lt
@HassanAhmed-zw2lt Жыл бұрын
Great content
@artshurin
@artshurin 11 ай бұрын
wow new sega dreamcast controller looks so awesome :3
@TheTuddu
@TheTuddu Жыл бұрын
Yeahhhhhhhhh dammmmmm ......... something fresh to watch......
@Ziraya0
@Ziraya0 Жыл бұрын
edit: see madcatandrew's comment, mine has been made obsolete. The Arduino Mega is a lot bigger than it needs to be, I think you've demonstrated the skills to take a whack at taking the design files and adapt them into a different form. Especially if you used some internal layers, I think you could eliminate almost all of the empty surface area, potentially compacting the Mega by half. You could save some area by replacing the large sockets and the reset button with headers, which would also let you use remote sockets, placed wherever in the housing is externally appropriate, say on the side so you can have it plugged in while sitting normally on a surface. It might even be practical to fit all of these components onto the PCB that carries your joysticks; but I think you would find more uses for a compact mega in your projects
@standegrande3330
@standegrande3330 Жыл бұрын
Another good alternative would be something like a teensy 4.1 or an esp-32... They're already very small so you would not need to deal with the hassle of designing a µC by yourself. And a nice bonus is that they are a LOT more powerful :D
@Ziraya0
@Ziraya0 Жыл бұрын
@@standegrande3330 Smaller and more powerful but the Teensy has far fewer pins exposed compared to the mega, which seems to be a concern. There is the Adafruit Grand Central, a Cortex based Mega formfactor board, but it has a lot more components, and because the Cortex M4 operates at a higher frequencies, 120MHz instead of 16MHz, the trace layout has to be better to avoid noise problems. I think you could just take the public design files for the mega and make a compacted mega one step above trivially; but making a compacted M4 microcontroller board with 50ish pins, that is also any smaller than the mega, is going to be a challenge for most people, and a significant amount of labor for experts. That said, I very loosely remember certain M4 chips being capable of nearly 100 pins, 80~ GPIO. The sky's your oyster or whatever. I just think these are two very different endeavors.
@laupetre
@laupetre Жыл бұрын
@@Ziraya0 A Teensy 4.1 has plenty of pins: 55 digital input/output pins, 35 PWM output pins 18 analog input pins
@cavemaneca
@cavemaneca Жыл бұрын
@@laupetre slight correction, but that's the total number of IO for the chip used on the Teensy 4.1 The board itself only breaks out 41 GPIO to the edge of the board. A further 10 pins or so are available if you jumper wires directly to some SMD pads on the board. This is probably enough IO though for what Will is doing.
@nathaniel7778
@nathaniel7778 Жыл бұрын
As a cosplay builder i can say that you should print parts standing up so all the details are in walls and not as top latest. That way it's way cleaner and its easier to sand and paint for a clean finish. Hope that helps
@bartekdabrowski4224
@bartekdabrowski4224 Жыл бұрын
For smd soldering use flux, it makes it a lot easier and by a lot I mean the difference between soldering something in 30 secs and breaking the board.
@unpotatoedsalmon
@unpotatoedsalmon Жыл бұрын
You could have the atmega2560 soldered onto the io board and potentially add a rp2040 on the side and replace the 1.2 oled display with a colored variant, if not replace the rp2040 would have a much better time processing data over the atmega
@luke2642
@luke2642 Жыл бұрын
Xbee looks simple but it's crying out for a wrapper library API where you can just send floats, strings, int arrays etc asynchronously and it just works and updates local variables or fires event handlers at the other end!
@IRI517
@IRI517 Жыл бұрын
Can you show use how to make a spring lock suit
@nardhb
@nardhb Жыл бұрын
Maybe it's easyer to use a hall effekt sensor for the triggers on the back. It woud reduce to only one movig part with a magnet and the sensor on the pcb. Maybe thats also the reason they dont sell it anymore.
@transistorbrains
@transistorbrains Жыл бұрын
Get yourself some decent magnification and your soldering will become a lot better. Also, SMD soldering has a steeper learning curve, but once you get it, it’s actually easier than through hole soldering
@yglnvbrs
@yglnvbrs Жыл бұрын
I enjoy the lack submarine jokes
@kyogre342
@kyogre342 7 ай бұрын
I’m trying to make something like the gmk keyboard joystick or the maxxstick (just look it up). Any idea what i should start with?
@laupetre
@laupetre Жыл бұрын
I would suggest switching from the arduino mega to the teensy 4.1 , it's way faster, and has plenty of pins
@scottsrcshop
@scottsrcshop Жыл бұрын
Yo…….. !!!!!!! Ahh I need this !
@TradieTrev
@TradieTrev Жыл бұрын
Reminds me of a n64 controller. That's a slick design, might give James Bruton some new ideas compared to his boxy controllers.
@RooMan93
@RooMan93 Жыл бұрын
Those triggers look identical to the trigger assemblies found in the (original) Xbox S/Duke controllers
@Dust599
@Dust599 Жыл бұрын
have you not seen the "mega2560 pro" boards? all the pins, much smaller footprint.
@kashyapkoshti
@kashyapkoshti Жыл бұрын
You can easily do smd soldering by just replacing the tip of solder iron. Believe me it makes huge difference
@santosvella
@santosvella Жыл бұрын
Interesting use of start/finish chars. I've done work with tcp level coms which make use of STX hex 02 (Start of test) ETX hex 03(End of Text) and EOT hex 04 (End of transmission). For avoiding conflicts with visible chars maybe have a look? Pros? Avoid the logic you use in managing . The control chars are there for the reasons you need.
@JohnDlugosz
@JohnDlugosz Жыл бұрын
If he wants to send a full range of 256 possible values, then it just changes which characters he needs to escape.
@EnnTomi1
@EnnTomi1 Жыл бұрын
i was just wondering, there is a market on controller thats still vacant. a competitive FPS controller, basically solving double claw problem. if you are able to design such thing with off the shelf parts, that should be a great start. since it is actually a market gets overlooked by all the companys.
@ThisTort
@ThisTort Ай бұрын
hello! where did you guet the xbox cad drawing?
@bitsRboolean
@bitsRboolean Жыл бұрын
Have you used a Xbox Elite controller before? You've got so much space on the back I almost wonder if you could put in some paddles. How the it stands on the battery means you're not laying it down and accidentally clicking them either. Oh and what did you use for your battery contacts? I used some steel for a similar project but I'm worried about corrosion.
@NicksStuff
@NicksStuff Жыл бұрын
Smooth trigger => hall effect sensor?
@marcusrenaud1817
@marcusrenaud1817 Жыл бұрын
@willcogley hi will it be possible to get the heart files , thank you
@JohnDlugosz
@JohnDlugosz Жыл бұрын
BTW, the acronym "ASCII" is pronounced as a word, not an initialism. It rhymes with "pass key".
@Niocio01
@Niocio01 Жыл бұрын
Take a look at teensy's they use the same Arduino ecosystem, is much more powerful, more compact while still hawing access to loads of I/O's.
@davidberar5905
@davidberar5905 Жыл бұрын
What colege did you studiu?
@Lorem_ipsum_dolor_sit_amet
@Lorem_ipsum_dolor_sit_amet Жыл бұрын
I recognized the 128x64 SSD1306 display straight away. Recently I've been hacking away at the Adafruit library for it, removing unnecessary library functions I don't need for my current project to save space for other libraries (SPI.h references for instance). Have you thought about using an ESP8266 or an ESP32. Small, powerful, WiFi/Bluetooth/ESPNow wireless interface, lots of GPIO (even more if you use an I2C or SPI adapter) and in the case of the ESP32, non volatile memory and two cores for two separate threads.
@Lorem_ipsum_dolor_sit_amet
@Lorem_ipsum_dolor_sit_amet Жыл бұрын
Before I forget, look into the pcf8574 for expanding IO using I2C. Even if you're using an Arduino nano or an AIthinker ESP32 Cam board, you can massively expand your available IO using a few of those chips and they come in either tht or smd packages.
@lycankid
@lycankid 6 ай бұрын
are there any updates on this project?
@J0SHUAKANE
@J0SHUAKANE Жыл бұрын
Solidworks would make your life a lot easier.
@PrinzMidas
@PrinzMidas Жыл бұрын
But with four dualsticks and no action buttons and no dpad, I would miss something and not use it for videogaming. By the way, it looks much heavier than common controler.
@HassanAhmed-zw2lt
@HassanAhmed-zw2lt Жыл бұрын
How can I write to you, my friend, to report someone stealing your content?
@craigpreston4373
@craigpreston4373 Жыл бұрын
When will you get interested into doing for five nights at Freddy’s animatronics?
@sammymiller6740
@sammymiller6740 Жыл бұрын
wow this was 3 days ago most youtubers i know of has stopped making videos since the flu went viral
@jonjon3829
@jonjon3829 Жыл бұрын
just get cracked version of nx or catia, why even bother paying if its not commercial
@craigpreston4373
@craigpreston4373 Жыл бұрын
Why aren’t you doing five nights at Freddy’s animatronics?
@el-domo
@el-domo Жыл бұрын
no no. How you solder is problematic and wrong. You move the tip and move it. Don't do this. Heat, melt, keep heating, then move avai. that's it.
@jonjon3829
@jonjon3829 Жыл бұрын
i hate console controllers
How to Build Your Own Biomimetic Bionic Hand
15:00
Will Cogley
Рет қаралды 80 М.
Top Fifteen Mistakes People Make When Designing Prototype PCBs
12:26
Cosplay Light and Sound
Рет қаралды 133 М.
Luck Decides My Future Again 🍀🍀🍀 #katebrush #shorts
00:19
Kate Brush
Рет қаралды 8 МЛН
버블티로 체감되는 요즘 물가
00:16
진영민yeongmin
Рет қаралды 101 МЛН
孩子多的烦恼?#火影忍者 #家庭 #佐助
00:31
火影忍者一家
Рет қаралды 41 МЛН
Must-have gadget for every toilet! 🤩 #gadget
00:27
GiGaZoom
Рет қаралды 12 МЛН
I built a rover using a Raspberry Pi & Arduino
16:56
Lukas Deem
Рет қаралды 162 М.
Open-source Industrial Robot Controller Part 2: Starting Over...
23:31
Excessive Overkill
Рет қаралды 220 М.
Testing and Benchmarking my Bionic Hand - Biomimetic Bionic Hand
11:28
Biomimetic Bionic Hand - Forearm and PCB Experiments
8:05
Will Cogley
Рет қаралды 39 М.
I 3D Printed a $1,224 Chair
23:56
Morley Kert
Рет қаралды 109 М.
Худший продукт Apple
0:53
Rozetked
Рет қаралды 173 М.
Как слушать музыку с помощью чека?
0:36
Main filter..
0:15
CikoYt
Рет қаралды 14 МЛН
ИГРОВОВЫЙ НОУТ ASUS ЗА 57 тысяч
25:33
Ремонтяш
Рет қаралды 325 М.