Mario,
Something in my logs are setting off your Wordfence plugin. A text file is attached with the console output.
You closed the last thread I opened. I received a new HAT and assembled it today. I also downloaded a fresh copy of your latest image. It did not work. Here are the steps I went through.
After I read the log I tried to flash the firmware manually, at 115200 and 57600.
Next I followed your instructions from https://fabscan.org/community/f-a-q/no-fabscanpi-hat-or-compatible-device-found/ to try to flash the bootloader manually. I thought it might not have been loaded when it was made.
This Arduino is dead. So was the last one. This is the third HAT I have tried. All I'm doing is soldering on some headers and plugging it in. The software on the Raspberry Pi is supposed to flash this firmware, right? Where do we go from here?
JustinB Mario i have the same issue with this hat 2 of them actually
i suspect watterott is NOT FLASHING THE BOOTLOADER
so i have followed same steps
and got to the flashing the bootloader
after chasing down all the dead links provided i finally got the hex to download
(avrdude -c pi_isp -p m328p -e -U flash:w:bloader.hex:i -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0x05:m -U lock:w:0x0F:m)
however it will not flash (pi_isp does not exist is the error i get and a list of available bootflashers)
now some unclear things about the directions for people without electronics degrees
flashing the bootloader should be done with the pins as per the diagram ,
now after a successful flash do we
sudo reboot and remove the wires before rebooting or do we just flash the firmware right after while the wires are still attached ?
or do we remove them and then flash firmware
next the .conf file we edit before flashing the boot loader ...do we create that or is it in a specific directory we must enter to add the pinouts to because i get a blank screen when using the commands provided and saved a file with the contents in it as .conf...still makes no sense and does not work
also if we only solder a pin to one part of the reset switch pad do we need to push the reset switch while flashing? to connect both pads or is it just a common pad and the illustration is adding extra??
curious what is going on here but to me it seems waterott is not flashing bootloaders to the board like the are supposed to
my screen from bootloader flash and clip of log file
bootloader error
(
pi@fabscanpi:~ $ wget https://github.com/watterott/RPi-UNO-HAT/blob/master/software/bloader.hex
--2020-03-10 04:31:49-- https://github.com/watterott/RPi-UNO-HAT/blob/master/software/bloader.hex
Resolving github.com (github.com)... 192.30.253.113
Connecting to github.com (github.com)|192.30.253.113|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘bloader.hex’
bloader.hex [ <=> ] 70.45K --.-KB/s in 0.1s
2020-03-10 04:31:50 (474 KB/s) - ‘bloader.hex’ saved [72145]
pi@fabscanpi:~ $ sudo nano /usr/local/etc/avrdude.conf
pi@fabscanpi:~ $ cd /etc/fabscanpi
pi@fabscanpi:/etc/fabscanpi $ sudo nano /usr/local/etc/avrdude.conf
pi@fabscanpi:/etc/fabscanpi $ cd
pi@fabscanpi:~ $ sudo nano /usr/local/ect/avrdude.conf
pi@fabscanpi:~ $ sudo nano /usr/local/etc/avrdude.conf
pi@fabscanpi:~ $ avrdude -c pi_isp -p m328p -e -U flash:w:bloader.hex:i -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0x05:m -U lock:w:0x0F:m
avrdude: Can't find programmer id "pi_isp"
Valid programmers are:
2232HIO = FT2232H based generic programmer
4232h = FT4232H based generic programmer
arduino = Arduino
arduino-ft232r = Arduino: FT232R connected to ISP
atmelice = Atmel-ICE (ARM/AVR) in JTAG mode
atmelice_dw = Atmel-ICE (ARM/AVR) in debugWIRE mode
atmelice_isp = Atmel-ICE (ARM/AVR) in ISP mode
atmelice_pdi = Atmel-ICE (ARM/AVR) in PDI mode
atmelice_updi = Atmel-ICE (ARM/AVR) in UPDI mode
avr109 = Atmel AppNote AVR109 Boot Loader
avr910 = Atmel Low Cost Serial Programmer
avr911 = Atmel AppNote AVR911 AVROSP
avrftdi = FT2232D based generic programmer
avrisp = Atmel AVR ISP
avrisp2 = Atmel AVR ISP mkII
avrispmkII = Atmel AVR ISP mkII
avrispv2 = Atmel AVR ISP V2
buspirate = The Bus Pirate
buspirate_bb = The Bus Pirate (bitbang interface, supports TPI)
butterfly = Atmel Butterfly Development Board
butterfly_mk = Mikrokopter.de Butterfly
bwmega = BitWizard ftdi_atmega builtin programmer
C232HM = FT232H based module from FTDI and Glyn.com.au
c2n232i = serial port banging, reset=dtr sck=!rts mosi=!txd miso=!cts
dasa = serial port banging, reset=rts sck=dtr mosi=txd miso=cts
dasa3 = serial port banging, reset=!dtr sck=rts mosi=txd miso=cts
diecimila = alias for arduino-ft232r
dragon_dw = Atmel AVR Dragon in debugWire mode
dragon_hvsp = Atmel AVR Dragon in HVSP mode
dragon_isp = Atmel AVR Dragon in ISP mode
dragon_jtag = Atmel AVR Dragon in JTAG mode
dragon_pdi = Atmel AVR Dragon in PDI mode
dragon_pp = Atmel AVR Dragon in PP mode
ehajo-isp = avr-isp-programmer from eHaJo, http://www.eHaJo.de
flip1 = FLIP USB DFU protocol version 1 (doc7618)
flip2 = FLIP USB DFU protocol version 2 (AVR4023)
ft232r = FT232R Synchronous BitBang
ft245r = FT245R Synchronous BitBang
jtag1 = Atmel JTAG ICE (mkI)
jtag1slow = Atmel JTAG ICE (mkI)
jtag2 = Atmel JTAG ICE mkII
jtag2avr32 = Atmel JTAG ICE mkII im AVR32 mode
jtag2dw = Atmel JTAG ICE mkII in debugWire mode
jtag2fast = Atmel JTAG ICE mkII
jtag2isp = Atmel JTAG ICE mkII in ISP mode
jtag2pdi = Atmel JTAG ICE mkII PDI mode
jtag2slow = Atmel JTAG ICE mkII
jtag3 = Atmel AVR JTAGICE3 in JTAG mode
jtag3dw = Atmel AVR JTAGICE3 in debugWIRE mode
jtag3isp = Atmel AVR JTAGICE3 in ISP mode
jtag3pdi = Atmel AVR JTAGICE3 in PDI mode
jtagkey = Amontec JTAGKey, JTAGKey-Tiny and JTAGKey2
jtagmkI = Atmel JTAG ICE (mkI)
jtagmkII = Atmel JTAG ICE mkII
jtagmkII_avr32 = Atmel JTAG ICE mkII im AVR32 mode
linuxspi = Use Linux SPI device in /dev/spidev*
lm3s811 = Luminary Micro LM3S811 Eval Board (Rev. A)
mib510 = Crossbow MIB510 programming board
mkbutterfly = Mikrokopter.de Butterfly
nibobee = NIBObee
o-link = O-Link, OpenJTAG from www.100ask.net
openmoko = Openmoko debug board (v3)
pavr = Jason Kyle's pAVR Serial Programmer
pickit2 = MicroChip's PICkit2 Programmer
ponyser = design ponyprog serial, reset=!txd sck=rts mosi=dtr miso=cts
powerdebugger = Atmel PowerDebugger (ARM/AVR) in JTAG mode
powerdebugger_dw = Atmel PowerDebugger (ARM/AVR) in debugWire mode
powerdebugger_isp = Atmel PowerDebugger (ARM/AVR) in ISP mode
powerdebugger_pdi = Atmel PowerDebugger (ARM/AVR) in PDI mode
powerdebugger_updi = Atmel PowerDebugger (ARM/AVR) in UPDI mode
siprog = Lancos SI-Prog < http://www.lancos.com/siprogsch.html>
stk500 = Atmel STK500
stk500hvsp = Atmel STK500 V2 in high-voltage serial programming mode
stk500pp = Atmel STK500 V2 in parallel programming mode
stk500v1 = Atmel STK500 Version 1.x firmware
stk500v2 = Atmel STK500 Version 2.x firmware
stk600 = Atmel STK600
stk600hvsp = Atmel STK600 in high-voltage serial programming mode
stk600pp = Atmel STK600 in parallel programming mode
ttl232r = FTDI TTL232R-5V with ICSP adapter
tumpa = TIAO USB Multi-Protocol Adapter
UM232H = FT232H based module from FTDI and Glyn.com.au
uncompatino = uncompatino with all pairs of pins shorted
usbasp = USBasp, http://www.fischl.de/usbasp/
usbasp-clone = Any usbasp clone with correct VID/PID
usbtiny = USBtiny simple USB programmer, https://learn.adafruit.com/usbtinyisp
wiring = Wiring
xplainedmini = Atmel AVR XplainedMini in ISP mode
xplainedmini_dw = Atmel AVR XplainedMini in debugWIRE mode
xplainedmini_updi = Atmel AVR XplainedMini in UPDI mode
xplainedpro = Atmel AVR XplainedPro in JTAG mode
xplainedpro_updi = Atmel AVR XplainedPro in UPDI mode
log file almost looks word for word like the last
error for flash
2020-01-25 20:00:47,873 - fabscan.server.FSScanServer - INFO - FabScanPi-Server 0.8.2
2020-01-25 20:00:47,875 - fabscan.scanner.interfaces - DEBUG - Scanner Type is: laserscanner
2020-01-25 20:00:48,475 - fabscan.scanner.laserscanner.driver.FSSerial - DEBUG - Port in Config found
2020-01-25 20:00:48,489 - fabscan.scanner.laserscanner.driver.FSSerial - DEBUG - Latest available firmware version is: v.20190811
2020-01-25 20:01:40,126 - fabscan.lib.util.FSUtil - INFO - avrdude-original: Using autoreset DTR on GPIO Pin 7
2020-01-25 20:01:40,172 - fabscan.scanner.laserscanner.driver.FSSerial - ERROR - Communication error on port /dev/ttyAMA0 try other flashing baudrate than 57600. Maybe corrupted bootloader.
2020-01-25 20:01:40,173 - fabscan.scanner.laserscanner.driver.FSSerial - ERROR - Fatal FabScanPi HAT or compatible connection error....
2020-01-25 20:01:40,174 - fabscan.server.FSScanServer - INFO - FabScan Server Exit. Bye!
after dumping hundreds of bucks with custom fees and import fees to source this stuff it would be nice to get it working and figuring out why they are dead out of the package i suspect watterott isnt doing the flash at all or the first boot is deleting something and not flashing
after dumping hundreds of bucks with custom fees and import fees to source this stuff it would be nice to get it working and figuring out why they are dead out of the package i suspect watterott isnt doing the flash at all or the first boot is deleting something and not flashing
There was a bug in v.0.7.0 wich caused a damage of the bootloader. But it is fixed within later versions. I am still trying to figure out why people are having this problems. It is hard to reproduce this behaviour. I have built a test rig which i can use to flash my HAT so i have an initial point to start. But every time i start the server after flashing it works like expected. When i flash the shield i am using the arduino way to go. I think i need to give it a couple of tries with the raspberry pi.
flashing the bootloader should be done with the pins as per the diagram ,
now after a successful flash do we
sudo reboot and remove the wires before rebooting or do we just flash the firmware right after while the wires are still attached ?
or do we remove them and then flash firmware
next the .conf file we edit before flashing the boot loader ...do we create that or is it in a specific directory we must enter to add the pinouts to because i get a blank screen when using the commands provided and saved a file with the contents in it as .conf...still makes no sense and does not work
I will have a closer look to all of this at the weekend. Maybe it is necessary to do some work on the flashing guide. I will see what i can do.
after chasing down all the dead links provided i finally got the hex to download
Can you provide the dead links, so i can correct them.
The software on the Raspberry Pi is supposed to flash this firmware, right? Where do we go from here?
The last lines in your log are showing that the bootloader was flashed successfully. The next step is to start the FabScan Pi Server ( it will start automatically when you boot the pi, provided you are using the ready to use fabscan pi image.
why they are dead out of the package i suspect watterott isnt doing the flash
I just contacted Wattertott. They told me that you should contact them regarding the problem of a damaged or not working bootloader. Depending on your order it might be possible that your HAT is from a batch with a damaged bootloader.
the link on the post is
wget https://github.com/watterott/RPi-UNO-HAT/raw/master/docs/bloader.hex
I had to change it to githubs proper pathway (master doesn't exist anymore)
https://github.com/watterott/RPi-UNO-HAT/blob/master/software/bloader.hex
(I just opened GitHub with explorer and followed the path changing what didn't match and it worked )
after that
cd /etc
then run the edit .conf command to get into the actual .conf file
took a bit to figure out where to add the lines provided (theres a lot of lines of code lol)
then running the flash bootloader command I get one of 3 errors
1
pi@fabscanpi:~ $ sudo /etc/init.d/fabscanpi-server stop fabscanpi-server stopped.
pi@fabscanpi:~ $ sudo avrdude -c pi_isp -p m328p -e -U flash:w:bloader.hex:i -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0x05:m -U lock:w:0x0F:m
avrdude: AVR device not responding
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
2
pi@fabscanpi:/usr/local/etc $ avrdude -F -c pi_isp -p m328 -e -U flash:w:bloader.hex:i -U lfuse:w:0xFF:m -U hfuse:w:0xD6:m -U efuse:w:0x05:m -U lock:w:0x0F:m
Can't export GPIO 24, already exported/busy?: Device or resource busy
avrdude done. Thank you.
3
Can't open gpioX/direction: Permission denied
avrdude done. Thank you.
*(dont mind the pin 24 change i did that to see if it was just pin 25 not working as both pins are giving this error when running the command
I will probly try and contact watterott tonight and see what to do with the one hat , hopefully the other hat will work with knowing where im going in the software, and hoping I don't screw up this reset pad as well
is there an alternative place to solder the reset pin to micro soldering with a switch that melts in the way is a real pain lol
hope this helps you help me and others
Just added some pics of my self made flashing tool. https://fabscan.org/community/hardware/bootloader-flashing-tool/