Close
0%
0%

Ohno Frobnosticator

An overambitious attempt at a full-featured "homemade laptop" style cyberdeck

Public Chat
Similar projects worth following
Hackaday announced their 2023 Cyberdeck contest and I figured I'd take this opportunity to embarrass the absolute heck out of myself.

Intended feature set:

- wintel primary mini with monitor & keyboard inside a big ol' chassis.
- wifi client router feeding internal ethernet, maybe dual-radio router.
- Several sensors and IoT gadgets, including gps, environmentals, etc. Bluetooth low-energy connected.
- Wifi & bluetooth scanning and logging.
- Wall-powered. Seriously, getting something like this battery powered is beyond my ken.

The ultimate goal here is to build a first-cut platform for software and hardware expansion.

Note: I'm not going to bother with a full parts list while this is in the "in progress" state. It would be too insane to try and keep track of. I've already swapped out the keyboard twice and the monitor three times. But I'll put it all together at the 1.0 stage.

NOTE:  This is no longer a consideration for the 2023 CyberDeck contest.  I'm just not going to be done in time.   I don't know how to remove it as an entry, so this is as good as I can do for now.

Okay this is my first hackaday project, so...some nudges in the right direction and a bit of rope would be appreciated. 


I'm getting in-progress pics set up so this will be a LITTLE more interesting to look at.

I'm staging this out in to a few different categories:

- Sensor net development.

- Network systems

- Hardware packing.

- Aesthetics.

I'm spending this first week trying to get a bunch of NodeMCU dev boards (I may be able to use a big UNO for all the sensor data, I don't know yet) pulling sensor data from:

- an MQ-135 air-quality sensor

- a gps board

- a pair of dht-11 humidity/temp sensors (one for inside the case, one for external conditions.

- one will just be scanning wifi on a slow loop

and feed that to another board that's driving a small screen over BLE and acting as a client to a pi doing some data logging.

These will all be powered off an internally-housed usb hub to hopefully save myself some headaches, but probably create more.

  • Return of the living (well, mostly dead) Cyberdeck

    madwilliamflint08/03/2024 at 18:35 0 comments

    I feared I had abandoned this forever.  But this is a quick note, almost a year later, to say the project is back on the workbench and a couple of the pebbles that I stumbled over and used as a fig leaf to stop progress have been removed.

    Notably, I could never get any of the GPS modules I'd bought to work with any of the esp32/8266/arduino/2040 or full Pi boards.  The likelihood that that was "I have no idea what I'm doing" ism is likely 95.622%.  (If you search for "GPS Module Receiver, Navigation Satellite Positioning NEO-6M" on amazon it'll hit you in the face.)

    When I started pursuing information on how to wire these things so they would even pull data, I got almost nothing, except ONE video from a guy who demonstrated how a VAST percentage of the gps units were just straight-up counterfeits and didn't work. 

    GPS logging was my first "yeah yeah, buying the stuff and networking it is fine.  But start making it DO something" sub-project, and having that level of problem with THAT felt like getting kicked in the gut by the bouncer of the "cool projects club."


    But I think I have a solution and all kinds of reasons why my newfound hope in this project may not be merely delusional.


    EDIT:  Welp!  I've figured it out.  It was indeed me and my breathtaking lack of knowledge.

    The GPS modules that "didn't work" had 4 pinouts, but no headers or anything soldered to them.  I didn't know enough to know that they were just bare USB pinouts and, without a USB-Serial interface layer, pretty much couldn't be made to work with the boards I was trying to attach them to. 

    Not QUITE sure how I never tripped over that last year.  But here we are. 

    Boy I'm sure glad I bought a usb gps unit to replace the usb gps units.  

    What I'll probably do for now is just wire it to a pi zero instead of an esp32 so I can get myself going again.

    If that's as easy as it could be (lol) then the next task is to start on sensor communications (as it dovetails with another project of mine.)  So, whether to get all this stuff to talk using something like MQTT or not to bother with anything even THAT heavyweight. 

    To the lab!

  • Abandoning the contest. The project continues.

    madwilliamflint08/14/2023 at 00:25 0 comments

    Welp, I suspected it might be true.  But I came to the conclusion today that this is FAR too complex and there are FAR too many things beyond my current skill set for me to be done in time for the CyberDeck contest.

    I'm continuing with the project.  But the sensor net was screwy, the GPS modules I can't seem to get to work and the mechanics of mounting everything in the case all put together had me losing sleep and what little remains of my sanity.


    I'm going to continue work here.  But I've got to pull it from the contest.

  • Testing Adhesives

    madwilliamflint07/24/2023 at 21:05 0 comments

    I'm going to need to glue/epoxy/fasten some kind of scaffolding into the inside of the case to fasten all of this stuff to.  

    BUT I don't know SQUAT about adhesives between wood and plastic.  What's going to degrade meaningfully with heat? What's so solvent-rich that it'll just melt through the plastic?  Etc.  

    Right now I've got a similar case of the same material with about 2"x2" blocks of poplar glued to the front to test different options.  The ones I've got are:

    - Tightbond 3  (A truly spectacular  wood glue I've used for a decade or more.)

    - Gorilla Glue Clear.  Because....it was there and is pretty easily available.  this is the one I'm hoping will work.

    - Harbor Freight's CA glue.  We'll see.  I don't have that fast-activator stuff that people always seem to have on hand for CA glue in youtube videos.

    - JB Weld "Clear Weld".  I hate working with 2 part epoxies and such.  But it's got a good bet of being as good if not better than the Gorilla Glue.

    I'll post results of that tomorrow. 

    Just wanted to actually post an update since things have been happening even though I haven't been posting.

  • Baseline "laptop" components configured.

    madwilliamflint07/19/2023 at 20:25 0 comments

    Taking a break from the NodeMCU sensor madness, I put together the router, "mini desktop" and a little monitor.

    Mini PC: Minisforum U700.  I didn't pick this for any particular reason.  I found one for cheapish, liked that it had multiple ethernet ports and was pretty light.

    10.5" portable monitor: "Eyoyo EM105" 10.5" portable.  Small, takes hdmi and mini hdmi, usb powered and it has a couple speakers and even a headphone jack, just in case.

    Router: gl-inet AXT-1800.  It's a wonderful little thing that I think I'm going to buy another one of.  It's running open-wrt and does all manner of goofy things, including repeater mode, which allows it to use the wifi antenna as a client rather than a server.  I think it can do both, as well as VPNs and such. but that's not important to me yet.

    Aside from the U700, everything is so far powered off a Wenter 11 port USB hub, with individually switchable ports.  I'm hoping I can get away with just using that.  But we'll see.

    I put Ubuntu on the U-700 because it seemed like heresy to leave windows on the thing.  The monitor is just a monitor so that was no big deal.  So far I've just got baseline software on there.  Nothing too fancy yet, though I'm going to want to make it as goofy as is possible.

    The router though, that required a little fiddling.

    The AXT1800, even though it has openwrt on it NEEDED to be connected, once, to the internet over ethernet to grab firmware updates and such.  I could NOT set up Repeater mode without having done that.  It wouldn't see any SSIDs.  Just an overall mess.  But once I updated the firmware it worked just fine, connected to my vpn router just fine.

    What I WANT to do is be able to programmatically add preferred networks to it.  But again, that can wait.  I'm just trying to get this stuff together and all in a box by contest end so I have SOMEthing to show. 

    Next up:

    - Jam this all in a case. (including cabling, holes in the side for a socket, etc.)

    - Set up a pi4 as a data logging server

    - Configure some kind of face plate to mount these screens to, because I have NO idea what I'm doing.

    - Put SOME kind of purple lighting in the thing.  I suspect I've got a solution from Pimoroni on the way.  But we'll see.

    It occurs to me that I'm almost certainly going to have a serious heat problem.

  • 7/15/23: mq135 and dht22 done. gps kicking my butt

    madwilliamflint07/16/2023 at 03:48 0 comments

    Been working more than writing about working.


    A few days ago I got the mq135 air quality sensor and the dht22 temperature/humidity sensors running and pulling data on the same NodeMCU dev board, running the data with 1-second updates to an 0.96" oled.  Nice little setup.

    Next up is the GPS.  I'm running a GT-U7 into its own NodeMCU.  Or I would be if I could get the damned thing to work.

    I've tried everything I can think of, but it just reads nothing.  It's behaving as if I'm trying to pull data off the wrong pin.  Of course that may actually be the case as the NodeMCU pin numbers are still pretty odd, particularly when following a tutorial that's "almost" the same board.

    But I'm plugging away.  GPS is critical functionality so I've got to get it done.  Tomorrow I'm going to bifurcate completely.  I've got additional sensors and dev boards I can use.  But I'd hate like hell to have to deal with heterogeneous arduino boards, especially when i get to the next stage of getting them to talk to each other over BLE.

    Giving some thought to mounting.  I'll probably prototype the faceplate with cardboard and go with lexan or something for version 1.0.

    Lots to do, but sadly not so much worth looking at right now.

    This will get juicier, I promise ;-)

  • 7/11: Sensor coding, part 924,225

    madwilliamflint07/11/2023 at 21:04 0 comments

    Currently working on getting the DHT-22 working on a NodeMCU board along with the (already working) MQ135 air quality sensor.

    I've gotten them running on a Pi before.  But this is the first project I've used the NodeMCU boards for other than some goofy "scan ssids" silliness.

    So far so good.  When I get all this stuff squared away I'll post at least most of the code someplace, including where I got my tutorials and such.  Some of these things have been infuriating to try and track down.

    posted a couple pictures:  the tentative form chassis with the keychron and usb-c monitor loosely placed.  All component choices are in flux at the moment.  But I'll keep y'all updated.

View all 6 project logs

Enjoy this project?

Share

Discussions

madwilliamflint wrote 09/03/2023 at 15:15 point

Thanks man, I really appreciate that.  I definitely couldn't get it done for the contest.  But the contest was just for keeping me honest, mostly. 

Progress continues apace as I teach myself how to create a BLE sensor network, the limitations of working with Acrylics (the faceplate) and FAR more skills than I thought I'd need.  Fun.  But stressful.  But fun.

  Are you sure? yes | no

Elliot Williams wrote 09/03/2023 at 14:30 point

This is awesome! The best thing is to take on a project that's over your head.  Even better is documenting it well.  

So keep on going! Can't wait to see where this ends.  

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates