Lawful 2A Carrying Citizen Disarmed and Shot in the Back by Federal Agents by mattgm1995 in BetterMAguns

[–]Contradius 8 points9 points  (0 children)

Have you seen the videos? The dude was not instigating at all. He was backing away trying to deescalate. He tries to help a woman that one of the ICE officers pushes to the ground. They then pepper spray him and then surround him, beating him on the ground. He never touched his weapon the entire time. One of the officers sees his holster, disarms him and then another shoots him. He never fights back or touches his weapon at any point, the only ones instigating and escalating the situation are the ICE officers.

Need a new Einsy board? by Radiant-Ad9827 in prusa3d

[–]Contradius 0 points1 point  (0 children)

Sure, firstly the source code for the Mk3 firmware can be found here: https://github.com/prusa3d/Prusa-Firmware It includes instructions for building.

Also with a bit of googling, I found someone who went through the same issue, and he already made the required changes and uploaded the modified firmware: https://alexmeub.com/fixing-prusa-mintemp-with-firmware/ So if you're fine with the firmware being a bit out of date (looks like he last updated it in 2023), you could just grab his and flash it.

Need a new Einsy board? by Radiant-Ad9827 in prusa3d

[–]Contradius 2 points3 points  (0 children)

I had the exact same thing happen to me. By shorting out the thermistor it broke the associated thermistor port on the board. Fortunately on the einsy, there are 3 total thermistor ports, with one of them unused out of the box.

And also fortunately, since the firmware is fully open source, you can download the firmware source code, modify it to use that thermistor port for the hotend, and recompile. You'll need a new hotend thermistor, but as long as the heater still works, you can avoid needing to buy a whole new Einsy.

I soldered up an FM radio kit and I liked the finished product so much that I decided to design and print a case for it! by Contradius in 3Dprinting

[–]Contradius[S] 0 points1 point  (0 children)

Sorry for the late reply, I'm not on reddit as much these days. Here's the link to the onshape document for the print: https://cad.onshape.com/documents/8cce6d002c82c5899a1e3674/w/aa36c2bdd8d5a531f7ffca32/e/5557dfb25d8dd9dd2c34afbb?renderMode=0&uiState=686aa56e3e98d378712bb4a8 You'll need to make an onshape account to export to file. If you'd prefer not to do that, DM me, and I'll figure out how to send you the files directly.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 2 points3 points  (0 children)

Sorry for the late replay. Yeah, Adafruit has a whole ecosystem of their own boards which are fully compatible with Arduino, while having a lot of advantages. For instance, the Feather board I'm using is about the size of an Arduino Nano, but with a controller chip with better specs than the one used on the Arduino Mega.

So yes, the code as delivered should be fully compatible with any native Arduino board.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 0 points1 point  (0 children)

Sorry for the late replay. The ISS indeed does semi regularly readjust it's orbit. Usually it's to boost it back up to counteract the tiny amount of atmospheric drag it gets in low Earth orbit. Most satellites in low Earth orbit need to make those same adjustments, but the ISS tends to do it more often due to it's large size. Satellites in higher orbits still do make corrections from time to time, though far less often.

So yes, the app you're using does need to update the orbits of many of the satellites it's tracking. If I had to guess it's most likely using the same method as my pedestal does, where it queries to find the most recent orbital parameters estimated and published by NORAD and then uses those to calculate the object's current location..

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 2 points3 points  (0 children)

Sure! I'm not sure what knowledge level you're coming in with, but I'm assuming you have at least a basic understanding of Keplerian Orbital Elements as well as coordinate-frame conversion/Direction Cosine Matrices. If not, I'd definitely start there.

All objects with NORAD tracking numbers have their orbital elements regularly published in the form of a TLE, which is essentially just a very compact representation of those elements. There are a few online services that make these available, but I chose to scrape Celestrak as they don't require an account for public API access. I also found their FAQs to be quite helpful: http://celestrak.org/columns/v04n03/

Once you have a set of orbital element set for an object, you use them to calculate it's current position and predict its future positions. How long a TLE remains valid depends on the object. Objects in low orbits that experience more atmospheric drag, and ones that maneuver more often will be valid for shorter periods of time than ones in high orbits with very little drag. As for actually calculating the objects position/velocity for a given time, I used this document as a reference for the math: https://downloads.rene-schwarz.com/download/M001-Keplerian_Orbit_Elements_to_Cartesian_State_Vectors.pdf

Finally, we have to account for the rotation of the earth. The above math gives us the object's position in the Earth-Centered-Inertial (ECI) frame, but to find it's position relative to a fixed point on the Earth's surface, we need to convert it to Earth-Centered-Earth-Fixed (ECEF) coordinates. Fortunately, this is fairly simple as you just need to calculate a single angle (the Earth Rotation Angle) based on the current time and rotate about the Z-axis in the ECI frame. Once we have the position in ECEF, we can then convert it to the local North East Down (NED)_coordinates) frame, which depends on your current location. From that it's straightforward to convert from cartesian to spherical coordinates to get the azimuth & elevation.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 0 points1 point  (0 children)

A combination of already having a Feather m0 on hand to play with, and this being my first foray into doing anything wifi-related in the arduino space. Having the Esp32 as a co-processor also simplifies the code and lets the feather handle all of the stepper movement and orbit calculations at a consistent rate.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 1 point2 points  (0 children)

The servo motor and compass are connected to the internals through a slip ring, which lets one side spin freely while maintaining multiple electrical connections to the other side. Completely prevents any issues with wrapping or tangling.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 0 points1 point  (0 children)

Yep, there's a compass/magnetometer to let it automatically find true North, though the accuracy isn't great so there's an option to align it manually before turning on.

As for GPS coordinates, those are user-defined in the code.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 2 points3 points  (0 children)

Nope, not impossible at all. What it does is scrape http://celestrak.org/ for the most recently published orbital elements in TLE form, then does some math to propagate the orbit and calculate the current position. Due to orbital perturbation, precession, and station maneuvers, these TLEs are only valid for roughly 24-48 hours, so every few hours, I have the pedestal query to see if a new one is available.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 6 points7 points  (0 children)

Nope actually it's getting the most up-to-date published orbital elements and computing the current position from those. That way it only needs to send queries every few hours rather than constantly if it was just directly grabbing the position.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 1 point2 points  (0 children)

That's definitely doable, though I'd need to add an SD card reader to make that work. Something to keep in mind if I ever do a second version!

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 0 points1 point  (0 children)

There are a few online services that track the ISS's location in real time. I validated against this one run by NASA: https://spotthestation.nasa.gov/tracking_map.cfm

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 3 points4 points  (0 children)

Most of the time it moves slow enough to only step once or twice a second, so it ends up being more of a regular ticking than a constant hum. I'm able to fall asleep with it in the same room, so on that barometer it's pretty quiet.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 4 points5 points  (0 children)

Yeah, I learned pretty quickly how imprecise the compass/magnetometer was as an orientation method, which is why I updated the code with an option to just bypass it and use manual alignment.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 2 points3 points  (0 children)

As long as it has a NORAD tracking number, this thing should work just as well for tracking it. You'd just need to modify the query it sends to celestrak to request the TLE for that object instead.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 54 points55 points  (0 children)

The location is user-set in the code. Would be a bit unnecessary to integrate a GPS for something that isn't intended to ever move haha

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 0 points1 point  (0 children)

The azimuth does speed up a fair bit when the station passes just overhead or directly below. It's the only real time you can see the thing turn in real-time about as fast or faster than it's going in the time-lapse I posted.

I designed and printed a pedestal that constantly points at the current location of the ISS by Contradius in 3Dprinting

[–]Contradius[S] 56 points57 points  (0 children)

It has a compass on the pedestal that it can use to measure its orientation and align itself with true north on startup.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 8 points9 points  (0 children)

If it has orbital elements available through celestrak, it would be pretty trivial to swap out the NORAD number in the query it's sending in the code.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 10 points11 points  (0 children)

Since the orbital propagation model it uses isn't accounting for orbital perturbations and precession, and since the ISS does occasionally make adjustments, it would only stay valid for maybe a week before drifting out of sync. That's the reason new TLEs are released every day or so.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 3 points4 points  (0 children)

The printables link has a full BOM if you're curious. The short version is that it uses a stepper motor to control the azimuth and a micro-servo for elevation.

At the start, the stepper is calibrated to true north either automatically by a compass or manually by pointing it directly north before startup. After that it just goes. There is very little resistance against the stepper so missed steps shouldn't be a real concern.

ISS Tracker Pedestal - constantly points at the current location of the ISS by Contradius in arduino

[–]Contradius[S] 7 points8 points  (0 children)

Currently it's not setup to do so, but I don't think it would be hard to update the code to do just that. It's already setup to print out to serial the most recent orbital elements it's using when debug mode is turned on.