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

Поделиться
HTML-код
  • Опубликовано: 28 сен 2024

Комментарии • 73

  • @tinayoga8844
    @tinayoga8844 Год назад +1

    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. ruclips.net/video/u0eKCRtysro/видео.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.

  • @ToriKo_
    @ToriKo_ Год назад +1

    I think the vision for this project is perfect and so commendable

  • @saveplanet3977
    @saveplanet3977 Год назад +1

    Mr.Cogley really enjoy learning from your videos. Once again thank you for disseminating knowledge.

  • @Im_the_Trashman_
    @Im_the_Trashman_ Год назад

    So happy this guy started uploading again

  • @Ziraya0
    @Ziraya0 Год назад +5

    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 Год назад +2

      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 Год назад +1

      @@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.

  • @ValonDragon
    @ValonDragon Год назад +1

    For making your 3D printed part smooth I suggest using woodfiller and sandpaper, then apply some paint to finish it

  • @hrofty
    @hrofty Год назад +1

    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.

  • @watchit9307
    @watchit9307 Год назад

    just never stop uploading please

  • @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.

  • @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.

  • @vortexen3976
    @vortexen3976 Год назад +1

    I would highly recommend using a teesny 4.0. they have essentially the same function as the mega 2560 but a lot smaller

  • @rob57898
    @rob57898 Год назад

    sooo glad youre back

  • @fotmheki
    @fotmheki Год назад

    For the trigger you can use a linear potentiometer instead of a rotary one

  • @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

  • @artshurin
    @artshurin Год назад

    wow new sega dreamcast controller looks so awesome :3

  • @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

  • @luke.perkin.inventor
    @luke.perkin.inventor Год назад

    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!

  • @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

  • @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.

  • @yglnvbrs
    @yglnvbrs Год назад

    I enjoy the lack submarine jokes

  • @StormBurnX
    @StormBurnX Год назад +4

    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

  • @RooMan93
    @RooMan93 Год назад

    Those triggers look identical to the trigger assemblies found in the (original) Xbox S/Duke controllers

  • @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.

  • @Dust599
    @Dust599 Год назад

    have you not seen the "mega2560 pro" boards? all the pins, much smaller footprint.

  • @stefanguiton
    @stefanguiton Год назад

    Awesome!

  • @ThisTort
    @ThisTort 4 месяца назад

    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?

  • @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.

  • @scottsrcshop
    @scottsrcshop Год назад

    Yo…….. !!!!!!! Ahh I need this !

  • @davidberar5905
    @davidberar5905 Год назад

    What colege did you studiu?

  • @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

  • @el-domo
    @el-domo Год назад +1

    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.

  • @craigpreston4373
    @craigpreston4373 Год назад

    Why aren’t you doing five nights at Freddy’s animatronics?

  • @jonjon3829
    @jonjon3829 Год назад

    i hate console controllers

  • @JohnDlugosz
    @JohnDlugosz Год назад +7

    BTW, the acronym "ASCII" is pronounced as a word, not an initialism. It rhymes with "pass key".

  • @lycanfpv9530
    @lycanfpv9530 Год назад +1

    This is awesome I'm a hand amputee & I've been wantingvto get into building my own 1 handed controller

  • @kevinmcaleer28
    @kevinmcaleer28 Год назад +1

    Thanks for sharing such inspirational projects on RUclips. 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

  • @IRI517
    @IRI517 Год назад +1

    Can you show use how to make a spring lock suit

  • @martincastellano89
    @martincastellano89 Год назад +3

    to improve the soldering a little bit you can use flux (it can be done really easily)

  • @netherstarbuild
    @netherstarbuild Год назад +1

    this looks neat

  • @drumbum7999
    @drumbum7999 Год назад +2

    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!

  • @kyogre342
    @kyogre342 10 месяцев назад

    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?

  • @technomindsindia
    @technomindsindia Год назад +1

    I love it colour and design........ Specially these print layers are more beautiful than the smooth cad design..

  • @TheTuddu
    @TheTuddu Год назад

    Yeahhhhhhhhh dammmmmm ......... something fresh to watch......

  • @J0SHUAKANE
    @J0SHUAKANE Год назад

    Solidworks would make your life a lot easier.

  • @AlynneTheFlorifant
    @AlynneTheFlorifant Год назад

    Welcome back???? It's been years!!!!!
    EDIT: I'm so hecking happy for news

  • @madcatandrew
    @madcatandrew Год назад +1

    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.

  • @bartekdabrowski4224
    @bartekdabrowski4224 Год назад +1

    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.

  • @HassanAhmed-zw2lt
    @HassanAhmed-zw2lt Год назад

    How can I write to you, my friend, to report someone stealing your content?

  • @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.

  • @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.

  • @laupetre
    @laupetre Год назад

    I would suggest switching from the arduino mega to the teensy 4.1 , it's way faster, and has plenty of pins

  • @themakesmith4322
    @themakesmith4322 Год назад

    Yes! He still uploads!!

  • @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

  • @marcusrenaud1817
    @marcusrenaud1817 Год назад

    @willcogley hi will it be possible to get the heart files , thank you

  • @lycankid
    @lycankid 9 месяцев назад

    are there any updates on this project?

  • @HassanAhmed-zw2lt
    @HassanAhmed-zw2lt Год назад

    Great content

  • @sapiosuicide1552
    @sapiosuicide1552 6 месяцев назад

    Incredible

  • @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.

  • @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!

  • @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 Год назад +1

      If he wants to send a full range of 256 possible values, then it just changes which characters he needs to escape.

  • @NoContextAIs
    @NoContextAIs Год назад +2

    Will, thank you so much for coming back!! We’ve all been waiting for your videos so much!🫡🤙🤙