Getting Help

While this manual aims to provide you with information about how to get started, resources to learn more, and pointers to additional sources of information, its entirely possible that you will encounter a problem that you need help to solve. Recognizing that a problem is beyond your current skill level and seeking advice is the first step on the path to being an expert in a topic.

There are several places that you can get help for components of the Gizmo ecosystem. Before you head off to these places, however, please take a moment to review the information below on asking good questions.

  • Don't ask an XY Problem. When you get stuck, its really easy to get stuck in the thought process of "If I could only figure out how to do X I could achieve Y." This kind of thinking can lead to asking questions about X that are totally unrelated to Y. When you ask a question, try to provide a clear description of what you want to achieve, not how you think you'll achieve it.

  • Clearly describe what you've tried so far. There's a reason most technical support conversations start with asking if you've tried turning it off and back on again. Simple solutions can fix a myriad of problems, so be sure to try some basic troubleshooting steps on your own first (check batteries, verify software, etc). When you ask your questions, this will help those answering to not waste your time with things you've already tried.

  • Describe the setup of your environment and your configuration. For hardware problems this is going to include at minimum a description of the exact fault. The problem is never "it doesn't work" its always going to be more specific such as "a motor controller connected to port 2 doesn't seem to be able to go into reverse." For software problems, be sure to include information about the versions you have installed, your operating system, code that you're trying to make work if applicable, and anything unusual not described in this manual that you may be trying. Its also a good idea to see if you can replicate the problem in different configurations (does an earlier version of your program work, does it work on another computer, etc).

  • Ask your questions to the right people for the right problems. The Gizmo platform is made up of some custom components and a large number of Open Source components. While the Gizmo team is happy to read any problems you send, we may need to point you to a more appropriate forum where other experts can provide you with more specialized help and support. The sections below will describe the kinds of problems that you may encounter and where you'll get the best support.

Gizmo Specific Problems

Gizmo specific problems are, we hope, extremely rare. However just like the rare sighting of a black swan, they do occur. Problems that are specific to the Gizmo platform include anything physically wrong with a controller, any issues with the driver's console, and problems with the gizmo tool. For problems with the Gizmo itself, we make use of GitHub Discussions which provides a forum experience. You can seek help in our forum here. Don't worry if you don't know what category to post into, our team can always move the thread if it fits better in a different category.

Gizmo FMS Problems

Gizmo FMS problems are specific to the control and network layers of a Gizmo enabled Field Management System (FMS). If you are running a competition, you will have been provided specific contact information to use to receive real-time support with the FMS. If you are planning to run a competition and wish to engage this level of support, reach out in the Gizmo forums above and we'll get you in touch with the right people.

Arduino IDE and Arduino Code

For issues with the Arduino experience that are not related to the Gizmo library you may wish to go directly to the Arduino site. There you'll find documentation on the Arduino IDE, the language specificiation, all libraries that are available, as well as information about the Arduino Forum and Discord chat where you can talk to other people using Arduino to get help, advice, or even just to learn from other projects people have built.

Circuit Python

If you are programming your Gizmo with Circuit Python, a wealth of knowledge and resources exist on the main Circuit Python website. From this site you can use the forums, join the Discord, or read tutorials that will expand your understanding of the Circuit Python environment.