un1b0x - 2020 EUzebox BOM
Re: Unibox - WIP 2020 EUzebox BOM
Thanks Artcfox!
I had noticed the pos 1 and pos 2 in the datasheet diagram but I was unsure it was the right datasheet because it showed N pins instead of 6.
Have you written a full book about the Uzebox? What is it called? Is it stlll in print?
I had noticed the pos 1 and pos 2 in the datasheet diagram but I was unsure it was the right datasheet because it showed N pins instead of 6.
Have you written a full book about the Uzebox? What is it called? Is it stlll in print?
Re: Unibox - WIP 2020 EUzebox BOM
No problem!
No, it was a book on the TLC5940:
https://sites.google.com/site/artcfox/d ... he-tlc5940
but it uses an AVR microcontroller.
I did write a guide (not book) for Uzebox Video Mode 3 with scrolling though:
https://sites.google.com/site/artcfox/o ... blications
Here is the corresponding Git repo:
https://github.com/artcfox/uzebox-mode- ... ling-guide
No, it was a book on the TLC5940:
https://sites.google.com/site/artcfox/d ... he-tlc5940
but it uses an AVR microcontroller.
I did write a guide (not book) for Uzebox Video Mode 3 with scrolling though:
https://sites.google.com/site/artcfox/o ... blications
Here is the corresponding Git repo:
https://github.com/artcfox/uzebox-mode- ... ling-guide
Re: Unibox - WIP 2020 EUzebox BOM
Looking at the casing for the 6-pin header more closely I now see there is an arrow on the front (the side with the notch) left which is probably supposed to indicate pin 1.
Re: Unibox - WIP 2020 EUzebox BOM
What does the circle placed next to pin 9 of the MCU represent?
Do I have to wire the reset button too to just get the 6 pin header working?
Do I have to wire the reset button too to just get the 6 pin header working?
-
- Posts: 1488
- Joined: Mon Feb 11, 2013 8:08 am
- Location: Brisbane, Australia
Re: Unibox - WIP 2020 EUzebox BOM
The circle means the same as the solid line above the word "reset"
It means that pin is inverted logic (active low)
For safety you should always have a 10K resistor pulling reset to VCC. This is unless you know for sure there is some reason not too.
It means that pin is inverted logic (active low)
For safety you should always have a 10K resistor pulling reset to VCC. This is unless you know for sure there is some reason not too.
Re: Unibox - WIP 2020 EUzebox BOM
Thanks CF!
Apparently I should only have to wire up a 10k resistor now before I should be able to program the chip but that needs to be placed in some holes I have clogged with solder after having placed something there on the board previously and then hackishly removed it.
I have ordered a solder sucker but it won't arrive until Saturday. I have successfully declogged a hole already on the board using my pointiest soldering iron head but it has caused damage to that hole so I think I'm prob best off waiting until the solder sucker arrives now, unless anyone has any other less harmful solutions for removing unwanted solder from breadboard holes? My wire wool + flux dabbing isn't cutting it.
EDIT
I was unable to wait for the solder sucker. I have managed to clear the solder within the holes using my soldering iron alone but it has ruined the plating on those holes. I'd imagine that's pretty hard to avoid when desoldering.
Apparently I should only have to wire up a 10k resistor now before I should be able to program the chip but that needs to be placed in some holes I have clogged with solder after having placed something there on the board previously and then hackishly removed it.
I have ordered a solder sucker but it won't arrive until Saturday. I have successfully declogged a hole already on the board using my pointiest soldering iron head but it has caused damage to that hole so I think I'm prob best off waiting until the solder sucker arrives now, unless anyone has any other less harmful solutions for removing unwanted solder from breadboard holes? My wire wool + flux dabbing isn't cutting it.
EDIT
I was unable to wait for the solder sucker. I have managed to clear the solder within the holes using my soldering iron alone but it has ruined the plating on those holes. I'd imagine that's pretty hard to avoid when desoldering.
Re: Unibox - WIP 2020 EUzebox BOM
After almost two weeks of working on my Uzebox, I think I've done enough so that I should be able to use avrdude to flash the bootloader,or at least if I understood and did what Jubatian said I needed to do but I don't think avrdude is working yet; or more likely I've messed my wiring up somehow.
Before I go checking what I can with a multimeter, it would be good if someone good have a look at my schematic. I have ticked off every connection I have made so far but maybe I've missed some that are required to use the 6-pin head to flash the MCU?
Or maybe someone can spot something wrong looking at the board?
I have only tested with my PSU set to 5V but maybe I need to set it higher?
Here's what happened when trying to use avrdude:
I'm presuming that the following errors are fatal and means it hasn't worked:
Before I go checking what I can with a multimeter, it would be good if someone good have a look at my schematic. I have ticked off every connection I have made so far but maybe I've missed some that are required to use the 6-pin head to flash the MCU?
Or maybe someone can spot something wrong looking at the board?
I have only tested with my PSU set to 5V but maybe I need to set it higher?
Here's what happened when trying to use avrdude:
Code: Select all
ISDADS\sgs548@salv13603-ub:~/src/uzebox/demos/Bootloader5/default$ avrdude -v -c USBasp -P usb -p m644 -U flash:w:Bootloader5.hex
avrdude: Version 6.3
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/local/ISDADS/sgs548/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : USBasp
AVR Part : ATmega644
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 2048 8 0 9000 9000 0xff 0xff
flash 33 6 256 0 yes 65536 256 256 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
ISDADS\sgs548@salv13603-ub:~/src/uzebox/demos/Bootloader5/default$ sudo avrdude -v -c USBasp -P usb -p m644 -U flash:w:Bootloader5.hex
avrdude: Version 6.3
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/local/ISDADS/sgs548/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : USBasp
AVR Part : ATmega644
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 2048 8 0 9000 9000 0xff 0xff
flash 33 6 256 0 yes 65536 256 256 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x000000 (retrying)
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
ISDADS\sgs548@salv13603-ub:~/src/uzebox/demos/Bootloader5/default$ sudo avrdude -v -c USBasp -P usb -p m644 -U flash:w:Bootloader5.hex -F
avrdude: Version 6.3
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/local/ISDADS/sgs548/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : USBasp
AVR Part : ATmega644
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 2048 8 0 9000 9000 0xff 0xff
flash 33 6 256 0 yes 65536 256 256 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x504596
avrdude: Expected signature for ATmega644 is 1E 96 09
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude done. Thank you.
ISDADS\sgs548@salv13603-ub:~/src/uzebox/demos/Bootloader5/default$ sudo avrdude -v -c USBasp -P usb -p m644 -U hfuse:w:0xd2:m -U lfuse:w:0xf7:m -U efuse:w:0xfc:m
avrdude: Version 6.3
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/local/ISDADS/sgs548/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : USBasp
AVR Part : ATmega644
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 2048 8 0 9000 9000 0xff 0xff
flash 33 6 256 0 yes 65536 256 256 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
ISDADS\sgs548@salv13603-ub:~/src/uzebox/demos/Bootloader5/default$ sudo avrdude -v -c USBasp -P usb -p m644 -U hfuse:w:0xd2:m -U lfuse:w:0xf7:m -U efuse:w:0xfc:m -F
avrdude: Version 6.3
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/local/ISDADS/sgs548/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : USBasp
AVR Part : ATmega644
Chip Erase delay : 55000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 10 128 0 no 2048 8 0 9000 9000 0xff 0xff
flash 33 6 256 0 yes 65536 256 256 4500 4500 0xff 0xff
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0xe0a5e4
avrdude: Expected signature for ATmega644 is 1E 96 09
avrdude done. Thank you.
Code: Select all
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Last edited by danboid on Mon Jul 27, 2020 11:52 am, edited 2 times in total.
Re: Unibox - WIP 2020 EUzebox BOM
My USBasp programmer has a few jumpers on it but I don't know what they do. I wonder if they might need to be set differently?
Last edited by danboid on Sun Jul 26, 2020 10:52 am, edited 2 times in total.
Re: Unibox - WIP 2020 EUzebox BOM
https://www.freetronics.com.au/pages/us ... tart-guide
When programming, I would make sure that you don't have an SD card in the Uzebox, be sure that the jumper settings on the programmer are correct (5V) and make sure the jumper is set so you can provide your own power to the Uzebox. And then of course, make sure you supply power to the Uzebox.
When programming, I would make sure that you don't have an SD card in the Uzebox, be sure that the jumper settings on the programmer are correct (5V) and make sure the jumper is set so you can provide your own power to the Uzebox. And then of course, make sure you supply power to the Uzebox.
Re: Unibox - WIP 2020 EUzebox BOM
Thanks Artcfox!
I don't think I made the best choice of AVR programmer. First, it has a 10 pin header so I have to use the included adapter to connect it to my UB and I've not been able to find a manual for this exact device.
Its got 2 sets of jumpers attached - JP21 seems to select the voltage. I'm unsure about JP1 but from looking at other USBasp devices I expect that is the self-program jumper, which I don't think I need. I have written to the Amazon seller to ask them what the jumpers do. Its got space for a third, unconnected jumper too.
I need not worry about SD cards as I've not attached that yet.
I have tried running avrdude with the jumper in both the 5V and 3.3V positions as well as having no jumper (which I think means self-powered) and also with and without the -B 1 switch which the guy on YT recommended but I get the same errors as before. I'm going to check the board with a multimeter now but I think I may end up having to order a known working programmer that doesn't need an adapter.
When I've got avrdude working, I'll be submitting a PR to update the Bootloader5 README with instructions for flashing it with avrdude. Currently the bootloader README just gives a link to a forum post which only has instructions for Windows users.
I don't think I made the best choice of AVR programmer. First, it has a 10 pin header so I have to use the included adapter to connect it to my UB and I've not been able to find a manual for this exact device.
Its got 2 sets of jumpers attached - JP21 seems to select the voltage. I'm unsure about JP1 but from looking at other USBasp devices I expect that is the self-program jumper, which I don't think I need. I have written to the Amazon seller to ask them what the jumpers do. Its got space for a third, unconnected jumper too.
I need not worry about SD cards as I've not attached that yet.
I have tried running avrdude with the jumper in both the 5V and 3.3V positions as well as having no jumper (which I think means self-powered) and also with and without the -B 1 switch which the guy on YT recommended but I get the same errors as before. I'm going to check the board with a multimeter now but I think I may end up having to order a known working programmer that doesn't need an adapter.
When I've got avrdude working, I'll be submitting a PR to update the Bootloader5 README with instructions for flashing it with avrdude. Currently the bootloader README just gives a link to a forum post which only has instructions for Windows users.