Falcon 500 - Too Fancy?

Too Fancy?

The Falcon 500 looks like an awesome technological step. The tight integration of the electronics looks like it will deliver some powerful improvements in performance.

But I am wondering if we are going in the wrong direction.

With the programming languages of choice for the robot’s main controller, the roboRio, moving toward higher level languages that are not well suited for real time control, due to high level services like garbage collection, there is more push to move the control systems to the motor controllers, which are “black boxes” outside of the customization of the students.

It’s like FRC is moving towards LEGO Mindstorms. I feel this may be a lost educational experience. For example, I’ve always been against using provided ‘PID’ controllers. That’s something the students should write themselves. I’ve always encouraged the students to write electrical current limiting software based on the motor EMF and measured motor speed. But that now is relegated to black-box features of the speed controllers, that often don’t implement it in the manner expected.

I am excited about the Falcon 500. My concern is really more directed at the black-box ESC (motor controllers) that implement control loops, software/firmware current limiting, and vague algorithms like those that report position and velocity measurements without timestamps.

A primary objective of FIRST is education, and I think we are missing the opportunity to learn fundamental engineering.

Is too much being implemented for the students?


Don’t buy it.


For us, as long as we have students interested in writing vision code, we won’t buy the limelight. Similarly, if you all want to impliment all the items that newer motor controllers have, don’t use those features or stick with the PWM modes of these controllers. I don’t think this is for FIRST or the market to regulate, rather your team.


My job is robotics, and every day, I experience the fact that building a robot involves a lot of different competencies. In FRC, some kids learn to machine, others learn to CAD. Some learn software engineering skills, others learn the physics behind why PID works. There’s an endless number of things that FRC students can learn. These products give you more choices of what to teach.


I think that FIRST is more about having the students get a taste of multiple forms of engineering on a basic to intermediate level, rather than diving deep on a specific topic. I personally value students learning the overarching concepts of why things work the way they do, then solving the problem using that rather than doing the exact same thing but getting into the nitty gritty.

I wouldn’t consider learning how to make your own PID controllers fundamental engineering, but I would consider making a decision on the benefits and costs of making your own control loops vs using ones that work fine from a black box in order to meet the requirements of the project a fundamental engineering concept.


Should they extrude their own aluminum too?

Every technical advancement that lowers the barrier to entry in FRC has enabled more students to gain exposure to important STEM concepts. More students are now able to become exposed to control loops and the theory behind them because of these motor controllers. I for one think that’s fantastic. Adam hit the nail on the head… if you don’t want to run your program like that, don’t buy the motors.


For me it’s just like off the shelf gearboxes. One could make the argument that not having to design custom gearboxes takes away from the student’s learning, but in my eyes it just allows us to focus on other aspects of mechanical design instead of having to “waste” a lot of time designing a custom reduction.




Is Lego Mindstorms bad for kids? I missed that


So why don’t you use machine language instead of labview/C+/Java to program in?


Or Python with real time software like Adept.

I get your point. FRC is a lot more difficult to be proficient in nowadays, compared to when I started in it 19 years ago with drill motors, a BASIC Stamp based controller, and a Small Parts Catalog. A part of me misses that. Back then things were a lot simpler, and we still learned tremendously valuable lessons about engineering. The technical burden was not overwhelming. We wanted to understand how things worked, and largely we did.

These days, the technical complexity of FRC is such that your average high school math or science teacher or even volunteer engineer mentor could not become proficient in it all.

The counter point is though, the world of engineering is full of complicated things, and we should expose students to them, to let them rise to the challenge of figuring them out.


There’s almost nothing that is the same as it was in 1992 anymore, regarding the level of technology involved or the methods of transmitting knowledge. Back then I wrote my thesis paper on a typewriter using books I got through the college interlibrary loan system. I may wax nostalgic for that era sometimes but those days are gone.


That doesn’t really solve the whole issue; if a team wants to remain competitive, they’re going to take advantage of the best options available. What the introduction of controllers like this does, then, is on average introduce a tradeoff between the competitiveness of a team and the experience it’s able to offer its students. Yes, there are ways around that, but the ability of teams to substantively teach their students outside of the yearly build/competition loop varies.

Larger teams can usually afford to more spend time and effort – both on the part of students and mentors – on exploring these topics than smaller/poorer teams can. Even mid-sized teams generally have to focus on those projects that most impact their chances of success, so when you remove the competitive edge of something like developing more advanced controls, those teams will by and large drop that from consideration.

Saying that FIRST can still give people a ‘basic’ taste of programming would still be correct, but as much as I’ve heard this idea passed around, it’s clear that the program’s marketing – both as conducted by FIRST itself and as promoted by individual teams – presents FRC as much more than that. The market for extracurricular organizations has gotten a lot more competitive in the last few decades, and in my opinion, while FRC is still just about the best way for most highschoolers to learn broader engineering concepts, mechanical engineering, and project design/management, it’s begun to fall behind in terms of promoting programming, and seems to have broadly deprioritized getting students into control theory, and in that area there aren’t really many alternatives. I certainly never would have gotten into the field if it hadn’t been for my experiences in FRC, and the same would apply if I were a student today.


You’re right, I see now.

We should extend this further and ban COTS fasteners. Too many teams are passing on the educational opportunity provided by designing your own thread form.


By the time these high school students get through college, AI will have come up with a new control theory and we wont have to manually tune our loops anymore! Is 900 working on a general intelligence???

1 Like

I think without good mentorship, even with the current state of motor controllers (like Talon SRXs), it can easily take 3-4 years of rigorous testing to get to the point where students can comfortably implement things like current control, PID, Motion Magic, and motion profiling, which I believe are highly advantageous in FRC today.
The fact that hundreds if not thousands of teams each year go the entire season without writing a PID method (not from scratch, just utilizing the Talon to WPIlib stuff) is proof enough for me that there is plenty to learn.
Especially with things like PID, it’s often easier to learn from a high-level perspective and understand what changing each variable does before trying to write the whole thing from scratch. I remember being in high school and struggling with finding enough time for the programming team to even touch the robot, let alone unlock even half the features in a Talon SRX (or a Falcon, today).


I am not a fan of the integrated motor controller, especially in its first run. I know last year we had at least two spark maxes that were defective. I don’t think it’s a good idea for most teams to drop 140$ per unit on untested machinery, no matter how good it looks on paper. I’d wait until people get their hands on em and test them on robots before I would even consider purchasing them.


Can I start with steel or do I need to start with raw iron?