Topics

#qcx QCX Firmware 1.01 released #qcx

abeza_63
 

Hi Jim,
 
I have no idea how to load the .eep file to the eeprom, can you provide the procedure?,
Using avrdudess.
 
August Beza (WA2HTF)
 
 
 
 
 

-------Original Message-------
 
From: Jim W8JD
Date: 10/10/2019 1:00:19 PM
Subject: Re: [QRPLabs] #qcx QCX Firmware 1.01 released
 
Alan here is what ultimately worked.  I just don't remember doing anything with the fuses on the original load that did not work.  Once I re-wrote the eeprom with help from Hans it all worked perfectly.  I see avrdudess keeps any defaults you set once you exit the program so I suspect the fuses were blank on the original load but the "set fuses" block was checked but I just cant say for sure.  I set these fuse values per instructions from Hans.  I wonder if the "Set lock" should have been checked as well to prevent this from happening in the future.  Maybe someone with better knowledge of avrdudess than me could chime in?  In any case, once you get the "Use original IC" message, the eeprom is erased and the .eep file will need to be re-loaded.

Jim Davis
W8JD

 

Alan G4ZFQ
 

On 10/10/2019 19:30, abeza_63 wrote:
Hi Jim,
I have no idea how to load the .eep file to the eeprom, can you provide the procedure?,
Using avrdudess.
August,

It is the same as for the hex.
Select the eep file in the EEPROM box. -Go.
First you might read the Fuses lock bits, note the result. H should be 0xD1

73 Alan G4ZFQ

abeza_63
 

Thanks Alan,
I did not think it was that easy.
 
August Beza (WA2HTF)
 
 
 
 
 

-------Original Message-------
 
Date: 10/10/2019 4:28:54 PM
Subject: Re: [QRPLabs] #qcx QCX Firmware 1.01 released
 
On 10/10/2019 19:30, abeza_63 wrote:
> Hi Jim,
> I have no idea how to load the .eep file to the eeprom, can you provide
> the procedure?,
> Using avrdudess.
 
August,
 
It is the same as for the hex.
Select the eep file in the EEPROM box. -Go.
First you might read the Fuses lock bits, note the result. H should be 0xD1
 
73 Alan G4ZFQ
 
 
 
 
 

Kelly Jack
 

What version are people updating from?

Guy
 

I just wanted to add that I have never upgraded any QRP-Labs chips with newer firmware before, But I followed Simon’s (VK3ELH) tutorial to the letter and I successfully flashed two QCX chips today using the Arduino Uno.  Don’t mess with anything other than what he says to do and it will work.  
Regards,
 Guy WB7SZI 

Helmut, DK2ZA
 

I just updated my QCX to firmware 1.01a following Simon's (VK3ELH) tutorial. At first I got an error message from AVRDUDESS which disappeared when I changed the MCU from ATmega328 to ATmega328P.  No other problems.

Regards,
Helmut, DK2ZA

regzzz@...
 

Just upgraded my 1 week old QCX 40m successfully.

I must send thanks to lots here, as I read (and re-read) of procedures, settings and check. and of course followed Simon's tutorial.  
I used an Arduino Uno and AVRDUDESS.

Same as Helmut (DK2ZA) above, I had to change the MCU to ATmega328P.  
I read the Fuses (L, H and E) and they where the same as Hans described.
Pressed the GO button for the Flash and all went smoothly :-)  yeay.

I just ordered a QCX 20m last week, shipped on the 4th Oct.. so I'll have the joy of upgrading that one also   hehe :-) 

Again, thank you all.

73 

--
Reg  VA2VEC

Shirley Dulcey KE1L
 

Your QCX may contain either an ATMega328 or an ATMega328P. Hans uses both versions of the chip based on availability and price. The 328P adds some NanoPower standby modes that are not used by the QCX firmware, so there is no difference in performance.

You have to set your AVR programmer for the type of chip you have; it should be labeled on the chip. If you get it wrong, programming the chip will fail. (You won't damage the chip. It will just error out with a signature mismatch.) if that happens try the other one.

On Fri, Oct 11, 2019 at 5:36 AM Helmut, DK2ZA <pape-helmut@...> wrote:
I just updated my QCX to firmware 1.01a following Simon's (VK3ELH) tutorial. At first I got an error message from AVRDUDESS which disappeared when I changed the MCU from ATmega328 to ATmega328P.  No other problems.

Regards,
Helmut, DK2ZA

Julian Forsey
 

Brace yourself for a dumb question......
I've been trying to program the Atmega chip with the upgraded firmware, using AVRDudess as per the tutorial.
But I can only get the hex file as a page full of hexadecimal on the screen. How do I just download the hex file to my computer, so that I can save it somewhere (as a hex file)?
There, I told you it was going to be a dumb question!
Any answers gratefully received.
73s de Julian, G4ETS.

Lawrence
 

Instead of clicking on the link, right click and select save as.

73 Lawrence Harris VA7EDU

On Oct 11, 2019, at 08:52, Julian Forsey <julian_forsey@...> wrote:

Brace yourself for a dumb question......
I've been trying to program the Atmega chip with the upgraded firmware, using AVRDudess as per the tutorial.
But I can only get the hex file as a page full of hexadecimal on the screen. How do I just download the hex file to my computer, so that I can save it somewhere (as a hex file)?
There, I told you it was going to be a dumb question!
Any answers gratefully received.
73s de Julian, G4ETS.

Kevin Zembower
 

I'm just starting to look at programming the chip in my QCX-40. All the instructions I've found so far use AVRdudess, which, as far as I can tell, is a Windows program. The AVRdudess web page seems to show how to run it under Linux, but I don't want to install an emulator and a Windows program.

My Linux already has the Arduino IDE and avrdude. Can anyone point me to a reference for using these tools under Linux to update the chip? Preferrably, just command-line commands?

Thanks for your help in finding this information.

-Kevin
KC3KZ

Jeff
 

Kevin,

AVRDudess will work under Linux as long as you have Mono installed. Depending on distro you could simply install mono-complete (under most package managers) then run the exe via command line with 'mono avrdudess.exe'. You may need to mess with permissions etc., again depends on distro. Feel free to email me direct if you have issues so we don't clutter up the group here.

Alan G4ZFQ
 

Can anyone point me to a reference for using these tools under Linux to update the chip? Preferrably, just command-line commands?
Kevin,

I'm not a Linux user but a quick search seems to confirm averdude may be installed.
I'd suggest you search, you know what you are looking for.

73 Alan G4ZFQ

jmh6@...
 

Hi Alan,

If you look at the Linux package list, you will find avrdude there. avrdudess is only a windows program.

You will notice on the avrdudess screen the avrdude command to load the .hex file in the ArduinoISP format directly to your connected QCX.

This is not nearly as nice as using the regular Arduino rx-tx load scheme which for whatever reason is not supported by QCX.

I suppose it makes more sense to use ArduinoISP format as a manufacturer since the ISP format is directly supported by the chip.

If all else fails, you can get a 'high voltage' programmer which I suspect works when all else fails. I have yet to program my own high voltage programmer. All the details are in the 328/328p spec. sheet.
I would guess you could also buy one.

Lots of fun :).

On Fri, 11 Oct 2019, Alan G4ZFQ wrote:

Can anyone point me to a reference for using these tools under Linux to update the chip? Preferrably, just command-line commands?
Kevin,

I'm not a Linux user but a quick search seems to confirm averdude may be installed.
I'd suggest you search, you know what you are looking for.

73 Alan G4ZFQ



Hans Summers
 

 
    This is not nearly as nice as using the regular Arduino rx-tx load
scheme which for whatever reason is not supported by QCX.

Arduino is a particular set of basic functionality wrappers and a bootloader, in addition to the sketch that you write. 

The QCX is not written using the Arduino envrionment, it is written using pure C and a little Assembler. Therefore it does not contain the Arduino bootloader nor support the Arduino method of uploading sketches.  

If I had written the QCX firmware in the Arduino environment I would not have been able to include as much functionality in the limited 32KBytes Flash memory, because the Arduino environment itself takes up some space. Furthermore I would not have had unfettered access to all the AVR peripherals and performance. 

73 Hans G0UPL

James Daldry W4JED
 

Hi, Kevin

Here's one by a lady who knows how: https://learn.adafruit.com/usbtinyisp/avrdude

Anyone that knows electronics, c programming, and can start and run a thriving electronic hobbyist business on Manhattan Island is groups ahead of me.

73

Jim W4Jed

Sent from Linux Mint 19.2

On 10/11/19 12:37 PM, Kevin Zembower via Groups.Io wrote:
I'm just starting to look at programming the chip in my QCX-40. All the instructions I've found so far use AVRdudess, which, as far as I can tell, is a Windows program. The AVRdudess web page seems to show how to run it under Linux, but I don't want to install an emulator and a Windows program.

My Linux already has the Arduino IDE and avrdude. Can anyone point me to a reference for using these tools under Linux to update the chip? Preferrably, just command-line commands?

Thanks for your help in finding this information.

-Kevin
KC3KZ

Josh Boyd
 

Ok so I think I finally figured all my issues with Avrdudess out.  For some reason my fuses were set to high D9 allowing the eeprom to be written.   Since Hans gave me the eeprom file I've been fiddling with settings and burning trying to duplicate the issue.    I don't know if somehow my h fuses got written D9 by Hans or defaulted that way in Avrdudess but if you read your fuses F7,D1,FC like Hans said first then write them appropriately if wrong there won't be any issues when programming.

Kelly Jack
 

Josh,

What version chip were u updating from?
I have had no issues updating to 1.01 from a version "a" chip and a version "e" chip.

73

Simon
VK3ELH

Josh Boyd
 

1.00g 

I've been trying to figure out what went wrong.   I would have normally just used command line on avrdude in Windows but switched to all Linux last year and haven't programmed an avr since so I used Avrdudess.  I didn't read the fuses at first when I programmed it So I don't know what screwed it up.

David Giles
 

How I programmed the QCX using Linux.
This was on a 80m QCX with 1.00g firmware in a ATMEGA328p.

- As per VK3ELH's instructions, I downloaded ArduinoISP into an Arduino UNO and connected the Arduino to the QCX

- from the command line I used this command to read the current EEPROM contents for safe keeping
avrdude -p m328p -b 19200 -c avrisp -P /debv/ttyUSB0 -U eeprom:r:qcx80.eep:i
where -p m328p is the chip type, -b 19200 is the baud rate, -c avrisp is the programmer type (-c arduino did not work for me)
and -P /dev/ttyUSB0 is the port the programmer is connected to.  -U ... tells avrdude to read the contents of the EEPROM
and save in the file qcx80.eep as an intel hex file.  Avrdude also displays the fuse settings, so I noted them down for future reference.

- with the new firmware T1.01.hex, I used the following command to write it
avrdude -p m328p -b 19200 -c avrisp -P /dev/ttyUSB0 -U flash:w:T1.01.hex:i
This just writes to the flash memory.  The QCX reset and showed 1.01.  Now to check out the new features.

Hope this helps.

73 de David VK5DG