SparkFun_Edge_BSP
SparkFun_Edge_BSP copied to clipboard
Example 1: No response error (macOS 10.15.4)
Hello,
I am having a similar problem to others (see here) where I seemingly am not able to communicate with the Edge board. I have looked into whether I had driver issues following the guides here, and I am able to perform a simple echo test through the CH340 board which leads me to believe that I do not have a driver problem. I am not sure what else to try at the moment, any ideas? Below is a stack trace of the communication error.
make bootload
../../../../../tools/apollo3_scripts/create_cust_image_blob.py --bin bin/example1_edge_test.bin --load-address 0xC000 --magic-num 0xCB -o bin/main_nonsecure_ota --version 0x0
Header Size = 0x80
original app_size 0x4aac ( 19116 )
load_address 0xc000 ( 49152 )
app_size 0x4aac ( 19116 )
w0 = 0xcb004b2c
Security Value 0x10
w2 = 0x10008080
addrWord = 0xc000
versionKeyWord = 0x0
child0/feature = 0xffffffff
child1 = 0xffffffff
crc = 0x77a4c6c4
Writing to file bin/main_nonsecure_ota.bin
../../../../../tools/apollo3_scripts/create_cust_wireupdate_blob.py --load-address 0x20000 --bin bin/main_nonsecure_ota.bin -i 6 -o bin/main_nonsecure_wire --options 0x1
Header Size = 0x60
app_size 0x4b2c ( 19244 )
Writing to file bin/main_nonsecure_wire.bin
Image from 0x0 to 0x4b2c will be loaded at 0x20000
../../../bsp/tools/uart_wired_update_sparkfun.py -b 921600 /dev/tty.usbserial-1420 -r 1 -f bin/main_nonsecure_wire.bin -i 6
Connecting with Corvette over serial port /dev/tty.usbserial-1420...
Sending Hello.
No response for command 0x00000000
received bytes 11
['0xd8', '0x60', '0x3', '0x87', '0x84', '0x80', '0x80', '0x83', '0x80', '0x80', '0x80']
Traceback (most recent call last):
File "../../../bsp/tools/uart_wired_update_sparkfun.py", line 343, in <module>
main()
File "../../../bsp/tools/uart_wired_update_sparkfun.py", line 44, in main
connect_device(ser)
File "../../../bsp/tools/uart_wired_update_sparkfun.py", line 63, in connect_device
response = send_command(hello, 88, ser)
File "../../../bsp/tools/uart_wired_update_sparkfun.py", line 240, in send_command
raise NoResponseError
__main__.NoResponseError
make: *** [bootload] Error 1
This error does look very similar to the driver issues that have been reported in the past. Simply echoing a character or two may not be enough to thoroughly test the drivers - the error usually occurs during transfers of many bytes.
What platform are you using?
Hi Owen,
I am on OSX 10.15.4, I am using the Sparkfun Edge board and the USB-C breakout board and in general following along with this tutorial. Is there another way to test the drivers?
Thanks, Drew
Drew, have you tried using the Arduino IDE to test the Edge board? Doing so might, at the very least, help to eliminate other possibilities. Artemis Development with Arduino
I have avoided uploading code to an Edge board from my OSX laptop. Unfortunately I don't have access to hardware to test with soon. But I can say that generally I don't think it worked well for me either with the 921600 baud rate bootloader.
Although it is not an ideal solution there is another way to fix this. You can re-configure the bootloader to use an 115200 baud rate that is FAR more stable. To do this you would check out how the ASB is configured using Ambiq Micro tools by looking at the example of the Artemis Bootloader. You'd do the same thing, but make sure to change the boot pin to 14 --gpio 0x0e and the polarity to low --gpiolvl 1. The resulting binary image then needs to be flashed into memory starting at 0x00000000. You would flash it using a debugger like the SEGGER J-Link EDU
Facing the same issue here, is there any new info on this?
Thanks for you help Owen! It is much appreciated. I haven't been able to work on this as a separate project took over the bulk of my time and I shelved the Edge board for the time being.
@bliep have you tried starting with the Arduino IDE?
P.s. to everyone this BSP repo is deprecated. The Edge board will continue to have support in SparkFun Apollo3 AmbiqSuite BSPs repo
An echo test on the serial connection was OK, would the serial via the Arduino IDE be any different ?
The UART would be unchanged but there are some utilities that might be able to help you. It is also more up-to-date.