software
FreeBSD / pfSense slow network with Hyper-V
For some reason, it took me way too long to find information about this issue – so I’m writing another article that will hopefully help some people.
IT Ticket # 1337
Problem Description: Network performance through pfSense is extremely slow with Hyper-V
Software Versions: pfSense 2.6.0 and Windows Server 2022 (August 2022 patches)
Steps Taken Already: Confirmed hardware TCP offload is disabled; confirmed hardware checksum disabled; confirmed MTUs were correct.
Solution: Read on for the solution (hint: it’s a known driver bug, and for now only a workaround exists)
› Continue readingPersonal Use: How do you “takeout” your Spotify data?
Like many, I’ve built dozens of playlists in Spotify and truly enjoyed how the algorithm knows me. It was almost surreal finding Discover Weekly playlists where every single song fit my musical taste du jour.
However, probably also like many, it was eventually overwhelming to hear thousands of new songs a year – to the point where I could no longer remember when I first heard or song, or whether it was a remix or the original. I was happy with the static selection in my playlists, but couldn’t justify paying $10/month for what amounts to a CDN and .m3u host…
Subscription services are often inherently designed around user retention. How do you export your Spotify data?
- You can copy-paste from the desktop client to get a list of Spotify URLs – not useful without a subscription.
- You can pay for questionable “Spotify to MP3” utilities online.
- You keep paying.
I won’t get into DMCA, DRM, fair use, or other concepts here. Instead, let’s take a look at a cool script…
STEVE – New chassis, 3D printing, fresh electronics!
Plenty has happened since our last post, and most of it can be summarized with the following picture.
Yup, lots of wires. New body, too. With my 3D printer back in service, cases were printed for the electronics, along with new wheels all around. These new wheels add around an inch of ground clearance, and better off-road traction.
As well, the first shipment of new parts has arrived: a USB WiFi adapter, an ultrasonic range sensor, H-Bridge motor controller, 9-DOF IMU and a temperature probe.
There are a lot of really cool developments in this post; let’s dive in.
Meet STEVE
He may not look like much right now, but STEVE is an evolving project I’ve been wanting to start for quite some time. He is a robot, into which I will combine software, hardware, and mechanical design.
Currently STEVE is an AVR microcontroller and LM298 dual motor driver, strapped to a circa 1985 remote control car. Over the last few days, I began laying the foundation with serial communication, motor control, and power. In the next few weeks, I should receive the first order of parts to give STEVE senses.
- Ultrasonic range sensor
- 9-Degrees-of-freedom Intertial Measurement Unit (with compass)
- DS18B20 Temperature Sensor
- USB WiFi Adapter
- LM298 Motor Driver (a better unit)
Once progress is made with these first parts, I also plan on including these additional sensors:
- GPS
- Servo (to pivot ultrasonic range sensor)
- Current Sensing
- Webcam
This is a great wish list, but without the software to tie it all together, not very useful. Therefore, I’m assigning my Raspberry Pi 2 B+ as STEVE’s brain. My vision is for the Pi to do all the heavy processing such as navigating, making decisions, and hosting the user interface for mission planning. That way, the AVR is only a hardware controller that manages Input/Output, and communicates bi-directionally with the Pi.
Over the last week the project has evolved very rapidly, and a new body is in the works. My 3D printer has some serious overtime coming up, as I begin designing and printing STEVE’s mechanical components. The ability to print new wheels, mounts, gears and body components is critical to the success of this project, and will also mean I can be very flexible with how everything is implemented.
I have a lot of freedom to do really cool things with this, and I look forward to posting regular updates on STEVE’s progress here!
Bell Aliant FibreOP with a DD-WRT Router
This has been a long time coming. To summarize, Bell Aliant’s FibreOP Internet service includes a wireless router that has proprietary, limited firmware. It tends to suffer from latency and WiFi issues. So, I sought to replace it with my own wireless router! I ended up first building an overpowered but very functional pfSense Linux Firewall/Router.
Despite my monstrous UPS, I was not happy with the 1 hour run-time. The whole reason for the pfSense router was that FibreOP “hides” its Internet on a VLAN, which means a standard, consumer router will not be able to access the Internet. And from some forum posts I had read, it seemed DD-WRT was also incapable of it.
Finally, today, I pushed through and realized it takes only 4 simple steps to connect a DD-WRT router directly to the FibreOP modem.
Making Bell FibreOP Work With a pfSense Router
Atlantic Canada is very fortunate to have access to Bell Aliant FibreOP Internet. It is a legitimate Fibre-to-the-Home (FTTH) service, in the same price range as cable and DSL offerings. Speeds start at 50/30 (download/upload in Mbps) for $70/month without any promotions.
As great as the Internet itself is, the wireless router they include is the bottleneck. It is an Actiontec R1000H. Our biggest headaches with it were low WiFi throughput and frequent WiFi drop, but the interface was a little lacking in advanced features.
The logical solution is to use another router. Unfortunately, Bell has configured the service in a way that simply swapping in a new router will not work at all!
Through some research and my own trial and error, I was able to install pfSense to a spare computer, and take control of my Internet.
Disclaimer: Do not follow these steps if you have Bell’s IPTV service, as it will no longer work. There are other sites that describe how to keep those services working, but mine does not. As well, though there should be no impact, I advise against doing this if you have FiberOP Home Phone and rely on it for emergency communications.
This is not an easy task. It requires a very good understanding of computer networking, basic understanding of Linux networking terminology, and availability of network equipment (switches, wireless access points, cables, NICs). Chances are you found this page because you meet some of that description. Just know that if it isn’t working out, you can plug in the Actiontec and pretend it never happened.
Happy Pi Day!
Indeed, Pi day (3/14, March 14th) is upon us once more. Last year I had the fortune of being the first person to recite many digits of Pi at our college’s celebrations, and this year I have worked on remembering additional decimal places.
In doing so, I remembered a javascript my friend made in junior high school that would check Pi digits, and with his permission I have embedded it below (or download it.)
Practice your Pi here! (Refresh if it didn’t load.)
GPS Hacking – Magellan 1424
Modern day GPS devices are essentially miniature computers. Many have a compact version of Windows, called Windows CE, installed, and the GPS software runs over top of it. However, GPS manufacturers often lock out this extra functionality. There are different packages and ways to unlock your GPS, however because there are so many different brands, it isn’t always one-size-fits-all.
I Googled for information on unlocking the Magellan RoadMate 1424 (the GPS I have) but the only information I found was a couple of people who couldn’t do it. Not deterred, I set off and entered the unknown. Read on for my story (spoiler: it ends in success).
Font Gone Missing: Arial
The other day, while helping a friend set up his new computer, I came across a bizarre and irritating problem. I installed Google Chrome, and was on the internet, and noticed that everything was in italics. It was difficult on the eyes. I tried to change some settings in the Page Font menu in Chrome, but to no avail. I found other people had this problem, and after digging in the system’s Fonts folder, I found the issue.