dgriffith

joined 2 years ago
[–] dgriffith@aussie.zone 3 points 2 hours ago

It is a valid travel document for land and sea travel within North America and the Caribbean.

The way you've phrased it sounds quite dystopian.

[–] dgriffith@aussie.zone 13 points 1 week ago (3 children)

Well, they used to be trained on Stack Overflow.

In the future they'll be trained on all your code, as per the end user licence agreement you clicked through.

[–] dgriffith@aussie.zone 2 points 1 week ago* (last edited 1 week ago) (1 children)

There is a FreeRTOS option for Arduino which is pretty much the next step when you want to do multitasking.

Basically, you create tasks in your setup routine by pointing to various self contained functions - each function becomes a task - and your "loop" becomes the task that runs when everything else is idle.

Your functions have their own loops so they never exit, and then when you kick-start the tasks the task scheduler in FreeRTOS does all the heavy lifting of timeslicing the various functions so that they all appear to be running at once.

If you share resources, like an I2C bus, you can add locking around it so that tasks that need the resource wait until other tasks are finished with it so you don't get tasks treading on each other's toes.

FreeRTOS is in the Arduino libraries so you can just add it to a blank project and then have a play running two tasks at once.

[–] dgriffith@aussie.zone 3 points 1 week ago (1 children)

Only systems that have framebuffer console enabled at boot I guess.

Recovery mode booting would probably be normal 80x25 text console in case there was something up with framebuffer initialisation.

[–] dgriffith@aussie.zone 5 points 2 weeks ago (3 children)

There was a point, about 10-12 years ago now, where The Algorithm™ took over social media entirely.

If you were around before that, you would have noticed the shift. Your friend's comments and posts started to get intermixed with "other stuff" , and eventually you could scroll endlessly and not see anything from your direct friends, or friends of friends. Forever.

What decided what you could see? Why, The Algorithm™ , of course. So, at that point right there, that's when a direct and consistently biased feed of someone else's opinion about what you wanted to see got pumped into people's brains. And you can bet it's going to be designed to be handing out the most engaging things that it can find for you, to keep you scrolling away on their platform. But it doesn't matter a fuck if what its handing out i's mentally harmful to you personally, as long as you're engaged.

And just like schoolkids in the USA reciting the Pledge of Allegiance every morning, reinforcement of whatever The Algorithm™ wants (simply: more engagement) becomes pretty trivial when it's crammed into your head consistently from a young age. Lacking any other reference points, children are the ones with the least amount of defenses against all of that shite.

These kinds of laws worldwide are trying to stop that kind of thing from happening, because they can't stop the source directly. Social media companies hold too much sway over the population and the economy now, it would be political suicide to try and go toe to toe with them.

In my opinion, The Algorithm™ as it stands now is a cancer that needs to be cut out of social media by any means possible. Whether there's anything left remaining after that is debatable.

[–] dgriffith@aussie.zone 15 points 2 weeks ago

I wonder how it goes with AI-generated receipts.

[–] dgriffith@aussie.zone 3 points 2 weeks ago* (last edited 2 weeks ago) (4 children)

It can be a Cron job that runs every minute. Run a script that:

  • Checks for the existence of a file, if it exists, exit.
  • (Optional) ping your end, if it's up, continue, otherwise exit
  • Touches said file.
  • Runs SSH to try and connect to your end. If the connection is made everything halts here until the connection drops.
  • Cleans up said file.
  • Exits.
[–] dgriffith@aussie.zone 6 points 2 weeks ago (6 children)

If you can arrange a fixed IP address externally (or dynamic DNS that follows your IP around) you can set up a reverse SSH connection instead.

Basically your server connects to your external computer via SSH and then sets up port forwarding so that when you connect to localhost:2222 or similar on your PC, you're actually connecting back to the server.

[–] dgriffith@aussie.zone 1 points 2 weeks ago (1 children)

the pursuit of fancy graphics just doesn't make sense anymore

Their assertion is that fancy graphics doesn't necessarily equal good gameplay, and the major industry players are focused on ever-increasing frame rates instead of game quality.

Nobody cares if your game is fully immersive and rendered down to the atomic scale if it is boring or the game mechanics are shite. Sure you can wander around and look at stuff and gasp at the physics, but unless the game is titled "Look around and enjoy it" , that's not the point.

[–] dgriffith@aussie.zone 5 points 2 weeks ago* (last edited 2 weeks ago)

Ditto on the QuietComfort headphones. I've had a pair of QC35's for 10 years now with heavy use on weekly flights.

Runs off a AAA battery which is good for like 18 hours or so. Works as regular headphones when the battery goes flat. 3.5mm cable with media controls and a mic in it.

Still in its original hard case, have replaced the ear pads a couple of times, decent pads are cheap enough on eBay and etc.

I also bought a Bluetooth insert for it for ~AUD75, it plugs in where the cable goes and has it's own rechargeable battery with only about 6 hours life which is a bit of a nuisance.

Edit: regarding audio quality, I can say that if you're using headphones in any sort of urban environment, noise cancelling absolutely trumps audio quality. But the QC35's aren't too bad in the quality stakes, especially if you're using them on the move.

Small edit: The major thing that stops portable electronics from lasting 5+ years is the little rechargeable battery inside that dies. Removable batteries like the AAA battery in the QC 35 solves that, and as a bonus it's "instant charge" when it goes flat, as long as you keep a tiny packet of AAAs in your bag. 4 x AAAs lasts me about 3 months.

[–] dgriffith@aussie.zone 17 points 2 weeks ago* (last edited 2 weeks ago) (7 children)

As the earth rotates, the oceans follow the moon's gravitational pull (and the sun's, to a lesser extent). From an outsider's perspective it is a lump of water always bulging towards the moon, and the earth rotates underneath this lump.

By placing a resistance to the free movement of the tides you are siphoning a very small amount of energy from the rotation of the earth as you are restricting the passage of the earth through that lump of water.

So it doesn't matter if your generators spin both ways on the rising and falling tides, you are still restricting movement.

[–] dgriffith@aussie.zone 11 points 2 weeks ago

I know, instead of folders, we could use "shelves" and the Dewey Decimal System.

 

Hi all,

In an effort to liven up this community, I'll post this project I'm working on.

I'm building a solar hot water controller for my house. The collector is on the roof of a three-storey building, it is linked to a storage tank on the ground floor. A circulating pump passes water from the tank to the collectors and back again when a temperature sensor on the outlet of the collector registers a warm enough temperature.

The current controller does not understand that there is 15 metres of copper piping to pump water through and cycles the circulating pump in short bursts, resulting in the hot water at the collector cooling considerably by the time it reaches the tank (even though the pipes are insulated). The goal of my project is to read the sensor and drive the pump in a way to minimise these heat losses. Basically instead of trying to maintain a consistent collector output temp with slow constant pulsed operation of the pump, I'll first try pumping the entire volume of moderately hot water from the top half of the collector in one go back to the tank and then waiting until the temperature rises again.

I am using an Adafruit PyPortal Titano as the controller, running circuitpython. For I/O I am using a generic ebay PCF8591 board, which provides 4 analog input and a single analog output over an I2C bus. This is inserted into a motherboard that provides pullup resistors for the analog inputs and an optocoupled zero crossing SCR driver + SCR to drive the (thankfully low power) circulating pump. Board design is my own, design is rather critical as mains supply in my country is 240V.

The original sensors are simple NTC thermistors, one at the bottom of the tank, and one at the top of the collector. I have also added 4 other Dallas 1-wire sensors to measure temperatures at the top of tank, ambient, tank inlet and collector pump inlet which is 1/3rd of the way up the tank. I have a duplicate of the onewire sensors already on the hot water tank using a different adafruit board and circuitpython. Their readings are currently uploaded to my own IOT server and I can plot the current system's performance, and I intend to do the same thing with this board.

The current performance is fairly dismal, a very small bump of perhaps 0.5 - 1 deg C in the normally 55 degree C tank temperature around 12pm to 1pm, and this is in Australia in hot spring weather of 28-32 degrees C.(There's some inaccuracy of the tank temperatures, the sensors aren't really bonded to the tank in any meaningful way, so tank temp is probably a little warmer than this. But I'm looking for relative temperature increases anyway)

Right now , the hardware is all together and functional, and is driving a 13W LED downlight as a test, and I can read the onewire temp sensors, read an analog voltage on the PCF8591 board (which will go to the NTC sensors), and I'm pulsing the pump output proportionally from 0-100 percent drive on a 30 second duty cycle, so that a pump drive function can simply say "run the pump at 70 percent" and you'll get 21 seconds on, 9 seconds off. Duty cycle time is adjustable, so I might lower it a bit to 15 or 10 seconds.

The next step is to try it on the circulating pump (which is quite an inductive load, even if it is only 20 watts), and start working on an algorithm that reads the sensors and maximises water temperature back to the tank. There are a few safety features that I'll put in there, such as a "fault mode" to drive the pump at a fixed rate if there is a sensor failure, and a "night cool" mode if the hot water tank is severely over temperature to circulate hot water to the collector at night to cool it. There are the usual overtemp/overpressure relief valves in the system already.

All this is going in a case with a clear hinged cover on the front so I can open it and poke the Titano's touchscreen to do some things.

Right now I am away from home from work, so my replies might be a bit sporadic, but I'll try to get back to any questions soon-ish.

A few photos for your viewing pleasure:

The I/O and mainboard plus a 5V power supply mounted up:

The front of the panel, showing the Pyportal:

Thingsboard display showing readings from the current system:

Mainboard PCB design and construction via EasyEDA:

view more: next ›