[{"data":1,"prerenderedAt":907},["ShallowReactive",2],{"public-article:cyberdeck-build-with-a-twist":3},{"article":4},{"id":5,"slug":6,"title":7,"excerpt":8,"description":8,"category":9,"categorySlug":10,"categoryNeedsReview":11,"tags":12,"status":18,"publishedAt":19,"updatedAt":20,"readTime":21,"art":22,"coverImage":23,"isMock":11,"author":24,"seo":30,"content":31},"2","cyberdeck-build-with-a-twist","Just Another Cyberdeck Build Story, but With a Twist","Because apparently a portable Linux computer wasn't complicated enough.","Projects & Builds","projects-builds",false,[13,14,15,16,17],"Linux","3D Printing","raspberry pi","gpio","cyberdeck","published","2026-10-16T12:45:02Z","2026-10-17T20:29:38Z",4,"terminal","https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F1b9494ce0242aa257e3e00acb61324b6\u002Flarge.jpg",{"id":25,"slug":26,"name":27,"initials":28,"bio":29},"1","author-1","David","D","Techmerc contributor.",{"title":7,"description":8,"image":23},{"type":32,"content":33},"doc",[34,40,44,48,52,56,60,67,71,78,82,86,90,94,98,109,113,117,121,125,130,134,138,142,146,150,154,159,163,167,171,181,185,211,215,219,223,227,231,236,240,244,248,252,256,260,264,268,273,277,281,285,289,293,297,325,333,339,343,347,352,356,360,364,368,388,392,397,401,405,409,426,430,434,449,453,457,461,465,469,474,478,482,486,490,494,498,502,506,510,514,518,535,539,543,547,551,557,561,565,569,573,577,581,585,589,592,596,605,609,615,619,623,627,631,636,640,644,648,652,667,671,675,679,683,688,692,696,700,704,709,713,717,721,725,729,733,739,743,747,751,756,760,764,768,772,776,780,784,788,792,796,803,820,825,829,833,839,843,847,851,855,859,863,867,871,875,879,883,887,891,895,899,903],{"type":35,"content":36},"paragraph",[37],{"type":38,"text":39},"text","There are probably thousands of cyberdecks out there. Some are beautiful pieces of engineering, built from aluminum with expensive components and enough processing power to run a small spaceship. Others are Raspberry Pis stuffed into cardboard boxes, held together by hot glue and optimism.",{"type":35,"content":41},[42],{"type":38,"text":43},"Mine sits somewhere in the middle.",{"type":35,"content":45},[46],{"type":38,"text":47},"It's a bulky, black-and-yellow, battery-powered Linux computer with a mechanical keyboard, touchscreen, carrying handles, and interchangeable GPIO cartridges.",{"type":35,"content":49},[50],{"type":38,"text":51},"It looks like something you'd use to hack a security terminal in Cyberpunk 2077.",{"type":35,"content":53},[54],{"type":38,"text":55},"In reality, I've mostly used it to configure routers, experiment with electronics, and investigate why my electric window shutters suddenly decided to forget their remote controls.",{"type":35,"content":57},[58],{"type":38,"text":59},"But I'm getting ahead of myself.",{"type":61,"attrs":62,"content":64},"heading",{"level":63},2,[65],{"type":38,"text":66},"It Started With an Attacker",{"type":35,"content":68},[69],{"type":38,"text":70},"I work as a developer at a fairly large company. The company itself is big, but our technical team is relatively small, which means a handful of people are responsible for keeping some rather large systems running.",{"type":35,"content":72},[73],{"type":38,"marks":74,"text":77},[75],{"type":76},"bold","One day, somebody attacked one of those systems.",{"type":35,"content":79},[80],{"type":38,"text":81},"I managed to stop him and close the vulnerability he was exploiting. Problem solved.",{"type":35,"content":83},[84],{"type":38,"text":85},"Except he came back.",{"type":35,"content":87},[88],{"type":38,"text":89},"This time with better tools - I dealt with that too... Then he came back again.",{"type":35,"content":91},[92],{"type":38,"text":93},"Eventually, I managed to connect the activity to a particular person. Let's just say he wasn't quite as careful about hiding his identity as he thought. We contacted him, and my boss took the matter to court.",{"type":35,"content":95},[96],{"type":38,"text":97},"That was the end of my involvement in the story, but the whole experience left me thinking. This guy was reasonably clever. Script-kiddie clever, perhaps, but clever enough to cause problems.",{"type":35,"content":99},[100,102,107],{"type":38,"text":101},"And then I remembered a scene from ",{"type":38,"marks":103,"text":106},[104],{"type":105},"italic","Mr. Robot",{"type":38,"text":108},":",{"type":35,"content":110},[111],{"type":38,"text":112},"Elliot is at a hospital, looking at its security and the poor guy responsible for keeping everything running. He starts thinking about what someone like that could possibly do against someone like himself. And that thought stuck with me.",{"type":35,"content":114},[115],{"type":38,"text":116},"I'd managed to deal with this particular attacker, but what if the next one wasn't just another script kiddie? What if the next one was an Elliot Alderson?",{"type":35,"content":118},[119],{"type":38,"text":120},"I don't administer the company's servers. That's not my responsibility. But I do write applications, and making sure those applications aren't full of security holes absolutely is my responsibility so I started learning more about web application penetration testing.",{"type":35,"content":122},[123],{"type":38,"text":124},"And then, one evening, while browsing Instructables, I discovered cyberdecks.",{"type":61,"attrs":126,"content":127},{"level":63},[128],{"type":38,"text":129},"Wait, People Actually Build These Things?",{"type":35,"content":131},[132],{"type":38,"text":133},"I'd encountered cyberdecks before, mostly in science-fiction games. But that evening on Instructables, I discovered something I hadn't expected: an entire community of people building these things in real life.",{"type":35,"content":135},[136],{"type":38,"text":137},"And some of their ideas were absolutely brilliant... Naturally, I wanted one!",{"type":35,"content":139},[140],{"type":38,"text":141},"Unfortunately, I'm not exactly swimming in disposable income. I wanted something that looked and felt like a proper piece of equipment, without spending a fortune on expensive components or custom-machined aluminum parts. Something in the middle. Affordable, reasonably well-built, and actually useful.",{"type":35,"content":143},[144],{"type":38,"text":145},"My original motivation was learning web application penetration testing, but I quickly realized that limiting the machine to security experiments would be a missed opportunity. After all, if I was going to build a portable computer, why limit it to doing things that an ordinary laptop could already do?",{"type":35,"content":147},[148],{"type":38,"text":149},"I have laptops.",{"type":35,"content":151},[152],{"type":38,"text":153},"What I don't have is a laptop with GPIO pins.",{"type":61,"attrs":155,"content":156},{"level":63},[157],{"type":38,"text":158},"The Cartridge Problem, or Why I Can't Have Nice Breadboards",{"type":35,"content":160},[161],{"type":38,"text":162},"My original plan was fairly conventional. I'd put a Raspberry Pi 4 inside the cyberdeck and expose its GPIO connector somewhere on the side, a little like the Raspberry Pi 400. Simple enough.",{"type":35,"content":164},[165],{"type":38,"text":166},"But I kept thinking about how I actually work on electronics projects. I'm a father of three. I have a job, a house, and a collection of hobbies competing for whatever free time survives the day.",{"type":35,"content":168},[169],{"type":38,"text":170},"This means I have a special talent for starting a project, abandoning it for a few weeks, starting something else, and eventually returning to the first project with absolutely no memory of how I wired it.",{"type":35,"content":172},[173,175,179],{"type":38,"text":174},"If you've ever returned to a breadboard covered in jumper wires and thought, ",{"type":38,"marks":176,"text":178},[177],{"type":105},"\"What the hell was I doing here?\"",{"type":38,"text":180},", you know the feeling.",{"type":35,"content":182},[183],{"type":38,"text":184},"I didn't want that problem built into my cyberdeck. That's where the cartridges came in.",{"type":186,"attrs":187},"image",{"src":188,"alt":189,"title":190,"width":191,"height":192,"alignment":193,"displayWidth":194,"linkToOriginal":11,"mediaId":195,"caption":196,"size":194,"sources":197},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Ffa39e540ca0819e25919ff24c948c998\u002Flarge.jpg","cyberdeck-raspberry-pi",null,1599,839,"center","large","13","",{"original":198,"thumbnail":202,"medium":206,"large":210},{"url":199,"width":200,"height":201},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Ffa39e540ca0819e25919ff24c948c998\u002Foriginal.jpg",3092,1623,{"url":203,"width":204,"height":205},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Ffa39e540ca0819e25919ff24c948c998\u002Fthumbnail.jpg",319,167,{"url":207,"width":208,"height":209},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Ffa39e540ca0819e25919ff24c948c998\u002Fmedium.jpg",959,503,{"url":188,"width":191,"height":192},{"type":35,"content":212},[213],{"type":38,"text":214},"Instead of having a permanently exposed GPIO header with wires hanging out of it, I designed a connector on top of the machine that accepts interchangeable, 3D-printed modules. Each cartridge can contain its own electronics, wiring, connectors, and even another GPIO header inside. Think of them as semi-permanent little projects.",{"type":35,"content":216},[217],{"type":38,"text":218},"I could build an RF module with a receiver, transmitter, and small OLED display. Then, when I get bored of that, unplug it and insert another cartridge containing a servo controller for a robotic arm. The wiring stays inside each cartridge.",{"type":35,"content":220},[221],{"type":38,"text":222},"No rebuilding everything. No archaeological expeditions through jumper wires.",{"type":35,"content":224},[225],{"type":38,"text":226},"And because the cartridges are 3D printed, they don't need to share one fixed enclosure design. One might have a screen. Another might need a speaker. Another might be an oddly shaped box full of connectors. As long as it fits next to the main screen, doesn't weigh too much, and connects to the GPIO interface, it's fair game.",{"type":35,"content":228},[229],{"type":38,"text":230},"It's basically a poor man's modular laboratory.",{"type":61,"attrs":232,"content":233},{"level":63},[234],{"type":38,"text":235},"My First Cartridge Investigated a Domestic Conspiracy",{"type":35,"content":237},[238],{"type":38,"text":239},"Of course, designing a modular system is one thing. Actually having a reason to use it is another. Fortunately, my house provided one.",{"type":35,"content":241},[242],{"type":38,"text":243},"One day, all my electric window shutters apparently forgot their remote controls. All of them... And they are on two separate system.",{"type":35,"content":245},[246],{"type":38,"text":247},"These use rolling-code remotes, so I couldn't immediately explain what had happened. Was there interference? Was something transmitting continuously on the same frequency? Had some strange RF activity confused the system?",{"type":35,"content":249},[250],{"type":38,"text":251},"I had no idea. But I did have a cyberdeck.",{"type":35,"content":253},[254],{"type":38,"text":255},"So I built a prototype RF cartridge and started listening for radio traffic. I picked up a packet or two, but nothing suggesting the channel was being continuously flooded during my test. And that's about as far as I got.",{"type":35,"content":257},[258],{"type":38,"text":259},"The mystery remains unsolved.",{"type":35,"content":261},[262],{"type":38,"text":263},"Somewhere in my collection of unfinished projects is an RF cartridge waiting for me to continue investigating the case of the forgetful window shutters. Which, incidentally, demonstrates exactly why I wanted cartridges in the first place.",{"type":35,"content":265},[266],{"type":38,"text":267},"I can return to it whenever I have time without reconstructing the entire experiment. Assuming I remember where I put the cartridge.",{"type":61,"attrs":269,"content":270},{"level":63},[271],{"type":38,"text":272},"From a Slim Computer to a 38 sized Brick",{"type":35,"content":274},[275],{"type":38,"text":276},"Initially, I wanted the cyberdeck to be small. Really small.",{"type":35,"content":278},[279],{"type":38,"text":280},"One of my earliest ideas involved using a keyboard salvaged from an old tablet case.",{"type":35,"content":282},[283],{"type":38,"text":284},"You know those cheap tablet covers with a built-in keyboard and some horrible ancient micro-USB connector? Nobody wants them anymore.",{"type":35,"content":286},[287],{"type":38,"text":288},"Which makes them excellent sources of cheap components.",{"type":35,"content":290},[291],{"type":38,"text":292},"I found that you could get an entire keyboard for around €4, provided you were willing to tear apart the case surrounding it. I experimented with that idea, but ultimately decided to use a small mechanical keyboard instead.",{"type":35,"content":294},[295],{"type":38,"text":296},"The enclosure went through several prototypes, and with every iteration it became a little less compact:",{"type":298,"content":299},"bulletList",[300,307,313,319],{"type":301,"content":302},"listItem",[303],{"type":35,"content":304},[305],{"type":38,"text":306},"The keyboard needed space.",{"type":301,"content":308},[309],{"type":35,"content":310},[311],{"type":38,"text":312},"The batteries needed space.",{"type":301,"content":314},[315],{"type":35,"content":316},[317],{"type":38,"text":318},"The screen needed somewhere to attach.",{"type":301,"content":320},[321],{"type":35,"content":322},[323],{"type":38,"text":324},"The Raspberry Pi and wiring needed space.",{"type":35,"content":326},[327,329],{"type":38,"text":328},"Eventually, I looked at the result and realized I'd built something resembling a ",{"type":38,"marks":330,"text":332},[331],{"type":105},"38 Brick",{"type":35,"content":334},[335],{"type":38,"marks":336,"text":338},[337],{"type":105},"For those unfamiliar with construction terminology, that's a massive hollow clay brick used for building walls. The 38 refers to its nominal wall thickness in centimeters.",{"type":35,"content":340},[341],{"type":38,"text":342},"It's not a delicate little brick you casually throw into your pocket. It's the sort of thing you build a house out of.",{"type":35,"content":344},[345],{"type":38,"text":346},"And my cyberdeck was rapidly developing the same proportions. At that point, there was only one sensible thing to do. Redesign the whole enclosure and give it handles.",{"type":61,"attrs":348,"content":349},{"level":63},[350],{"type":38,"text":351},"Yes, the Handles Are Supposed to Be That Big",{"type":35,"content":353},[354],{"type":38,"text":355},"I'd seen plenty of cyberdecks with carrying handles. Usually much smaller, prettier handles. But I wanted mine to be practical.",{"type":35,"content":357},[358],{"type":38,"text":359},"Imagine standing on a ladder, trying to configure an access point or connect to a router with an Ethernet patch cable. Holding a laptop open while working in an awkward position isn't particularly enjoyable.",{"type":35,"content":361},[362],{"type":38,"text":363},"With handles, I could carry the cyberdeck around the house, position it more easily, and have something solid to hold onto.",{"type":35,"content":365},[366],{"type":38,"text":367},"And why are the handles so enormous? Because that's how long my arms are. Seriously. I sized them so I could comfortably hold one handle with my hand while supporting the other side with my arm.",{"type":186,"attrs":369},{"src":370,"alt":196,"title":190,"width":371,"height":372,"alignment":193,"displayWidth":194,"linkToOriginal":11,"mediaId":373,"caption":196,"size":194,"sources":374},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F3b9bd55b08386260ce6e46ac32d70819\u002Flarge.jpg",1600,952,"15",{"original":375,"thumbnail":379,"medium":383,"large":387},{"url":376,"width":377,"height":378},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F3b9bd55b08386260ce6e46ac32d70819\u002Foriginal.jpg",2849,1696,{"url":380,"width":381,"height":382},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F3b9bd55b08386260ce6e46ac32d70819\u002Fthumbnail.jpg",320,190,{"url":384,"width":385,"height":386},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F3b9bd55b08386260ce6e46ac32d70819\u002Fmedium.jpg",960,571,{"url":370,"width":371,"height":372},{"type":35,"content":389},[390],{"type":38,"text":391},"The result looks like an industrial device somebody stole from a construction site in Night City. Which is much better than looking like a brick.",{"type":61,"attrs":393,"content":394},{"level":63},[395],{"type":38,"text":396},"Mechanical Keyboards and Organ Donations",{"type":35,"content":398},[399],{"type":38,"text":400},"The final keyboard is a cheap, compact mechanical one with blue switches. Getting it into the enclosure was relatively straightforward. I opened the original keyboard, removed its PCB, measured the mounting holes, and designed a suitable compartment in Tinkercad.",{"type":35,"content":402},[403],{"type":38,"text":404},"Print, test, adjust, repeat.",{"type":35,"content":406},[407],{"type":38,"text":408},"After a few iterations, the board fitted properly, the keycaps went back on, and the result looked surprisingly good.",{"type":186,"attrs":410},{"src":411,"alt":196,"title":190,"width":371,"height":412,"alignment":193,"displayWidth":194,"linkToOriginal":11,"mediaId":413,"caption":196,"size":194,"sources":414},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F6a81c6b9ed2a59fcc49c2fc7bd085ce0\u002Flarge.jpg",1131,"14",{"original":415,"thumbnail":419,"medium":422,"large":425},{"url":416,"width":417,"height":418},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F6a81c6b9ed2a59fcc49c2fc7bd085ce0\u002Foriginal.jpg",2328,1646,{"url":420,"width":381,"height":421},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F6a81c6b9ed2a59fcc49c2fc7bd085ce0\u002Fthumbnail.jpg",226,{"url":423,"width":208,"height":424},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F6a81c6b9ed2a59fcc49c2fc7bd085ce0\u002Fmedium.jpg",678,{"url":411,"width":371,"height":412},{"type":35,"content":427},[428],{"type":38,"text":429},"But that wasn't the first mechanical keyboard I used. Originally, I had a similar cheap model with red switches.",{"type":35,"content":431},[432],{"type":38,"text":433},"Unfortunately, during the project, I managed to tear off its USB connection. That was slightly inconvenient.",{"type":35,"content":435},[436,438,447],{"type":38,"text":437},"I eventually repaired it using a USB cable salvaged from an old mouse, and that keyboard now lives in my ",{"type":38,"marks":439,"text":446},[440],{"type":441,"attrs":442},"link",{"href":443,"target":444,"rel":445,"class":190,"title":190},"https:\u002F\u002Ftechmerc.eu\u002Farticles\u002Fthe-art-of-building-yesterday","_blank","noopener noreferrer nofollow","Retro PC setup",{"type":38,"text":448},".",{"type":35,"content":450},[451],{"type":38,"text":452},"So yes, one of my computers is using a keyboard repaired with parts from a dead mouse (not to the musician) because I broke it while building another computer.",{"type":35,"content":454},[455],{"type":38,"text":456},"That's not poor planning... That's component recycling!",{"type":35,"content":458},[459],{"type":38,"text":460},"At least that's what I'm telling myself.",{"type":35,"content":462},[463],{"type":38,"text":464},"And that abandoned €4 tablet keyboard idea? I still think it's useful. I'll probably use one in a future project where having a really slim keyboard matters more than mechanical switches.",{"type":35,"content":466},[467],{"type":38,"text":468},"Nothing is ever truly abandoned in a workshop. It just waits for another opportunity to become a problem.",{"type":61,"attrs":470,"content":471},{"level":63},[472],{"type":38,"text":473},"Powering the Monster",{"type":35,"content":475},[476],{"type":38,"text":477},"The cyberdeck runs on a Raspberry Pi 4, connected to a BIGTREETECH HDMI7 — a 7-inch, 1024 × 600 IPS capacitive touchscreen originally marketed for 3D printers.",{"type":35,"content":479},[480],{"type":38,"text":481},"I chose the screen for a very sophisticated reason. It was reasonably priced, supported HDMI and touch, and seemed like it would do the job.",{"type":35,"content":483},[484],{"type":38,"text":485},"I also decided to skip the traditional microSD card and use an SSD inside a USB M.2 enclosure. After all, if I was going to build a proper portable Linux computer, I wanted something a little better than running everything from a tiny memory card. The Pi boots directly from the SSD, with no microSD card involved.",{"type":35,"content":487},[488],{"type":38,"text":489},"And it helped. Storage performance was better, and the system was more responsive. Unfortunately, even with an SSD, the Raspberry Pi 4 was still painfully slow at some desktop tasks.",{"type":35,"content":491},[492],{"type":38,"text":493},"But I'll complain about that later.",{"type":35,"content":495},[496],{"type":38,"text":497},"Powering everything turned out to be another challenge. Initially, I considered building two battery compartments extending from the sides of the case.",{"type":35,"content":499},[500],{"type":38,"text":501},"Then I noticed the cyberdeck was already approaching the dimensions of construction material and decided that making it wider probably wasn't a fantastic idea. Luckily, I had an old power bank containing a healthy 10,000 mAh lithium battery.",{"type":35,"content":503},[504],{"type":38,"text":505},"Perfect! Except it wasn't.",{"type":35,"content":507},[508],{"type":38,"text":509},"The first test ended before the Raspberry Pi had even finished booting.",{"type":35,"content":511},[512],{"type":38,"text":513},"The problem wasn't necessarily the battery's capacity. The power-bank electronics couldn't supply enough current for the Pi and touchscreen together, and the system shut down. So naturally, my next thought was:",{"type":35,"content":515},[516],{"type":38,"text":517},"If one battery isn't enough, try two.",{"type":186,"attrs":519},{"src":520,"alt":196,"title":190,"width":371,"height":521,"alignment":193,"displayWidth":194,"linkToOriginal":11,"mediaId":522,"caption":196,"size":194,"sources":523},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Fb098e117f46b27e09404761e01ae4e26\u002Flarge.jpg",870,"16",{"original":524,"thumbnail":528,"medium":531,"large":534},{"url":525,"width":526,"height":527},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Fb098e117f46b27e09404761e01ae4e26\u002Foriginal.jpg",3165,1721,{"url":529,"width":381,"height":530},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Fb098e117f46b27e09404761e01ae4e26\u002Fthumbnail.jpg",174,{"url":532,"width":385,"height":533},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002Fb098e117f46b27e09404761e01ae4e26\u002Fmedium.jpg",522,{"url":520,"width":371,"height":521},{"type":35,"content":536},[537],{"type":38,"text":538},"The final build uses two 10,000 mAh lithium batteries, a 2S charging module, and a step-up converter advertised as capable of delivering 5 amps.",{"type":35,"content":540},[541],{"type":38,"text":542},"Fortunately, this one supplied enough power to run the cyberdeck without the Raspberry Pi constantly displaying its little low-voltage lightning bolt.",{"type":35,"content":544},[545],{"type":38,"text":546},"Depending on what I'm doing, I can get approximately 8–12 hours of operation.",{"type":35,"content":548},[549],{"type":38,"text":550},"Not bad for a portable brick.",{"type":61,"attrs":552,"content":554},{"level":553},3,[555],{"type":38,"text":556},"The Most Advanced Power Switch in the World",{"type":35,"content":558},[559],{"type":38,"text":560},"I also wanted a proper electronic power controller. Something similar in spirit to the embedded controllers used in laptops.",{"type":35,"content":562},[563],{"type":38,"text":564},"The idea was to have a small microcontroller — perhaps an Arduino — manage the power circuitry. Press a button, the Arduino wakes up, activates MOSFETs, and keeps the main circuit powered. Hold the button again, and the controller disconnects the power.",{"type":35,"content":566},[567],{"type":38,"text":568},"Elegant.",{"type":35,"content":570},[571],{"type":38,"text":572},"And importantly, it would let me isolate the batteries from the boost converter instead of allowing unnecessary standby drain. I spent time thinking about the circuit and how the power latching should work.",{"type":35,"content":574},[575],{"type":38,"text":576},"Then I realized something.",{"type":35,"content":578},[579],{"type":38,"text":580},"Do you know what else can disconnect a battery from a circuit and prevent unnecessary drain?",{"type":35,"content":582},[583],{"type":38,"text":584},"A switch.",{"type":35,"content":586},[587],{"type":38,"text":588},"Humanity solved this problem quite some time ago. So that's what the finished cyberdeck has.",{"type":35,"content":590},[591],{"type":38,"text":584},{"type":35,"content":593},[594],{"type":38,"text":595},"But wait. This is a cyberdeck, after all.",{"type":35,"content":597},[598,600,604],{"type":38,"text":599},"That means it's not just a power switch. It's an ",{"type":38,"marks":601,"text":603},[602],{"type":76},"emergency kill switch",{"type":38,"text":448},{"type":35,"content":606},[607],{"type":38,"text":608},"Imagine you're deep into some highly classified hacking operation, someone suddenly walks into the room, and you need to abandon the mission immediately.",{"type":35,"content":610},[611],{"type":38,"marks":612,"text":614},[613],{"type":105},"Click.",{"type":35,"content":616},[617],{"type":38,"text":618},"Mission aborted.",{"type":35,"content":620},[621],{"type":38,"text":622},"All evidence of your extremely suspicious network configuration activities is now sitting on an unpowered Raspberry Pi. Of course, abruptly cutting power isn't particularly healthy for Linux or the filesystem. Even an SSD won't save you from that. But that's a problem for future me.",{"type":35,"content":624},[625],{"type":38,"text":626},"The sophisticated power-management system, including proper battery monitoring, can wait for a future revision.",{"type":35,"content":628},[629],{"type":38,"text":630},"Sometimes the best engineering decision is knowing when to stop engineering.",{"type":61,"attrs":632,"content":633},{"level":63},[634],{"type":38,"text":635},"Making Linux Look Like Cyberpunk 2077",{"type":35,"content":637},[638],{"type":38,"text":639},"The operating system is Raspberry Pi OS with XFCE and a customized dark theme.",{"type":35,"content":641},[642],{"type":38,"text":643},"I wanted the desktop to fit the industrial black-and-yellow design of the case, so I browsed themes on XFCE-look, found something suitable, and added a yellow Cyberpunk 2077 wallpaper.",{"type":35,"content":645},[646],{"type":38,"text":647},"Does it make the machine more useful? No.",{"type":35,"content":649},[650],{"type":38,"text":651},"Does it make a Raspberry Pi feel like a hacking terminal from a science-fiction universe? Absolutely.",{"type":35,"content":653},[654,656,660,662,666],{"type":38,"text":655},"For software, I've used tools such as Wireshark and Burp Suite, along with the usual Linux utilities. I also installed SSH and configured SMB file sharing. Because here's the thing about developing on a tiny portable computer: just because you ",{"type":38,"marks":657,"text":659},[658],{"type":105},"can",{"type":38,"text":661}," do all your programming on a little screen doesn't mean you ",{"type":38,"marks":663,"text":665},[664],{"type":105},"should",{"type":38,"text":448},{"type":35,"content":668},[669],{"type":38,"text":670},"For larger projects, I prefer working from my main computer with proper monitors and a comfortable keyboard.",{"type":35,"content":672},[673],{"type":38,"text":674},"I develop remotely, transfer files, and use the cyberdeck itself for testing and small adjustments. That's how it makes the most sense to me. It isn't supposed to replace my workstation. I already have several laptops that can serve that purpose.",{"type":35,"content":676},[677],{"type":38,"text":678},"But none of those laptops have a GPIO interface designed to accept my strange collection of electronics cartridges.",{"type":35,"content":680},[681],{"type":38,"text":682},"That's what makes this machine useful.",{"type":61,"attrs":684,"content":685},{"level":63},[686],{"type":38,"text":687},"Performance, Expectations, and Reality",{"type":35,"content":689},[690],{"type":38,"text":691},"When I finally finished assembling the cyberdeck and saw my customized Linux desktop running on that little screen, I was genuinely happy.",{"type":35,"content":693},[694],{"type":38,"text":695},"Of course I was. I'd been working on it for months. Not because it actually required months of work, but because life kept interrupting and I kept abandoning the project. The keyboard worked, the touchscreen worked, the batteries worked, and the whole thing looked like something stolen from Night City.",{"type":35,"content":697},[698],{"type":38,"text":699},"Then I started using it... Oh boy.",{"type":35,"content":701},[702],{"type":38,"text":703},"The Raspberry Pi 4 handles basic tasks reasonably well, but once I started using it heavier, things became noticeably less enjoyable. And I wasn't running everything from some ancient microSD card. That helped with storage performance, but unfortunately, faster storage doesn't magically turn a Raspberry Pi 4 into a powerful computer.",{"type":61,"attrs":705,"content":706},{"level":553},[707],{"type":38,"text":708},"Is Raspberry Pi Really a Good Desktop Computer?",{"type":35,"content":710},[711],{"type":38,"text":712},"Don't get me wrong. I genuinely like Raspberry Pi as an electronics platform.",{"type":35,"content":714},[715],{"type":38,"text":716},"Its ecosystem is fantastic. The documentation, libraries, GPIO support, and enormous community make it relatively painless to experiment with hardware. But I really don't understand the enthusiasm for selling these boards as desktop PC replacements.",{"type":35,"content":718},[719],{"type":38,"text":720},"Especially considering the price.",{"type":35,"content":722},[723],{"type":38,"text":724},"I originally bought my Pi 4 for around €50. Recently, I've seen the same model advertised new for approximately €138. At that price, I could buy a second-hand Lenovo ThinkCentre Tiny or Dell OptiPlex Micro with substantially better performance for everyday desktop tasks.",{"type":35,"content":726},[727],{"type":38,"text":728},"Of course, those computers don't have the Pi's convenient GPIO interface.",{"type":35,"content":730},[731],{"type":38,"text":732},"But that's exactly my point.",{"type":35,"content":734},[735],{"type":38,"marks":736,"text":738},[737],{"type":76},"Why try to turn an excellent electronics platform into a mediocre desktop PC?",{"type":35,"content":740},[741],{"type":38,"text":742},"If I need a desktop computer, I'd rather buy an affordable second-hand x86 machine. If I need to control motors or read sensors, an Arduino, ESP32, or Raspberry Pi Pico might be a better fit.",{"type":35,"content":744},[745],{"type":38,"text":746},"Raspberry Pi's flexibility is valuable, but that doesn't automatically make it the best choice for everything. Personally, I think the emphasis on desktop computing has distracted from what makes these boards so appealing in the first place.",{"type":35,"content":748},[749],{"type":38,"text":750},"And that's a shame, because the electronics ecosystem is still genuinely brilliant.",{"type":61,"attrs":752,"content":753},{"level":553},[754],{"type":38,"text":755},"So, Was It Worth It?",{"type":35,"content":757},[758],{"type":38,"text":759},"The cyberdeck cost approximately €130 in components, excluding the Raspberry Pi. Since I originally paid around €50 for the board, the entire project came to roughly €180 (circa €300 in 2026 including the Pi).",{"type":35,"content":761},[762],{"type":38,"text":763},"For that money, I got a touchscreen, mechanical keyboard, SSD, two batteries, a custom 3D-printed enclosure, and interchangeable GPIO cartridges. I think that's a reasonable result.",{"type":35,"content":765},[766],{"type":38,"text":767},"Would I recommend building one? Absolutely.",{"type":35,"content":769},[770],{"type":38,"text":771},"But I'd think carefully about the hardware.",{"type":35,"content":773},[774],{"type":38,"text":775},"For a lightweight, terminal-focused cyberdeck, a used Raspberry Pi 4 could be a great choice. If you want a full graphical desktop with heavier applications, I'd seriously consider a more powerful Orange Pi or an x86-based board for the same price.",{"type":35,"content":777},[778],{"type":38,"text":779},"Another interesting possibility would be separating the computing and electronics responsibilities, letting a powerful computer run Linux while an RP2040-based microcontroller handles GPIO communication.",{"type":35,"content":781},[782],{"type":38,"text":783},"That's a bigger project, of course. And probably another opportunity to overengineer something.",{"type":35,"content":785},[786],{"type":38,"text":787},"But despite its limitations, I don't consider this cyberdeck a failure.",{"type":35,"content":789},[790],{"type":38,"text":791},"I've used it for configuring routers, experimenting with RF signals, and working on electronics projects. More importantly, the interchangeable cartridge concept works, and it's something I'd absolutely use again.",{"type":35,"content":793},[794],{"type":38,"text":795},"The computer inside might not have been the best choice. The idea around it still makes sense.",{"type":797,"content":798},"blockquote",[799],{"type":35,"content":800},[801],{"type":38,"text":802},"Choose the computer based on what you actually want to do with it, not just because everyone else is building cyberdecks around Raspberry Pis.",{"type":186,"attrs":804},{"src":805,"alt":196,"title":190,"width":371,"height":806,"alignment":193,"displayWidth":194,"linkToOriginal":11,"mediaId":807,"caption":196,"size":194,"sources":808},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F0deee179a5d2a484be423ead7e074df8\u002Flarge.jpg",1200,"17",{"original":809,"thumbnail":813,"medium":816,"large":819},{"url":810,"width":811,"height":812},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F0deee179a5d2a484be423ead7e074df8\u002Foriginal.jpg",2452,1839,{"url":814,"width":204,"height":815},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F0deee179a5d2a484be423ead7e074df8\u002Fthumbnail.jpg",239,{"url":817,"width":385,"height":818},"https:\u002F\u002Fapi.techmerc.eu\u002Fmedia\u002Ffiles\u002F0deee179a5d2a484be423ead7e074df8\u002Fmedium.jpg",720,{"url":805,"width":371,"height":806},{"type":61,"attrs":821,"content":822},{"level":63},[823],{"type":38,"text":824},"Frankenstein's Cyberdeck",{"type":35,"content":826},[827],{"type":38,"text":828},"So, what's next?",{"type":35,"content":830},[831],{"type":38,"text":832},"Well, I'm certainly not giving up on cyberdecks. I've been thinking about building another one, possibly with a more powerful single-board computer. Or maybe I'll do something significantly more questionable.",{"type":35,"content":834},[835],{"type":38,"marks":836,"text":838},[837],{"type":76},"I've been looking at older GPD Win handhelds.",{"type":35,"content":840},[841],{"type":38,"text":842},"They already have a screen, keyboard, battery, and a proper x86 processor. What if I could somehow attach my interchangeable GPIO cartridge system to one of those? A small microcontroller could handle communication with the cartridges while the computer takes care of everything else.",{"type":35,"content":844},[845],{"type":38,"text":846},"Basically, Frankenstein's cyberdeck.",{"type":35,"content":848},[849],{"type":38,"text":850},"Would it be easier to use a laptop and an Arduino? Absolutely.",{"type":35,"content":852},[853],{"type":38,"text":854},"Would it make more sense financially? Probably.",{"type":35,"content":856},[857],{"type":38,"text":858},"But where's the fun in that?",{"type":35,"content":860},[861],{"type":38,"text":862},"We're surrounded by devices designed to do exactly what their manufacturers intended. Beautiful, polished, sealed little boxes that work wonderfully right up until you want them to do something they weren't designed for.",{"type":35,"content":864},[865],{"type":38,"text":866},"Then you're supposed to buy another one.",{"type":35,"content":868},[869],{"type":38,"text":870},"But there's something deeply satisfying about taking a bunch of ordinary components, putting them together, and creating something that didn't exist before.",{"type":35,"content":872},[873],{"type":38,"text":874},"Even if it's bulky, even if it's slow, even if you accidentally reinvent the power switch along the way.",{"type":35,"content":876},[877],{"type":38,"text":878},"I started this project because I wanted to learn more about security and build myself a portable electronics laboratory. Somewhere along the way, it became something else, too.",{"type":35,"content":880},[881],{"type":38,"text":882},"A place for unfinished ideas.",{"type":35,"content":884},[885],{"type":38,"text":886},"And maybe that's my favorite part of the cartridge system. I don't have to finish one project before starting another. I can put it aside, pick up something completely different, and return whenever life gives me a little breathing room.",{"type":35,"content":888},[889],{"type":38,"text":890},"Because that's how hobbies work when you have a family, a job, and a thousand ideas competing for your attention.",{"type":35,"content":892},[893],{"type":38,"text":894},"But every once in a while, you find a free evening, sit down at your workbench, pick up that strange little machine you built with your own hands, and continue exactly where you left off.",{"type":35,"content":896},[897],{"type":38,"text":898},"Not because you have to.",{"type":35,"content":900},[901],{"type":38,"text":902},"Not because it's the most efficient way to get something done.",{"type":35,"content":904},[905],{"type":38,"text":906},"But because, for a few hours, you get to make something that's entirely yours.",1792494583010]