Why does my printer keep going into a deep sleep/offline?
May 12, 2023 3:04 PM   Subscribe

I have a Brother HL-L2350DW laser printer. It works great. Except... it's started ignoring my attempts to print 95% of the time. Even immediately after being restarted, it goes to "deep sleep" on its small display (but does appear to be connected to wifi, based on the wifi button being a solid green). The printer shows up as "offline" on my computer, and I can't get it to print. Help!


I have a Macbook. Currently it spins on "looking for printer" or "unable to locate printer", even when printer and computer are connected to the same wifi network. Power cycling the printer doesn't help. I feel like I used to be able to get a connection by disconnecting my computer from wifi and reconnecting it, but that technique has stopped working in the past couple weeks.

The printer has no error messages and no jams. It has plenty of ink and plenty of paper. It only has the password and name of a single wifi network programmed in, it has a solid green light on the wifi button indicating that it's connected, and I have confirmed that my computer is connected to that same wifi network.

What's going on here? How do I fix this? I just want to print without having to go to the public library!
posted by cnidaria to Technology (15 answers total) 26 users marked this as a favorite
Response by poster: Update: I nuked the old printer entry in System Preferences, and re-added it by using the printer's IP address. Nothing has changed... it's still using AirPrint as before. But despite the lack of substantive change, it appears to be working so far.

Still curious to know what caused this so I don't have to continue repeating this song and dance.
posted by cnidaria at 3:24 PM on May 12

This is why I absolutely despise my Brother printer and wish I could pitch it out of a window and put a pox on everyone's house who constantly recommends this POS. I just checked and forcing it to reconnect to WiFi still works for me, but I'm on a PC, not a Mac. For AirPrint I have to make sure I am on the correct WiFi network--my wireless provider has two different networks using the same password and it seems to be random which one my phone selects so if my phone connects to the one my printer is not on AirPrint won't work for me.
posted by MagnificentVacuum at 3:27 PM on May 12

Best answer: Look to see if your wifi access point can pin the printer to a static address instead of dhcp. I had a brother that kept wandering it’s address, and local machines would lose the connection. You might also be able to set it’s own static ip through the console, or a local web interface.
posted by nickggully at 3:47 PM on May 12 [12 favorites]

I have the exact same printer. I have gone through long periods of despising it when it has decided not to work via wifi, even through system resets and factory resets and reinstalls and router settings and Brother troubleshooting apps and everything else there was to possibly throw at the problem. The first three months I had it, it worked fine, except I would sometimes have the problem you describe. Then it stopped working - the wifi light started flashing and would not stop. It didn't print anything for six months - it just sat there. I changed my wifi password to AAAAAAAA to try to reduce the miserable hours trying to connect via its little arrow button. I tried to connect several hundred times, I'd say, but nothing. Then one day for no reason the wifi light was solid green like it should be and it worked like a dream for three months again. Until it went back to flashing. That time I went and bought a 4-meter USB cable that I trailed across the room, and I just lived like that. However, a couple of months ago, I changed internet providers, and I don't know why, but it's gone back to being fully functional and seems rock solid - except that occasionally, maybe 1 time in 100, it won't wake from deep sleep. When it happens, I wake it up using the panel on the printer and then it catches on. It's not nice but it works. There is no reasoning with this brute, nothing it does makes any sense, so simply be glad you made it work this time and pray it lasts.
posted by cincinnatus c at 3:51 PM on May 12 [4 favorites]

Best answer: Seconding nickggully's suggestion. We used this model for my volunteer group this past tax season and as part of the initial setup, we gave it a static IP. Often the tiny screen would say deep sleep if no one had printed in the last few minutes, but it always woke up as soon as someone did print. We were using Chromebooks and a hotspot. People did sometimes lose the printer connection, but they just needed a computer reboot to get it back.

If you are digging through the settings and you need the password, it may be the default or it may be printed on the back of the printer itself.
posted by soelo at 4:16 PM on May 12

Best answer: This video helped get mine to stop going into deep sleep.
posted by icaicaer at 4:24 PM on May 12 [3 favorites]

Response by poster: I have assigned my printer a static IP address, and turned off deep sleep mode. Thank you, nickggully, soelo, and icaicaer! (Also the fact that the Deep Sleep mode is behind a secret button combination -- what the heck is that goofiness?)

Fingers crossed this solves the issue.
posted by cnidaria at 4:30 PM on May 12 [4 favorites]

My previous advice on this topic starts here. All of it is still applicable, I think.
posted by flabdablet at 4:08 AM on May 13 [1 favorite]

Still curious to know what caused this so I don't have to continue repeating this song and dance.

It's not really the printer's fault. It's a combination of TCP/IP being a stupid broken protocol suite and printer drivers being written as if TCP/IP were not a stupid broken protocol suite.

Devices accessible over Ethernet or WiFi have Media Access Control (MAC) addresses built in. MAC addresses are, by design, globally unique from the factory: in theory, no two devices on the planet are ever supposed to have the same MAC address and will never need to, because MAC addresses are 48 bits long and 248 is 280 trillion and 280 trillion is 28 thousand times the number of people who will ever exist on this planet at the same time if UN population projections are to be believed.

TCP/IP runs on top of Ethernet or WiFi and has its own addressing scheme, not based in any way on the MAC addresses. IP addresses are only 32 bits long, and 232 is four billion, and there are already well over four billion networked devices in existence. So IP addresses get re-used a lot and the only reason the Internet still works is because there's a cheap hack called Network Address Translation that allows multiple local networks to re-use whole ranges of IP addresses without causing device conflicts inside themselves.

When a device that speaks TCP/IP connects to a network based on Ethernet or WiFi, there's an auxiliary protocol called ARP (Address Resolution Protocol) that maintains a network-accessible mapping between MAC addresses and TCP/IP addresses so that the latter can actually be used to direct packets from one device to another. Another accessory protocol called DHCP (Dynamic Host Control Protocol) can assign an unused IP address to any MAC address that appears on the network and doesn't already have an ARP mapping.

ARP is a decentralized peer-to-peer protocol that needs a complete peer implementation inside every device that also implements TCP/IP. By contrast, DHCP is a centralized (client/server) protocol, where every device that wants to pick up an address that way needs a DHCP client but the local IP network should only ever have one DHCP server. That server almost always exists inside the same router responsible for relaying network traffic between the local IP network and the wider Internet.

Because TCP/IP puts such severe restrictions on the number of local IP addresses that can exist on any local network (much more severe than the global four billion limit; typical home networks are limited to at most a few hundred IP addresses each) and there's essentially no limit on the number of MAC addresses that could show up as portable devices come and go, DHCP servers need some policy for re-using IP addresses that no longer appear to be in use. They do this by maintaining a so-called pool of DHCP-assignable IP addresses, any of which can be leased to a DHCP client for a limited time (typically 12 or 24 hours for a home network).

If a DHCP client doesn't periodically renew its lease before it expires, its associated IP address gets returned to the pool and at some point will be handed out to some other device. Most DHCP servers will try to avoid issuing a DHCP lease to a device that hasn't had it before until it's forced to by the pool running dry, but the current state of the DHCP address pool is often not maintained in non-volatile memory so once you restart your router, all bets are off.

In practice, the IP addresses that end up assigned to networkable devices like PCs and printers via DHCP are actually more stable than you'd expect after reading the above. This is mostly because people are creatures of habit and tend to power up their various bits of equipment in a consistent order. But any design that relies sensitively on any device keeping the same IP address now as it had five minutes ago is shit design all the same.

Which brings us to printer drivers. Almost all of them do expect network-connected printers to keep the same IP address as they had when the printer driver was first used to connect to them and will crack the sads in assorted ways if that fails to happen. Printer drivers often assume that if a printer is no longer accessible via the IP address it used to have, then the printer is turned off or otherwise disconnected from the network.

Some printer drivers, like the one built into Brother's own printing app for phones, are smart enough to learn the MAC addresses for their connected printers and try using those directly. Most are not, because the printing subsystem in the OS that hosts them gives them no way to do that.

So everything works better if the printer's MAC address always ends up associated with the same IP address. This can be done by telling the printer itself not to use DHCP, instead just hard-configuring a static IP address into it via its own setup menu, but for reasons I won't bore you with now that's a fiddly and error-prone process and there are lots of ways for the inexperienced to fuck it up.

The more robust option is to tell the DHCP server to reserve one specific IP address for use with the printer's MAC address and only that MAC address, so that the only device that will ever have that IP address leased to it is that printer. This is called a DHCP lease reservation and if you're not frightened by your router's admin interface then I think those are the right tool for this job.
posted by flabdablet at 5:24 AM on May 13 [40 favorites]

flabdanlet, that was a good and thorough explanation. I hope you don't mind but I plan to quote it a lot in the future. Excellent writing!!!
Also: [MetaFilter] will crack the sads in assorted ways.
posted by wenestvedt at 5:28 AM on May 13 [2 favorites]

I'll add that with the plethora of devices that can use wifi, and the emergence of ip address privacy foolishness there is is indeed the risk of exhausting the local DHCP pool of addresses on some consumer grace routers. Leases do expire but it depends on that timeout interval.

While a class C might support up to 253 devices, not all routers come configured out of the box to use it all. So if the pool is small and you have enough devices you can run into problems.

Using DHCP leases on the router for fixed appliances like printers (or other fixed things like home automation gear or nas servers) helps prevent those devices from getting caught up in the shenanigans.
posted by wkearney99 at 7:54 AM on May 13 [1 favorite]

This mathowie guy's post help sort mine out: https://a.wholelottanothing.org/2021/06/14/getting-a-brother-hl-l2350dw-to-work/
posted by Nekosoft at 6:17 PM on May 13 [2 favorites]

I had the same problem and I eventually ditched it for a model with an Ethernet port.
posted by Just the one swan, actually at 9:09 PM on May 13

Wired network connections obviously have far fewer failure modes than wireless ones and should always be preferred when achievable.

That said, the same IP address inconsistency issues that affect WiFi also affect Ethernet for the same reasons, so it's still worth going to the trouble to set up a DHCP address reservation for the printer even on a wired network.
posted by flabdablet at 10:22 PM on May 13 [1 favorite]

Sometimes on mine, I have to visit the printers settings webpage (just enter in it's IP address in a browser, hopefully you set it to a reserved/permanent address) to get it to wake up enough to show as visible to my wife's iPhone. My Android phones typically don't need this step, but sometimes they do.
posted by ArgentCorvid at 11:25 AM on May 15

« Older I'm in the US. How can I get semiglutide mail...   |   Data Sources for Sex over 65? Newer »

You are not logged in, either login or create an account to post comments