Author Topic: Dim OLED Screen replacement for Agilent Keysight U1253A U1253B U1273A U1273AX  (Read 13208 times)

0 Members and 2 Guests are viewing this topic.

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Thanks for your feedback and sorry for the trouble caused, will check what could have gone wrong.

Edit:
Crap! I made a stupid mistake...
I missed adjusting a jump address in the oled init sequence, had the U1273AX value (It's different in U1253A/B) so it'll be jumping to go-figure-where and crashing...  :palm:.
FIXED

De-bricking should be pretty easy following the previous posts, please try the updated version!
I've triple-checked everything, everything seems fine now.

Compared to U1273A, the button layout seems different in U1253A, please trace the [Dual/Exit] button in the board so I can make a failsafe mode!
« Last Edit: January 21, 2024, 09:05:18 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: msquared

Offline msquared

  • Regular Contributor
  • *
  • Posts: 60
  • Country: us
Wow. Thank you for such a quick fix.

I'll be tearing into the meter tomorrow to try to recover and re-flash and at the same time I'll trace out the button.

Thanks again!!
 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
The app initialization sets P7-4 as inputs and P3-0 as outputs, so I'll assume P7.7 (pin 30) is reading the button.
This should work. If wrong, in the worst case it'll ignore the button, or always enter update mode.

The mod ended up cycling through the booting. Pressing the button does enter the boot mode which is so good, no need to direct connect again
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Sorry didn't get it (What's the reason of showing the DMM off?), do your mean it's working as expected?
Power-on behaves normally?
Turning power on while holding Exit button sets Update mode?
« Last Edit: January 22, 2024, 06:47:40 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Sorry this file is a .gif file, regular videos I cannot upload here. So if you download it and open it - it will be animated and will show you the result
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Ah! You can't upload gifs here, the forum breaks them, won't work even after downloading it.
Try https://gifyu.com/ .
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: onesystem

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Reduced timing unfortunately produced the same result. Meter is cycling through until button is pressed to get into programming mode
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Hmmm ok, then it's other problem.
Maybe that flash area is not actually empty and I'm breaking something, will try placing the code elsewhere.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline msquared

  • Regular Contributor
  • *
  • Posts: 60
  • Country: us
>>> Updated 1/24/2024 In the first post Reset and FLDM0 were wrong, the pins are now correctly assigned.  :palm: <<<

Quick update on for the U1253A.

The Dual/Exit button (SW1) goes to Pin 33 P74/KR4.
The "Common" for the switch is shared with SW1-SW4 goes to Pin 34 P73/KR3.

Also for anyone that needs it here is the pinout of the programming header.

Pin1 -> FLDM0 (Pin 13)
Pin2 -> Reset (Pin 10)
Pin3 -> AVRef (Pin 59
Pin4 -> GND
Pin5 -> P13/TXD6 (Pin 51)
Pin6 -> P14/RXD6 (Pin 50)

I'll attempt to reprogram tomorrow.

Quick question?
Is the recovery process the same for the U1253A (D78F0547)?
Should the same block (127) be erased with command "python flash-util.py -e -b 127 -p COMx"?

Sorry I'm a bit out of my area with the MCU stuff.  :-//

Thanks!



« Last Edit: January 25, 2024, 12:53:25 am by msquared »
 
The following users thanked this post: bson, DavidAlfa

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Yes!  :-+
And the other side of the button? In the 1273 they seem to be multiplexed with diodes, no idea here.

Another U1273AX failsafe test!
The jump test should do nothing, it's just adding a jump between bootloader, custom place ands back to app, no failsafe of any kind.
« Last Edit: January 23, 2024, 05:32:39 am by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline msquared

  • Regular Contributor
  • *
  • Posts: 60
  • Country: us
Completely missed that.  |O

The "common" side which is shared with SW1-SW4 goes to Pin 34 P73/KR3.

 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Yes!  :-+
And the other side of the button? In the 1273 they seem to be multiplexed with diodes, no idea here.

Another U1273AX failsafe test!
The jump test should do nothing, it's just adding a jump between bootloader, custom place ands back to app, no failsafe of any kind.
Ok so this is the best failsafe version so far. Meter operates as expected when I turn it on. If I go to [Setup], I can do whatever adjustment I need to do, but then when I exit the setup mode by pressing the same button again, it goes to boot mode. To exit boot mode I just need to turn meter off and on again using the main selector lever.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Hmm? How possible? It should only go into update if you hold Exit and turn the meter on.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Hmm? How possible? It should only go into update if you hold Exit and turn the meter on.
Because this meter performs "reboot" as in off/on sequence autamatically every time user tries to exit Setup menu - to exit Setup menu user presses and holds Setup button.

If I press and hold Dual/Exit button while turning on the meter, nothing happens. If I press and hold Setup button while turning meter on then it enters the boot mode.
 
The following users thanked this post: voltsandjolts

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Understood!
But better we find a more suitable button, entering update mode every time you exit the setup screen will be very annoying!
Please try the attached tests. I'm now testing the other 3 pins (P7.6, 7.5, 7.4). Try to find which butttons trigger update mode now.
« Last Edit: January 23, 2024, 07:00:26 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Understood!
But better we find a more suitable button, entering update mode every time you exit the setup screen will be very annoying!
Please try the attached tests. I'm now testing the other 3 pins (P7.6, 7.5, 7.4). Try to find which butttons trigger update mode now.

Somehow this update is problematic. After loading first firmware meter goes into loading screen but it is not detected by uploader. Do you think if I delete the same block as before it will resurrect it? I loaded "U1273AX_V301_failsafe_p74.ag" and this problem started.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Yes, that will always work. So with p74 it's not booting normally?
Doesnt make sense, it's the exactly the same code as the previously working test, except it's just reading a different pin!
Code: [Select]
sub_7f00:                                           ; From bootloader
    br !llab_7fdb            ;7f00  9b db 7f         ; Go to failsafe check

lab_7fdb:                                           ; Failsafe check
    mov pm7,#0xf0           ;7fdb  13 27 f0         ; Set P7.7-4 as input, P7.3-0 as output
    mov pu7,#0xf0           ;7fde  13 37 f0         ; Enable P7.7-4 pullups
    mov p7,#0x00            ;7fe1  11 07 00         ; P7.3-0 outputs low
    movw ax,#0x0100         ;7fe4  10 00 01         ; Much smaller delay
lab_7fe7:
    subw ax,#0x0001         ;7fe7  da 01 00
    bnz lab_7fe7            ;7fea  bd fb   
    bt p7.4,lab_7ff0        ;7fec  cc 07 01         ; If P7.4 reads 1, button is not pressed
    ret                     ;7fef  af               ; Button pressed, return to bootloader (Enter update mode)     
lab_7ff0:                                           ; Button not pressed
    mov p7,#0x0f            ;7ff0  11 07 0f         ; All outputs high (Same as the app init)
    br !lab_3015            ;7ff3  9b 15 30         ; Jump to main app
« Last Edit: January 23, 2024, 08:38:36 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
So now resetting the ports before jumping:
Code: [Select]
sub_7f00:                                           ; From bootloader
    br !llab_7fdb            ;7f00  9b db 7f         ; Go to failsafe check

lab_7fdb:                                           ; Failsafe check
    mov pm7,#0xf0           ;7fdb  13 27 f0         ; Set P7.7-4 as input, P7.3-0 as output
    mov pu7,#0xf0           ;7fde  13 37 f0         ; Enable P7.7-4 pullups
    mov p7,#0x00            ;7fe1  11 07 00         ; P7.3-0 outputs low
    movw ax,#0x0100         ;7fe4  10 00 01         ; Much smaller delay

lab_7fe7:
    subw ax,#0x0001         ;7fe7  da 01 00
    bnz lab_7fe7            ;7fea  bd fb   
    mov a,p7                ;7fec  f0 07            ; Move  P7 value into A
    mov pm7,#0xff           ;7fee  13 27 ff         ; Clear port config
    mov pu7,#0x00           ;7ff1  13 37 00
    bt a.7,lab_7ff8         ;7ff4  31 7e 01         ; test A, bit 7
    ret                     ;7ff7  af               ; Return (Button pressed)

lab_7ff8:
    br !lab_3015            ;7ff8  9b 15 30         ; Enter app (Not pressed)
« Last Edit: January 23, 2024, 08:37:41 pm by DavidAlfa »
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Online voltsandjolts

  • Supporter
  • ****
  • Posts: 2300
  • Country: gb
Re: 8-Bit 78K0: D78F0547 help with firmware modification
« Reply #69 on: January 27, 2024, 12:07:04 pm »
Agilent / Keysight U1273A / U1273AX

 - If your device has firmware version v4.xx, it will work straight away, no firmware modification is required!

So why would you not just update your U1273A or U1273AX to Keysight V4.xx firmware?
Does that firmware only run on newer DMMs due to hardware changes?
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Because you can't. The important functions are in the bootloader and it's never updated.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: voltsandjolts

Online voltsandjolts

  • Supporter
  • ****
  • Posts: 2300
  • Country: gb
Ah, OK. So newer meters come with a newer bootloader (and associated functions). Whereas older meters are stuck with the bootloader they have and the outdated display drivers stored with the bootloader.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
Yes. Theorically you could attach the programmer and load the entire v4 fw.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: voltsandjolts

Offline onesystemTopic starter

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Yes. Theorically you could attach the programmer and load the entire v4 fw.
Since with regular firmware udpdates meter calibration is unaffected I only can presume that flashing firmware with programmer would affect the calibration parameters unless you copy them from that meter's firmware - something to keep in mind.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5912
  • Country: es
It's probably in the external EEPROM.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf