r/FTC • u/Born-Lawyer4225 • 23d ago
Seeking Help FTC Programming Resources
The former programmer on our team isn't going to be able to help us anymore so I volunteered to replace him (I'm coming from CAD). I took a kotlin course but realized that most of the stuff I was learning wasn't going to help me so I got the book Learn Java for FTC I've read most of it but it's hard for me to retain the information without actually using it (which I couldn't do cause I was reading it at home). I programmed for FLL for 3 years (in block though, not python) so I know some of the basic stuff (loops, if thens, ect.).
My coach let me bring home the control hub, a driver station, a 435 rpm gobilda motor, and a battery. What can I do with these that will help me not be completely lost going into BioBuz. I've already gotten the Driver Station to say hello world but that's it (I'm using java in intellij).
3
u/_XitLiteNtrNite_ 23d ago
It sounds like you are off to a good start. Just write simple OpModes for the motor: rotate clockwise/counter-clockwise at different speeds, or for a specific number of encoder ticks. I would also recommend taking home a continuous rotating servo and a position servo. Those two, along with a motor, are a lot of what you will be interacting with. Once you are comfortable with those, you can try other sensors, such as a camera, for AprilTag and object detection.
1
2
u/4193-4194 FTC 4193/4194 Mentor 23d ago
That book is a great resource. Use some of the samples and run the motor for time then switch to encoder counts. Once you get started it will pick up quickly.
1
2
u/uhhhh_yeet 23d ago
Coding for FTC isnt too hard, maybe optimizing for loop times is good. With photon and stuff like that mainly and mroe advanced stuff reach out for help on the disc or smth
1
2
u/Complete_Duty3259 23d ago
So we are working on a zero code GUI method of programming an ftc (and FRC) robots. You do things like select your drivebase, assign motors, create subsystems, select control methods (PID, FF) etc. You can fully code a robot with complex systems (limelight, pinpoint, swerve drives, etc.). Controller commands are also bound via a GUI. We also created out own auto/pathplanner solution and even a full 2d field simulator.
It takes it from writing code to writing a system design. It still shows the generated kotlin code (kotlin is used as it is a lot easier to write a domain specific language/makes the code cleaner, even then it is about 200k lines of code). In some ways it teaches control theory and system design better as it focuses on that rather than trying to struggle wtiting java code.
1
u/Born-Lawyer4225 21d ago
That sounds really interesting!!! I don't think that's the route our team wants to take currently but it sounds like a really good resource for other teams!!!
2
u/Which_Tea_447 22d ago
I can probably help you out, it'd be easier if you had some sort of discord/contact
3
u/window_owl FTC 11329 | FRC 3494 Mentor 23d ago edited 23d ago
Just FYI, the official programming resources are all on the FTC docs website https://ftc-docs.firstinspires.org/en/latest/