Vibe coding is moving projects at a breakneck pace for everyone, whether they’re seasoned programmers or just starting out. But it comes with a catch. AI-generated code isn’t always the better option, and more importantly, it’s not necessarily safe, especially when you’re using it to develop a vehicle control system.
There are tasks you shouldn’t use ChatGPT for, but it’s still reasonably good at vibe coding. So when ChatGPT refused to help me vibe-code an electronic cruise-control module for my motorcycle, I started wondering why. And the reasons it gave me led me somewhere much better.
The project I thought I’d breeze through
A simple idea that felt perfect for vibe coding
My motorcycle lacks an electronic cruise control option despite having the hardware for it, as the manufacturer doesn’t sell the software update required in my country. There are aftermarket electronic cruise control kits available, but I wanted something better integrated, so I decided to make my own.
ChatGPT was more than happy to help me identify the components needed and how I could read throttle and ECU data from the bike’s OBD port. In no time, I had put together a basic electronics package using an ESP32 that could detect button presses on the bike’s switchgear as well as read speed, RPM, and other critical data points required to build an electronic cruise control system.
ChatGPT was actually quite helpful in identifying components required, how to access the bike’s CAN bus data, identifying different inputs, and more. It was also able to spin up a basic interface for the feature on an I2C OLED screen I had lying around.
Then ChatGPT said no
ChatGPT doesn’t say no a lot, but when it does, it’s for good reason
The project was going great until I actually started to implement it. In order for a third-party cruise control system to work, it needs to bypass the ride-by-wire throttle sensor in a vehicle to emulate a throttle signal going to the ECU. And that’s where ChatGPT suddenly refused to cooperate, hitting me with a wall of safety warnings rather than code.
So far, ChatGPT has been eager to offer up code I could flash to my ESP32 and run, whether that’s to read and identify CAN data or show it on the mini OLED display I was using. However, its suggestions for how I should control the throttle were a little unconventional, to say the least.
ChatGPT had assumed that this entire project would only read vitals from the ECU, but somehow still thought that I’d be operating the throttle manually. When I corrected it, saying the system is reading data so that it can modulate the throttle on its own, it suggested building an entirely different throttle interface that takes input from the ESP32 and modulates the throttle as required, outputting modified throttle signals to match the set cruising speed.
Upon further questioning, ChatGPT started insisting that I read and identify CAN bus data first, before proceeding to build the so-called throttle interface. It also suggested the appropriate components to use, and gave me a basic circuit diagram that would read throttle data, store it in a buffer, and pass it to the ECU. The chatbot really wanted to take a gradual approach with throttle control, adding gradual steps before totally taking over the throttle.
That roadblock changed everything
Why being forced to rethink the approach actually helped
ChatGPT’s push back sent me down an engineering rabbit hole. Instead of vibe coding a half-baked, half-understood system, I studied closed-loop vehicle control systems, how my bike’s ECU would interact with all the sensors that make operations possible, safety measures to transfer throttle control back, and a proper implementation that I wasn’t thinking about when I started this project. Considering ChatGPT already has a system that turns vague goals into something you can actually use, this experience was a breath of fresh air.
Instead of using the chatbot as a code dispenser, I started using it more like an assistant in the process. It helped me understand what I was building much better, and cut down research time for components and basic code a lot. As is my habit, I still looked up all the components the old-fashioned way using Google to ensure I wasn’t using anything wrong. To my surprise, a majority of it came up correct.
ChatGPT explained concepts, helped me through CAN bus data, which would have otherwise taken a significantly longer time to decipher, and pointed me towards resources on automotive-grade safety considerations for throttle-by-wire systems. ChatGPT has tons of features in 2026, and increased awareness when coding potentially dangerous products seems to be one of them.
I ended up building something better
A smarter project—and a more capable developer
The project is still ongoing, but it’s evolved from a simple hack into a full-blown reverse engineering and hardware interfacing project. I’m building it in stages as well, as a locked or improperly functioning throttle during testing could have disastrous consequences, to say the least.
I started using ChatGPT to catch phishing scams, and it’s shockingly accurate
This free ChatGPT app can save from getting hacked.
But what surprised me most was how much I learned in the process, and how much ChatGPT insisted on keeping me safe. I still like coding the old-fashioned way. After all, it’s a skill I’ve spent the better part of my life developing. But vibe coding is quickly catching up, and has an undeniable place in modern development workflows. Regardless, there’s a category of projects where understanding the code isn’t optional, and an AI assistant that helps you recognize that distinction is doing a genuine favor. At the end of the day, I did not expect my most useful AI interaction this year to be the one where it said no.









