• Welcome to Andy's Workshop Forums. Please login or sign up.
September 24, 2021, 03:19:56 pm


SMF - Just Installed!

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - Andy Brown

I've recently been upgrading my PC from one based around the HP Z800 motherboard to a new one based on a pair of cheap Xeon E5-2678 v3 CPUs in an Asus Z10PE-D16 WS board. As part of that upgrade I've installed an Asrock Ultra Quad NVME PCIe card adapter. Like the equivalent Asus Hyper card this requires bifurcation of the PCIe slot which means splitting it from fixed x8 or x16 lanes to x4/x4 or x4/x4/x4/x4.

The Asus BIOS doesn't expose this option, but it is there if you load the BIOS into AMIBCP. I've done that, and made the option visible. The modified BIOS can be downloaded here:


I have confirmed that the option is now visible but as yet I only have one NVME drive on the Asrock card so I can't confirm if it actually takes effect when selected. I'm posting this here in the hope it's helpful for someone.

I flashed this BIOS by writing it to a USB drive and using the BIOS flashback option where you hold down the button on the back of board where the IOs are and boot the machine.
I've recently built a development board for the new STM32G081RBT6 MCU featuring the Cortex M0+ core.

There's a full write up here and a video on YouTube that you can watch.
I just posted a new article that documents my experience using a 4k TV as a computer monitor. I walk through the selection process documenting all the pitfalls that I found along the way. Hopefully if any of you are considering doing the same then this will help you make your decisions.

Click here for the article.
I've just published a new article describing how I built a temperature sensing board to compliment the earlier relays and triacs board.

Now that I've got sensing and switching I can mount these two boards inside a PC case and get working on the middleware software. Here's a picture of both the boards ready to mount in the case.

I've built the first controller board in my process automation series and done the usual full writeup of the design and build process. Click here to read it.

I've just done a write up and video that explains how I've made a case for my Artesyn NXA66-based PSU controller board.

Click here to read all about it.

I've just published a new blog article and video that shows how I designed and built a controller board for the NXA66 power supply module that I investigated in a previous article.

Click here to go directly to the article to read more.
stm32plus C++ library / stm32plus 4.0.5 released
November 12, 2016, 05:45:56 am
I've released version 4.0.5. It contains some useful optimisations for size and speed. You can read the detail on github.
Quite some time ago I bought a GPS Disciplined Oscillator (GPSDO) on ebay to calibrate my Nanocounter frequency counter project.

I've now got around to reviewing it and taking it apart to see what's inside. Click here to read the article.
Some fairly aimless ebay fishing recently turned up a voltage regulator module for older Xeon CPUs. Initial thoughts of breaking it open for parts were quickly replaced by a desire to reverse-engineer it and perhaps reuse it as a miniature PSU board.

Click here to read about how I got on. A video, extensive load testing results and lots of photographs accompany the writeup.

When you get to the end of the article you'll note that there are many unanswered questions. If anyone knows what the unidentified pins do then please feel free to post your ideas. Eventually I'd like to build a board around this module and it would be nice to expose all the functionality.
gcc is now following a few separate release tracks including 4.9.x, 5.x and 6.x and I thought it might be helpful to document which is the most recent supported version for stm32plus.

4.9.x: legacy. stm32plus was developed on the 4.9.x compilers and will likely continue to work on it for some time but you are encouraged to upgrade.

5.x: current. 5-2015-q4-major release from the 5.0 series released 2015-12-23 is the latest tested release. This is gcc version 5.2.1. Do not upgrade to the 5.4 release because it contains regression bugs that affect the build. 5.4.1 (5-2016-q3-update) is now supported. A workaround is in place for the regression.

6.x: future. No support yet but when an official release appears I will look to upgrade and test with this new release.
stm32plus C++ library / stm32plus 4.0.4 released
July 17, 2016, 07:00:03 am
The latest release of stm32plus is now 4.0.4 and you can get it from github.

It's hardware project time again. This time I've got around to tackling a rather large FPGA that I got hold of an ebay some time ago. Check out the article to see how I get on.

Today I moved the website and forum to a new host because my previous provider has decided to move to hourly billing which would have cost me 500% more per month to operate the site.

If the forum tells you it can't log you in and the message is something like "check your cookie settings" then go to your browser's cookie management options and clear out all cookies with 'andybrown' in the site name. Apologies for the inconvenience.
I've just published a detailed review, with two accompanying videos, of the Maximator FPGA development board. This was my first experience with the Altera MAX10 FPGA series, click here to see how I get along.

I recently bought myself a basic studio lighting kit on ebay that included a CFL bulb labelled as 135W.

This seemed like a good opportunity for a 'consumer information' style video so, here it is:

I finally got around to designing and building a laser-cut acrylic case for my android/bluetooth reflow controller. You can read all about it in this blog article.

This is my first attempt at being a hobby maker and I'm quite pleased with the outcome. I'll certainly be doing more of this in the future.
A few people have mentioned, both here in the forum and in the comments accompanying the Z800 hack article, that they're having trouble getting their CPU fans to ramp up from the minimum speed and are therefore seeing some alarming core temperatures when the CPU is under load.

The key to fixing this is the SpeedFan utility but setting it up for use with the Z800 is not at all obvious.

Here's a step by step guide to how to do it. This guide is based on my dual X5680 board, you can easily adapt this to a single socket or quad-core configuration.

Launch SpeedFan and select the Configure button. You'll get a row of tabs.

Select the Fan Control tab and create profiles that look like this:

To create a profile, click the Add button and give it a name. I used 'CPU0' and 'CPU1'. Check the Controlled speed box and select Pwm1 from ADT7490.... Make sure you select MAX of speeds because we're going to add a group of sensors to monitor (the other option will add all the temperatures together with the net effect of maxing your fan all the time). In the Temperatures box click Add and repeatedly add each core for CPU0.

If you have two CPUs installed then repeat the process for CPU1. All the information you need should be in this screenshot:

Now go to the Advanced tab and select the ADT7490... option from the Chip dropdown. The important entries are PWM 1 mode and PWM 2 mode. These will be set to Auto on PECI0 and Auto on PECI1. Change them to Manually controlled as shown here:

Make sure you check Remember it for both properties if you want your settings to survive a reboot.

Finally, you'll probably want to configure SpeedFan to run on startup and startup minimized. You can find the minimize option in the Options tab and there's a guide here that shows how to schedule a program to start automatically. Some people recommend using the Delay task for option to add a 15 second delay after startup to resolve issues with other auto-start programs.

I have tested that these settings will automatically ramp up the CPU fans when the cores get hot and that they survive a reboot.
In case you hadn't already seen it I've posted a new article over in the main website that documents my frequency counter project. There's also a video on youtube. My frequency counter combines an FPGA to do the fast counting with an STM32 to do the controlling and an android app to do the display work.

Schematics, gerbers and all the source code are of course free and open source.

I've recently been engaged in writing the firmware for a USB HID device on the F042 and naturally I didn't want to use the bloated HAL/Cube libraries so I implemented an efficient stm32plus driver for custom HID devices and included a new stm32plus example to support it.

I wrote a blog post to support the driver and the example and padded it out with, hopefully, all the information that you need to write and debug STM32 F042 USB devices connected to a PC.