• feather-weight,  melty brain

    Feather-weight Mental

    A few weeks ago the Australian Robotic Sport Club announced they would be hosting the 2024 Australian Open Feather-weight Nationals in January. Daniel decided that I should enter a 12kg version of my Ant-weight Mental. So without asking he started designing the robot and entered it in the competition. He has no idea about how to get a Melty Brain to work or what electronics are involved. He told me he will build the robot and hand it over to me to put in the electronics. The design is a scaled up version of my ant-weight and is a single wheel design. For cost savings reasons it will have 2…

  • ant-weight,  melty brain,  Raspberry Pi Pico

    New PCBs

    New revisions of the Melty Brain controller and Radio Direction Finder PCBs have arrived from PCBWay. The Melty Brain controller now has 4 ESC outputs plus analogue inputs. The RDF board is a 4 layer board for the impedance matching of the RF inputs. I have also switched from using WiFi via an ESP8266-01 to a NRF24L01 to control the robot. This means a whole new controller is being worked on.

  • ant-weight,  melty brain,  Raspberry Pi Pico

    Radio phase detection for calculating robots rotation speed

    When designing a Melty Brain robot controller the most important thing is to be able to measure the rotational speed in real time. The measurement can be done from an external source or an onboard source. An external source could be a sensor or camera outside the arena that is watching the robot and then reports the current speed to the robot via radio. An onboard source of measurement would be a sensor on the robot looking for an external reference. Examples of an onboard measurement that I have considered are measuring the wheel rpm, IR detector looking for a IR LED on the side of the arena, a non-rotating…

  • ant-weight,  melty brain

    Mental – Ant-weight Melty Brain design

    I have been working on my first competitive Ant-weight Melty Brain called Mental. The Ant-weight class is both the cheapest and easiest to build robot weight class due to the 150g weight limit. Due to the weight of the robots Ant-weights can be reliably made from 3D printed components. However the 150g weight limit makes designing complicated Ant-weights challenging. The idea of building a Melty Brain was to have a mechanically simple robot that has a minimum amount of moving parts. This idea plus the 150g weight limit restricts the size and/or the number of drive motors the robot can have. So to take the idea of a mechanically simple…

  • Raspberry Pi Pico

    Raspberry Pi Pico W DMA conflicts

    I have been programing a Raspberry Pi Pico W in MicroPython but have had some issues with the controller locking up. I had written some code that outputs a Dshot signal via a PWM channel. The code used a DMA channel to transfer the variable length pulse data to the PWM control registers. A second DMA channel then resets the first DMA to start the next data frame. I tested the code with a Blheli_32 ESC and all was well. I will give more details once I have done some more work on it but that is not the issue here. After I got the basic Dshot routine working I…

  • Raspberry Pi Pico

    Raspberry Pi Pico PWM via DMA using MicroPython

    Background – why do I want to use DMA in Python on a Raspberry Pi Pico anyway? I have been planning a project for a while that requires some fancy motor control. Without going into the specifics I need to be able to update a motors torque multiple times per second. This has been a back-burner project for years but recently I was looking at the new blheli_32 brushless motor controllers that are available. These motor controllers are designed for racing quadcopters that require high speed motor torque changes. So I have ordered one. The blheli_32 firmware is compatible with many input signals for the throttle. These include the standard…