ee3e5551dbe532794645eab5d0d4e9da42f79eff
Tech/Tech.md
... | ... | @@ -6,167 +6,173 @@ title: Tech |
6 | 6 | |
7 | 7 | ### Code Style and Idiomata |
8 | 8 | |
9 | -* [BitfieldGotchas][1] or Why Bitfields Are Dangerous |
|
10 | -* [CodeGeneration][2] in C |
|
11 | -* [ElseIfStyle][3] in C |
|
12 | -* [FixedWidthTypes][4] in C99 |
|
13 | -* [Generic Annotation of Code][5] - abstracting doxygen and lint |
|
14 | -* [MinimalistCodeStyle][6] - rational, minimalist code style |
|
15 | -* [StateMachineStyle][7] in C |
|
16 | -* [StaticAssert][8] - portable runtime assert |
|
17 | -* [StructNamespaces][9] in C |
|
18 | -* [T4CodeGeneration][10] in C# |
|
19 | -* [UnorderedSets][11] in C |
|
9 | +* [BitfieldGotchas][1] or Why Bitfields Are Dangerous |
|
10 | +* [CodeGeneration][2] in C |
|
11 | +* [ElseIfStyle][3] in C |
|
12 | +* [FixedWidthTypes][4] in C99 |
|
13 | +* [Generic Annotation of Code][5] - abstracting doxygen and lint |
|
14 | +* [MinimalistCodeStyle][6] - rational, minimalist code style |
|
15 | +* [StateMachineStyle][7] in C |
|
16 | +* [StaticAssert][8] - portable runtime assert |
|
17 | +* [StructNamespaces][9] in C |
|
18 | +* [T4CodeGeneration][10] in C# |
|
19 | +* [UnorderedSets][11] in C |
|
20 | 20 | |
21 | -* [Parse and pack message decoding][12] |
|
22 | -* [Fallback implementation for an interface][13] in C |
|
23 | -* [Lazy structure parsing][14] for embedded C |
|
21 | +* [Parse and pack message decoding][12] |
|
22 | +* [Fallback implementation for an interface][13] in C |
|
23 | +* [Lazy structure parsing][14] for embedded C |
|
24 | 24 | |
25 | 25 | |
26 | 26 | |
27 | 27 | ### Window Managers, Editors and IDEs |
28 | 28 | |
29 | -* [VIM][16] tweaks |
|
30 | -* [VIM and IAR][17] |
|
31 | -* [VIM and TI][18] - Code Composer Studio |
|
32 | -* [VIM and PCLint][19] |
|
33 | -* [VIM Project vimrc][20] |
|
34 | -* [VIM Plugins][21] |
|
35 | -* [VIM and System Verilog][22] |
|
36 | -* [MSVC Productivity][23] |
|
37 | -* [MPLABX and CI][24] - Controlling the Microchip IDE for Continuous Integration |
|
38 | -* [DWM][25] - Using dwm as it's meant to be used |
|
29 | +* [VIM][16] tweaks |
|
30 | +* [VIM and IAR][17] |
|
31 | +* [VIM and TI][18] - Code Composer Studio |
|
32 | +* [VIM and PCLint][19] |
|
33 | +* [VIM Project vimrc][20] |
|
34 | +* [VIM Plugins][21] |
|
35 | +* [VIM and System Verilog][22] |
|
36 | +* [MSVC Productivity][23] |
|
37 | +* [MPLABX and CI][24] - Controlling the Microchip IDE for Continuous Integration |
|
38 | +* [DWM][25] - Using dwm as it's meant to be used |
|
39 | 39 | |
40 | 40 | |
41 | 41 | |
42 | 42 | ### Compilation and Building |
43 | 43 | |
44 | -* [Build Tools][26] - rake, scons, cmake, waf, etc |
|
45 | -* [CMake][27] - cross compilation, etc |
|
46 | -* [CMake Build Deps][28] - build lib deps from anywhere in the source tree |
|
47 | -* [ConfigDefines][29] - quick, tidy feature #defines |
|
48 | -* [MSP430 Cross Compiler][30] on i686 |
|
49 | -* [PIC Cross Compiler][31] on i686 |
|
50 | -* [Cross Compile PowerPC][32] on x86-64 |
|
51 | -* [PCLint and Make][33] |
|
52 | -* [Rake For Make Users][34] |
|
53 | -* [Java on x64][35] |
|
54 | -* [Jenkins Multibranch Pipeline with Git Tag Discovery][36] |
|
44 | +* [Build Tools][26] - rake, scons, cmake, waf, etc |
|
45 | +* [CMake][27] - cross compilation, etc |
|
46 | +* [CMake Build Deps][28] - build lib deps from anywhere in the source tree |
|
47 | +* [ConfigDefines][29] - quick, tidy feature #defines |
|
48 | +* [MSP430 Cross Compiler][30] on i686 |
|
49 | +* [PIC Cross Compiler][31] on i686 |
|
50 | +* [Cross Compile PowerPC][32] on x86-64 |
|
51 | +* [PCLint and Make][33] |
|
52 | +* [Rake For Make Users][34] |
|
53 | +* [Java on x64][35] |
|
54 | +* [Jenkins Multibranch Pipeline with Git Tag Discovery][36] |
|
55 | 55 | |
56 | 56 | |
57 | 57 | |
58 | 58 | ### Versioning and Release Management |
59 | 59 | |
60 | -* [Version Strings][37] - methods to embed version strings into C code |
|
61 | -* [SourceSafeCommands][38] |
|
62 | -* [Migrate VSS to SVN][39] |
|
63 | -* [Git Svn Notes][40] |
|
64 | -* VCS [Repository Layout][41] - sane version control structures |
|
65 | -* [Application Package Manager][42] - embedded package management |
|
66 | -* [Debian Raspberry Pi Packaging][43] |
|
60 | +* [Version Strings][37] - methods to embed version strings into C code |
|
61 | +* [SourceSafeCommands][38] |
|
62 | +* [Migrate VSS to SVN][39] |
|
63 | +* [Git Svn Notes][40] |
|
64 | +* VCS [Repository Layout][41] - sane version control structures |
|
65 | +* [Application Package Manager][42] - embedded package management |
|
66 | +* [Debian Raspberry Pi Packaging][43] |
|
67 | 67 | |
68 | 68 | |
69 | 69 | |
70 | 70 | ### Documentation |
71 | 71 | |
72 | -* [Hierarchical Doxygen][44] |
|
73 | -* [Design Docs In Doxygen][45] |
|
72 | +* [Hierarchical Doxygen][44] |
|
73 | +* [Design Docs In Doxygen][45] |
|
74 | 74 | |
75 | 75 | |
76 | 76 | |
77 | 77 | ## Software Engineering |
78 | 78 | |
79 | -* [Embedded System Testing][46] |
|
79 | +* [Embedded System Testing][46] |
|
80 | 80 | |
81 | 81 | |
82 | 82 | |
83 | 83 | ## Hardware |
84 | 84 | |
85 | -* [Updating Speedtouch Router Firmware][47] from Linux |
|
86 | -* [Matshita UJ816][48] DVD-RW drive issues |
|
87 | -* [Jabra Bluetooth Headset][49] |
|
88 | -* [CanonIxus800][50] (aka SD700) |
|
89 | -* GPS - [Garmin Foretrex][52] |
|
90 | -* Satnav - [TomTomOne][53] |
|
91 | -* [Netbook][54] - [Nixie][55] |
|
92 | -* [Stereo][56] - [Pioneer DEH-2200UB][57] |
|
93 | -* [HelmetCamera][58] - [ContourHD][59] |
|
94 | -* [MiniHDCamera][60] |
|
95 | -* Smart phone - [ZteBlade][61] |
|
96 | -* Smart phone - Motorola [MotoG][62] |
|
97 | -* Smart phone - Motorola [MotoG5][63] |
|
98 | -* Smart phone - [DoogeeT5][64] |
|
99 | -* Smart phone - Xiaomi [Redmi 9A] |
|
100 | -* Weather Station - [La Crosse WS9029U-IT][65] |
|
101 | -* [Casio Data Bank][66] |
|
102 | -* [Casio Sea-Pathfinder][67] |
|
103 | -* [NookSimpleTouch][68] e-book reader |
|
104 | -* [Udi816][69] - micro quadcopter |
|
105 | -* [SymaX1][70] - mini quadcopter |
|
106 | -* [3G Modem][71] - [Huawei E1750][72] |
|
107 | -* [3G Modem][71] - [Huawei E3131][73] |
|
108 | -* 4G/[3G Modem][71] - [ZTE MF823][74] |
|
109 | -* 4G/[3G Modem][71] - [Huawei E3372][75] (Vodafone K5160) |
|
110 | -* [3G Modem Unlocking][76] - Unlocking 3G USB dongles in Linux |
|
111 | -* [MultiwayRadio][77] - full-duplex multi-party mobile (in-car) audio conferencing |
|
112 | -* [FirmwareUpgrade][78] - upgrading HDD and motherboard firmware from Linux |
|
113 | -* [Watchman Sonic][79] - Sonic oil level monitor using 433MHz band |
|
114 | -* [Watch.Pebble][80] - the original Pebble smart watch |
|
115 | -* [NordCE2](NordCE2) - OnePlus Nord CE2 |
|
116 | -* [PocoM4](PocoM4) - Xiaomi Poco M4 android phone |
|
117 | - |
|
85 | +### Smart Phones |
|
86 | +* Smart phone - [ZteBlade][61] |
|
87 | +* Smart phone - Motorola [MotoG][62] |
|
88 | +* Smart phone - Motorola [MotoG5][63] |
|
89 | +* Smart phone - [DoogeeT5][64] |
|
90 | +* Smart phone - Xiaomi [Redmi 9A](Redmi 9A) |
|
91 | +* Smart phone - OnePlus [Nord CE2](NordCE2) |
|
92 | +* Smart phone - Xiaomi [Poco M4](PocoM4) |
|
93 | + |
|
94 | +### Watches |
|
95 | +* [Watch.Pebble][80] - the original Pebble smart watch |
|
96 | +* [TicWatch Pro 3 Ultra](Watch.TicWatchPro) |
|
97 | +* [Samsung Galaxy Watch4](Watch.GalaxyWatch4) |
|
98 | + |
|
99 | +### Other |
|
100 | +* [Updating Speedtouch Router Firmware][47] from Linux |
|
101 | +* [Matshita UJ816][48] DVD-RW drive issues |
|
102 | +* [Jabra Bluetooth Headset][49] |
|
103 | +* [CanonIxus800][50] (aka SD700) |
|
104 | +* GPS - [Garmin Foretrex][52] |
|
105 | +* Satnav - [TomTomOne][53] |
|
106 | +* [Netbook][54] - [Nixie][55] |
|
107 | +* [Stereo][56] - [Pioneer DEH-2200UB][57] |
|
108 | +* [HelmetCamera][58] - [ContourHD][59] |
|
109 | +* [MiniHDCamera][60] |
|
110 | +* Weather Station - [La Crosse WS9029U-IT][65] |
|
111 | +* [Casio Data Bank][66] |
|
112 | +* [Casio Sea-Pathfinder][67] |
|
113 | +* [NookSimpleTouch][68] e-book reader |
|
114 | +* [Udi816][69] - micro quadcopter |
|
115 | +* [SymaX1][70] - mini quadcopter |
|
116 | +* [3G Modem][71] - [Huawei E1750][72] |
|
117 | +* [3G Modem][71] - [Huawei E3131][73] |
|
118 | +* 4G/[3G Modem][71] - [ZTE MF823][74] |
|
119 | +* 4G/[3G Modem][71] - [Huawei E3372][75] (Vodafone K5160) |
|
120 | +* [3G Modem Unlocking][76] - Unlocking 3G USB dongles in Linux |
|
121 | +* [MultiwayRadio][77] - full-duplex multi-party mobile (in-car) audio conferencing |
|
122 | +* [FirmwareUpgrade][78] - upgrading HDD and motherboard firmware from Linux |
|
123 | +* [Watchman Sonic][79] - Sonic oil level monitor using 433MHz band |
|
118 | 124 | |
119 | 125 | |
120 | 126 | ## PIM related |
121 | 127 | |
122 | -* [Lightning for LinuxPPC][81] |
|
123 | -* [Muxing Matroska][82] |
|
124 | -* [Nokia Series 60 VoIP][83] - SIP settings for Nokia Series 60 |
|
125 | -* [VoIP][84] - which protocol and client? |
|
126 | -* [Powerbook Dvorak Keymaps][85] |
|
127 | -* [Instant Messaging][86] - IM tweaks |
|
128 | -* [SupMail][87] - Sup mail client configuration |
|
128 | +* [Lightning for LinuxPPC][81] |
|
129 | +* [Muxing Matroska][82] |
|
130 | +* [Nokia Series 60 VoIP][83] - SIP settings for Nokia Series 60 |
|
131 | +* [VoIP][84] - which protocol and client? |
|
132 | +* [Powerbook Dvorak Keymaps][85] |
|
133 | +* [Instant Messaging][86] - IM tweaks |
|
134 | +* [SupMail][87] - Sup mail client configuration |
|
129 | 135 | |
130 | 136 | |
131 | 137 | |
132 | 138 | ## Networking |
133 | 139 | |
134 | -* [TinyDnsHiddenPrimary][88] |
|
135 | -* [GoogleAppsMigration][89] |
|
136 | -* [BluetoothGprsModem][90] |
|
137 | -* [CellC 3G][91] - ZA 3g data connectivity with USB dongle. |
|
140 | +* [TinyDnsHiddenPrimary][88] |
|
141 | +* [GoogleAppsMigration][89] |
|
142 | +* [BluetoothGprsModem][90] |
|
143 | +* [CellC 3G][91] - ZA 3g data connectivity with USB dongle. |
|
138 | 144 | |
139 | 145 | |
140 | 146 | |
141 | 147 | ## Other |
142 | 148 | |
143 | -* [GnuPG Key Management][92] |
|
144 | -* [Elliptic Curve Crypto][93] |
|
145 | -* [Circumventing ARccOS][94] |
|
146 | -* [PPC Chroot][95] on x86 |
|
147 | -* [ResizeLUKS][96] |
|
148 | -* [FlashN770][97] on ppc linux |
|
149 | -* [Geotag][98] photos |
|
150 | -* [Music Tagging][99] |
|
151 | -* [AudioCD][100] tidbits |
|
152 | -* [Subtitles][101] |
|
153 | -* [Rsync IPod][102] |
|
154 | -* [FlacToMp3][103] |
|
155 | -* [WindowsProductivity][104] |
|
156 | -* [Bitcoin][105] |
|
157 | -* [UbuntuProductivity][106] |
|
158 | -* [Gps Filtering][107] with gpsbabel |
|
159 | -* [PmWikiFixEncoding][108] - fix encoding following php default encoding change to UTF-8 |
|
160 | -* [Video][109] - manipulating video containers |
|
161 | -* [Images][110] - manipulating images |
|
162 | -* [PdfEditing][111] - sticking things into PDFs which are not PDF-forms |
|
163 | -* [FoxyProxy][113] - useful foxy proxy settings |
|
164 | -* Skype - tips and settings for software development |
|
165 | -* [SniffSerialPort][115] - continuous hexdump |
|
166 | -* [BrilliantForWindows][116] |
|
167 | -* [FirefoxProductivity][117] |
|
168 | -* [WikiToGit][118] - scripts to pull wiki content into git |
|
169 | -* [XmlStar][119] - notes on using xmlstarlet |
|
149 | +* [GnuPG Key Management][92] |
|
150 | +* [Elliptic Curve Crypto][93] |
|
151 | +* [Circumventing ARccOS][94] |
|
152 | +* [PPC Chroot][95] on x86 |
|
153 | +* [ResizeLUKS][96] |
|
154 | +* [FlashN770][97] on ppc linux |
|
155 | +* [Geotag][98] photos |
|
156 | +* [Music Tagging][99] |
|
157 | +* [AudioCD][100] tidbits |
|
158 | +* [Subtitles][101] |
|
159 | +* [Rsync IPod][102] |
|
160 | +* [FlacToMp3][103] |
|
161 | +* [WindowsProductivity][104] |
|
162 | +* [Bitcoin][105] |
|
163 | +* [UbuntuProductivity][106] |
|
164 | +* [Gps Filtering][107] with gpsbabel |
|
165 | +* [PmWikiFixEncoding][108] - fix encoding following php default encoding change to UTF-8 |
|
166 | +* [Video][109] - manipulating video containers |
|
167 | +* [Images][110] - manipulating images |
|
168 | +* [PdfEditing][111] - sticking things into PDFs which are not PDF-forms |
|
169 | +* [FoxyProxy][113] - useful foxy proxy settings |
|
170 | +* Skype - tips and settings for software development |
|
171 | +* [SniffSerialPort][115] - continuous hexdump |
|
172 | +* [BrilliantForWindows][116] |
|
173 | +* [FirefoxProductivity][117] |
|
174 | +* [WikiToGit][118] - scripts to pull wiki content into git |
|
175 | +* [XmlStar][119] - notes on using xmlstarlet |
|
170 | 176 | * [Accounting][120] - with beancount and truelayer |
171 | 177 | |
172 | 178 | [1]: BitfieldGotchas |