𞋴𝛂𝛋𝛆

  • 166 Posts
  • 1.5K Comments
Joined 3 years ago
cake
Cake day: June 9th, 2023

help-circle

  • The easiest way I know of to check any machine is to put another router or machine in front of it with a white list firewall or way of logging DNS traffic. You just need to spot the address in the list.

    DNS filtering usually only filters on incoming packets, but for bot stuff that should catch issues.

    In general, most routers run everything from a serial flash chip on the board. These are usually 8, 16, or 32 megabytes. They have a simple bootloader like U-Boot. This is what loads the operating system. These devices have a UART serial port on the PCB. You can use a USB to serial UART adaptor to see what is happening in the device. With a proprietary OS, you are still likely to see the pre-init boot sequence that the bootloader prints to terminal. Most operating systems also print information to this interface, at least of the couple dozen junk devices I have been given and messed around with. I make a little mount for a USB to serial adaptor and add it to all of my routers when new, so I only need to plug in USB to get to the internal bootloader and tty terminal interface of OpenWRT. You will need to know the default baud rate of the device, although it is probably listed somewhere online or can be guessed as one of the common high values at or above 9600.

    Getting into this further gets complicated. It is probably better to look for any CVE that is relevant to the device or software and work backwards. Look for any software updates that have obfuscated the risk for each CVE. If the issue was not fixed, that is where to look to see if someone has exploited the device. Ultimately, they need clock cycles from the CPU scheduler. So it must be a process or some way of executing code from unregistered memory.

    This is getting to the edge of what I have messed around with and understand. There may be a way to get a memory map that includes unused pages, and compare that with a hex dump of the flash memory. This is outside of your scope of a proprietary OS, but hopefully frames the abstract scope of what is possible on this class of device when you have an open source stack. The main advantage of this kind of device and issue is that you can physically remove the flash chip and then see and manipulate every page and memory location. The device likely doesn’t have microcode loaded into the CPU(s) that make it challenging to determine what is going on.

    There is probably an easier way, but a hex dump of the current system can be hashed against the factory updated version to see if any differences are present. It is likely that any exploit will include a string with the address to connect to somewhere in flash memory. It could be obfuscated through encryption or a cypher, but a simple check for strings in the hex dump and a grep for “http” is a simple way to looks for issues.

    The OpenWRT forum is a good general source. The people behind the bootloaders for these devices are also Linux kernel developers and on the OpenWRT forum.



  • How do you punch holes in that dogma? I can think if many logical ways, but that is meaningless against the tribal structure.

    • If family is so valuable, why didn’t strong families usher in the present age of technology
    • intelligence, business acumen, and competency are not hereditary.
    • team sports are a capitalist marketing scam. Putting a blue jersey on your sperm does not make it relevant or better than purple jersey’d sperm.
    • patriarchal male culture is chauvinistic ineptitude and masochism marketed as a replacement for intelligence. It is an admission of subservience to those that dominate by thought and fundamental logic. Fools only fear a brute, civilizations fear a physicist.
    • Strong families are only peripherally useful if capable of creating the opportunities and support needed to produce a physicist.
    • We are all only a product of our environment. That environment is primarily a result of the opportunities and support given freely by its members. So if your family is not strong, one should look in the mirror first.
    • A plant dies because you did not water it, not because of the room it was placed within.













  • Because 99.9% of people will never self host. They would much rather just buy a product that is not setup as a scam. The scam part is less important to most people than the lack of effort required.

    This isn’t a thing to get into for the money. It would be about the FOSS aspect. Doing something like this would not break even for the time and labor involved. It might be worth doing for positive digital neighbors, but I am not at all interested in doing anything for negative or rude people.

    I come from a background of being a buyer for a chain of bike shops where I spent millions of dollars based upon knowledge of how such markets work. The entry level customer is all that really matters. The extra stuff is just to woo them into the store.

    In a place like this, if you engage, you’re actually irrelevant. If you want to target growth, get a lurker to engage for the first time. Getting some random lurkers to buy into the hardware to self host because they care about software freedom is far far more effective than the current ecosystem. When servers are not updated, and people shut down because of administration, it says this is not viable for the average person with a life. So make this easy for the individual. It is such an obvious thing to do.

    The present system is basically like go compile OpenWRT for your router and people whining about how it is not fucking hard. It is not, but most people just do nor care to try it. They just want to buy a device, plug it in, and be done. Half of these devices are on factory original passwords. This is the real scope of what people are capable of and expect. The mismatch is easily solved by packing the fediverse as a device. The alternates are great for the 0.1%. I am not talking about you all. I am talking about something that could go from 0.1% to 5% of the fediverse is self hosted, and likely much larger. The whole endeavor would be like a coop socialist kind of thing from the ground up.



  • Pleasure. There are a few things I want to better understand within the radio space.

    Talking over the air is not one if the things that interests me, but maybe some digital stuff could be fun. I need the time buffer built into text to collect my thoughts and find my voice through chronic pain issues.

    I would like to play around with antennae designs, acquire a better understanding of magnetics, build some discrete circuits, gain a fundamental understanding of the various active filter topologies, and several other little details.

    The recent solder smoke challenge 40m receiver was the first time I saw a diode mixer and really understood the theoretical framework of frequency division outside of LSI logic, like 4000 or 7400 series chips. Potatosemi makes such GHz capable logic, but doesn’t scratch the surface of the realm of the nude bearded virgin wizards and witches of radio.

    The superheterodyne stuff never made sense to me, or diode mixers, and most circuit blocks in radio. I built a little Manhattan style Colpitts oscillator that A2AEW shared on YT ages ago, that I use for testing crystals. I learned enough about guitar amps and effects that I understand most buffers and amplifiers, both discrete and op amp based. And I can at least identify that an op amp is configured as an active filter. I recently discovered discrete SAW filters.

    I had several in my miscellaneous crystals junk drawer, but did not know what they were. Now I really want to understand how those work and how to make one. There is definitely a gap between my knowledge of active filters and how these little devices work.

    It will probably never happen, but I find cavity resonators fascinating too. Building components stuff out of traces and empty space is some Jedi voodoo shit that tingles both my inner illogical miser… “(just beg borrow or steal a $20k network analyser…)”, and primal shamanistic dogma “(try and grow a beard… it will be better this time…)”. So yeah, mostly introverted stuff. It is probably about like me and car stuff. I’d rather paint and build motors than actually drive the thing stupid fast. Right now I’m in a really good spot to try receiving stuff over the Pacific too.



  • Yeah, fast edges on the buttons. I think the whole design was originally intended to be 2 sided. The third layer has almost a complete ground plane, and the other two have sufficient infill and stitching to be a typical 2 sided design. Stuff would have needed to be moved around some to make room for the button contacts, but there was more than enough space.

    From what I recall of the guys doing the software hack, I think the STM32 H7 microcontroller was emulating the original 6502 based ROM. So maybe they were optimising the hardware as much as possible to avoid the typical timing issues present in emulation in challenging parts of the game.

    The coolest part of the hardware design is actually that little DC switch mode converter and battery manager. It is crazy efficient. Like, a full charge on the lithium cell will be at around half charged still after a couple of years, and while playing, it lasts abnormally long for such a device. It is not a particularly large cell either.










  • So one of the tricks I learned from reverse engineering the 3 layer PCB of the Nintendo Game & Watch anniversary Mario handheld, is that the engineer(s) that designed the board routed ground traces between every single line. Every button, and every signal had a ground trace around it with very few exceptions. I was given some low quality xrays of the board after I had already retraced the entire thing using continuity and vias. I then pieced together the internal routing using the xrays.

    My point is that all signals on a board include a magnetic component. Electrons actually flow backwards from ground because all electrons have a negative charge. We think of conventional current flow from positive to negative, but that is technically incorrect. There is a magnetic field that is created by that flow, and the size of issues this field creates are primary determined by any additional distance traveled between the signal and ground.

    Additionally, you may have brown out conditions periodically impacting one peripheral. Something like a UART module seems like a small thing, but back in the 1980s, that was an entire chip on a board of a microprocessor. It has a ring buffer and several registers. It may be causing issues when these are loaded up with high values. Try increasing the capacitance on your power rails to see if that solves the problem.

    I do not know the output configuration. If it is an open collector, where pull up resistors are used, you need to select the best resistor value to get sharp edges. You may need to check that the logic low value is within the required range of values. You could put a Schmitt triggered buffer in between the devices to see if sharp edges improve performance like with a 74(x)2G17 for a modern 2 gate surface mounted option or with a more old school 74(x)241. The (x) is the series, which you select for architecture and speed. For almost everything, you will be using CMOS 74 series, and in most instances, 74HC will be fast enough. Generally speaking, 74LS is only compatible with old bjt stuff, 74HCT is for converting between LS and HC type stuff, and most LS and HC stuff will not work together. The static HC stuff is MUCH lower power and what most chips use. You just need to be sure to match the power to your devices. This page will help you find logic stuff for this type of issue: https://en.wikipedia.org/wiki/List_of_7400-series_integrated_circuits. It is totally overkill, but tossing in a buffer with sharp Schmitt triggered edges is a quick hack to see if your issue is potentially related to RLC or grounding.

    For the FX2 chip. They come in 2 varieties. Don’t get the one in the little enclosure with just 8 lines. There is another cheap board that is bare and has all of the chip pins broken out and labeled in the solder mask. This one works with up to 16 channels. It can be super handy to see all the extra signal lines or create extra trigger signals.

    The actual developer of Pulse View has a tutorial here: https://www.youtube.com/watch?v=dobU-b0_L1I


  • You need a little $5 FX2 board based logic analyser and the FOSS software PulseView to see the data.

    You should check that baud rate is matched. In particular, you may need to look at the clock rates of the chip and how its PLL is divided. Back in the day, you actually had to pick the correct crystal frequency to match things like a desired baud rate. Now, most hardware is more tolerant of differences. When you are dealing with more simple hardware, it still matters.


  • This oversimplified dichotomy is asinine. No group of people are some monolithic Borg mind. These types of tribalism are toxic useless. Russians would call it convenient idiots. It is tribalistic dogma revealing poor fundamental logic skills typical for a culture derived from the inbred Puritan penal colony European rejects.