So, I'm trying to connect to a custom board using ST-Link. My board uses STM32 Microcontroller and I use ST link utility software to see if I can connect to it.
Right now, If I press connect on utility software and press reset on my board at the same time, the connection is successful. But as soon as I remove my finger from the reset button the connection to the device is lost. Is this expected? And how can I make it stay connected without me keeping the reset button pressed!
Also, assuming I keep pressing it, the utility software gives me an internal command error when I try to erase chip. this happens when I try to program the chip as well.
Any suggestions are appreciated.
So the way to resolve the issue was to pull-up the NRST pin on the board and st link and disconnect it after pressing the reset button.
I still have not found a solution for erasing the chip but I believe the flash is protected. When I try to change the Option Bytes in st link utility, it disconnects from the board saying:
Could not set Option bytes!
Please reset the target and retry!
And then disconnects from the device.
Any clues how I can change the options bytes? That might actually solve the problem!
Thanks
By my experience all of such this problems come from bad assembling one way that may help you to find out first put a light in the back of your PCB right under your micro-controller and see if any pin is outside of footprint if it is aligned correctly,gently press your micro to the PCB and and test if it is disconnecting if it solves your problem then some of pins are not soldered correctly
Related
I'm using D1 Mini with micropython
It happens a lot that I upload some code that has a main loop in it, and afterwards I lose connection to the board
I can see the console output, but can't see the files, can't burn a new firmware, can't stop the code from running, anything...
If I press ctrl+c or ctrl+d it holds for a second, then continues
I'm using a raspberry pi and Thonny for the development
Same from esptool and ampy
Tried looking for an answer online, but couldn't find anything relevant
What can I do?
What I do in my apps- I add time.sleep(3) at the beginning of my application. And when I wish to do code upload, I connect to the board, press CTRL+D for soft reset and CTRL+C to kill code. Then do upload required code. This approach works best for me.
Moved from pi to windows, I was able to delete and write the firmware again using esptool
The only thing is that now I have to press the reset button while connecting the USB so the computer will recognize the controller
I have to make a PS2 Keyboard Controller project at the university and i encountered a few problems when trying to test the system on the FPGA board.
It had worked perfectly in the simulator of Active-HDL, but i am not sure what it might be that stops it from working on the board, because when i try to program the board, the .bit file gets uploaded, but it does not react when i plug the PS/2 Keyboard in it and try to press a key.
I thought that probably a problem might be related to the PS/2 Keyboard protocol or the way it is synthesized for the board, but i really do not know.
The source code is here https://wetransfer.com/downloads/1d000a9feb241ff84693fca2084b0e9a20180513165005/8f7ca4 and the top level is called "ps2_top_src".
I am sorry for the way of uploading the code, but i couldn`t make it upload anywhere else.
I need to understand how the code on a USB gets the control after plug-in to the QNX device. What I already done:
Save slogger output (using sloginfo) during plugging the USB
Through it I understand that devb-umass driver and then mme-update get the control. I got and disasm the mme-update. Find the string from sloginfo and code that prints it
I ran gdb, check memory on needed addresses (it's ok, just like in disasm) and set breakpoint on code and watchpoint on a string. Plan was to trace the code further till USB code
Eject and plug the USB again. No reaction
Could you please give some ideas why? May be you can thing of a better way to understand how code on the USB gets the control? Changing some byte to 0xCC on a USB doesn't seem the solution
I have seen hints online about getting physical phones unstuck from emergency dial mode (e.g. remove the battery to reset the device), but I can't figure out how to apply those hints to the Emulator
Thanks!
And the answer turned out to be pretty obvious. This wasn't emergency dial mode, it was the enter a pin screen. So once I entered my pin, the screen went away, and I was able to use the device. :D
I purchased a RadBeacon USB from Radius Networks and iBeacon Locator on my Nexus 7 says the calibration is: -59.
My iPhone 5s sees it, the measured power is: -64, so I press OK to copy this value to the Measure Power field of the beacon settings. You must apply the settings to update the Measured Power on the beacon device.
So I press Apply and use the PIN 0000.
Apply Settings.
It says "Invalid PIN".
I use my 4 digit PIN that I use for everything and it says "Connection timed out".
Now in the instructions it says "If you are unable to discover you beacon using the RadBeacon Config App, remove the plastic cover and firmly press the configuration button above and to the right of the battery holder. This will restart the 30 minute configuration window and your beacon should show up in subsequent scans.
Define firmly.
I didn't think it had a battery. What is a battery holder?
Does this button give any kind of tactile feedback when pressed so that I can know that I'm pressing it?
There's a square opening on the top-right of both sides after removing the metal cover. Is one of them the button?
Is there a product that doesn't have this 30 minute restriction so that I can get it to work the first time as a proof-of-concept, and not have to worry about it being bricked after 30 minutes?
Sorry you are having trouble, Philip.
You are correct that your RadBeacon USB does not have a battery. We also sell a RadBeacon tag, which does have a battery and it sounds like you are reading the instructions for that model. So please ignore those instructions.
To restart the config time window on your RadBeacon USB, simply unplug it and plug it back in. Then try using the iPhone RadBeacon app to configure it using the default pin of 0000. If it does not accept that pin, and you did not change the pin to something else you remember, contact us at support#radiusnetworks.com and we will arrange a replacement.
Understand that the configuration time window is simply a security feature to keep other folks from trying to reconfigure your beacon. You can always restart the time window by cycling power. So you don't need to worry about bricking your device -- just be careful not to change the pin without writing down the new number.