RC_MODULE not connecting anymore

It could be spliced in with jumper wires since the processor itself is the same.

These little ESP32 boards do tend to have the same or similar board-edge pinouts. It’s a question of routing the PCB traces. The processor orientation on the board that produces the shortest and most direct trace runs to the edges is going to be the same for every board of this size with this processor.

This particular ESP32 may not match up with the cyberbrick’s, but that doesn’t mean there isn’t one out there that will… there are a pissload of suppliers making boards in this space.

It might be easier to create new Receiver And Transmitter boards that match the alternate core footprint. Other than level shifters, those boards are pretty much passive and significantly easier to solder.

It is interesting that BL packed a lot of function into those little core boards and they’re priced very low. If it weren’t for this penchant for ‘security’ they’ve embedded in the board it would be universally useful.

I’m referring to the microcontroller. It’s the same device. So I should be able to replace the micro.

Not so much, no. The functionality you get on that board is pretty much the same as what you get on any ESP32 board of the same size. It’s the ESP32 chip that packs all the functionality inside. All the BBL board does is give you an easier way to connect to and use the chip…

These chips support secure FW. Part of their core functionality. They’re targeted at IOT type use cases where you wouldn’t want anyone to be able to load unauthorized FW on it.

Did BBL need to enable those features? No. Except that doing so locks you in to the BBL ecosystem so you need to buy from them even though you can get the exact same MCU cheaper other places…

2 Likes

I have a few of these myself, unrelated to CyberBrick.

My soldering days are over. If you learn anything, please share it. I will breadboard things.

IMG_0263

1 Like

Maybe I saw it too late, the CyberBrick core board has built-in security features that can protect creators’ JSON configurations from being stolen. If you flash a third-party firmware, this will cause the security feature to fail! And it cannot be recovered!

I must have hit this same broken configuration situation when trying to trouble-shoot my left-spinning-only controller.

I’m guessing mistakenly flashing the bot’s configuration onto the controller is what’s doing it.

I can connect to the board, and flash updated JSON configurations, but it’s reading in the App as a Receiver type, and won’t go back to being a Transmitter. Any attempts to re-configure will fail at the bot to controller pairing stage.

I’m guessing there’s no obvious way to revert and re-flash the firmware. Checking the firmware status in the app just says it’s “up to date”
Screenshot_20250604-123545

wow amazing nice bro i like it

If you look at the code in rc_main.py, you’ll see that the role (master or slave) is determined by the state of GPIO10. Which, I believe, is hardwired on the shield board. TX would be one way, RX the other. So… I’m not sure how you could not have the right general function if the boards are plugged together properly.

So… I’m not sure how you could not have the right general function if the boards are plugged together properly.

Hmmm, given that I started having issues with that controller sending a continual “turn right” which appeared to be a fault in the Transmitter shield (based on using the other controller to test the pieces individually. The “stuck turning right” behavior followed the shield, not the core or joystick, etc.

Here’s hoping I can get a replacement sooner than the end-of-the-month store restock for general availability.

Thanks for the direction!

If you have a meter you can check out the GPIO 10 level. If it’s high (>2.2V) then the core will take on a ‘Master’ role, which is a Remote Transmitter. If the level is low (probably close to 0V) then the core will take on a ‘Slave’ role, ie receiver.
You should be able to measure between GPIO10 and GND easily.
Controller_core

Do this ONLY when the core is plugged into the respective Shield. Although, if you do this without plugging into a shield then you might be able to see if it’s shorted on the Core board.

3.3V on pin 10 when connected to the shield and powered via USB.

Once the phone app connects the status light goes to Blue, shows as “Receiver” in the CyberBricks app and still shows 3.3V on pin 10.

Good information for Tech Support. I have no explanation.

Thanks for the time and suggestions on what to check! It’s very much appreciated even if there wasn’t a “hey, dummy, do this” fix, :slight_smile: