Skip to content

Instantly share code, notes, and snippets.

@jackm
jackm / can-packages-and-tools.md
Last active October 9, 2025 06:51
Collection of CAN bus packages and tools

Collection of CAN bus packages and tools

This document assumes the use of Linux as the chosen development platform. Items in bold are highly recommended.

It is recommended to use SocketCAN when working with CAN bus on Linux. It is supported by the Linux kernel mainline and follows the Linux interface model, allowing you to use other network tools such as Wireshark. This also allows the creation of virtual CAN interfaces where no physical hardware is required to simulate or replay CAN messages.

@mjs3339
mjs3339 / MMTimer.cs
Last active March 6, 2025 10:41
C# Multimedia Timer TimeSetEvent TimeKillEvent
public class MMTimer : IDisposable
{
private const int EventTypePeriodic = 1;
private const uint STATUS_SUCCESS = 0;
private const uint STATUS_TIMER_RESOLUTION_NOT_SET = 0xC0000245;
private readonly MultimediaTimerCallback Callback;
private bool disposed;
private bool enabled;
private bool highestPossibleResolution;
private int interval, resolution;
@Chaser324
Chaser324 / GitHub-Forking.md
Last active October 3, 2025 10:01
GitHub Standard Fork & Pull Request Workflow

Whether you're trying to give back to the open source community or collaborating on your own projects, knowing how to properly fork and generate pull requests is essential. Unfortunately, it's quite easy to make mistakes or not know what you should do when you're initially learning the process. I know that I certainly had considerable initial trouble with it, and I found a lot of the information on GitHub and around the internet to be rather piecemeal and incomplete - part of the process described here, another there, common hangups in a different place, and so on.

In an attempt to coallate this information for myself and others, this short tutorial is what I've found to be fairly standard procedure for creating a fork, doing your work, issuing a pull request, and merging that pull request back into the original project.

Creating a Fork

Just head over to the GitHub page and click the "Fork" button. It's just that simple. Once you've done that, you can use your favorite git client to clone your repo or j

@thoemmi
thoemmi / PreBuild.targets.xml
Created August 26, 2012 21:22
a msbuild target file creating a CommonAssemblyInfo.cs based on `git describe`
<?xml version="1.0" encoding="utf-8" ?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<UsingTask
TaskName="GetVersion"
TaskFactory="CodeTaskFactory"
AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll" >
<ParameterGroup>
<VersionString ParameterType="System.String" Required="true" />
<Version ParameterType="System.String" Output="true" />