mailto: blog -at- heyrick -dot- eu

My laser printer is dead

As storm Nelson blew outside, I opened up my laser printer.

Using a multimeter, I worked out where I could tap in to get a +24V supply, and where to inject the 3.3V for the electronics.

Adding some hooks
Adding some hooks (red=3.3V, orange=24V, black=0V).

Once the hooks were in place, I powered up the printer and adjusted the output until it read 3.3V.

The output power
The output power set to 3.3V.

That done, time to power down and attach the red wire to inject the 3.3V into the machine. The regulator has the ability to cope with 3A, though, maybe not for extended durations as there's no heatsink other than that built into the chip. At any rate, it ought to be enough to get some signs of life from the circuitry.

Only it didn't.

I measured the little motherboard's input as 3.14V, so I adjusted the power supply until it read 3.5V, which was 3.32V at the motherboard.
Probing around, something was 1.8V so if there is stuff running at 1.8V (not unheard of), then there's power getting into the board. But no signs of life when I pressed the power button.

So I think I'm going to have to accept that it's a dodo.

 

On the other hand, I have a module that can generate a useful voltage of my choice from a wide range of inputs. I think the input can be around 5V to 40V, and the output can be about 0.5V to 36V. The only limitation is that the output must be less than the input.

Even better, without changing its setup at all, I hooked it to the 12V supply for my keyboard and got a nice steady 3.3V out of it. So the output is controlled independently of the input. Nice.

3.3V on half the previous input
3.3V on half the previous input.

 

OLED module update

When I hooked up the new OLED to my Pi, I noticed that data sent using my OLED module was shifted to the right by a couple of rows, and thus slightly corrupt.

128x64 OLED showing a slightly corrupt output
128×64 OLED showing a slightly corrupt output.

It turns out that two bytes were being sent at the beginning of every pixel data transfer. I'm not sure what they were for, and it certainly seemed as if the original SSD1306 driver wasn't bothered by their presence, as the output looked okay on my old OLED.
The newer SSD1315 that's in the replacement display was less willing to tolerate this extaneous data, and thus corrupted the display by interpreting these bytes as pixel data.

So I removed those bytes and rebuilt the project... and cried a little at realising that I started my OLED driver module ten years ago. Damn, time passes too quickly.

128x64 OLED showing the expected output
128×64 OLED showing the expected output.

The archive below contains the OLED module, some tests and examples, documentation (don't worry that the documentation is for OLED v0.04, there have been no API changes), and the source code. It is licenced under the EUPL version 1.1.

Just messing around
Just messing around.

Download oled_0-07.zip (149.37K)
For RISC OS machines.

 

 

Your comments:

Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺ ADDING COMMENTS DOES NOT WORK IF READING TRANSLATED VERSIONS.
 
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.

No comments yet...

Add a comment (v0.11) [help?] . . . try the comment feed!
Your name
Your email (optional)
Validation Are you real? Please type 40313 backwards.
Your comment
French flagSpanish flagJapanese flag
Calendar
«   March 2024   
MonTueWedThuFriSatSun
    13
4567810
111214151617
18192124
27293031

Advent Calendar 2023
(YouTube playlist)

(Felicity? Marte? Find out!)

Last 5 entries

List all b.log entries

Return to the site index

Geekery

Search

Search Rick's b.log!

PS: Don't try to be clever.
It's a simple substring match.

Etc...

Last read at 23:23 on 2024/03/28.

QR code


Valid HTML 4.01 Transitional
Valid CSS
Valid RSS 2.0

 

© 2024 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.

 

Have you noticed the watermarks on pictures?
Return to top of page