diff options
Diffstat (limited to '_projects')
| -rw-r--r-- | _projects/bumblebee.md | 17 | ||||
| -rw-r--r-- | _projects/e-reader.md | 10 | ||||
| -rw-r--r-- | _projects/fpm-door-lock.md | 10 |
3 files changed, 19 insertions, 18 deletions
diff --git a/_projects/bumblebee.md b/_projects/bumblebee.md index a114140..b322969 100644 --- a/_projects/bumblebee.md +++ b/_projects/bumblebee.md @@ -37,15 +37,16 @@ src="https://github.com/desjarlais/Scintilla.NET" class="external" target="_blank" rel="noopener noreferrer">Scintilla.NET</a> editor), debounce events, and block hidden elements and scripts. -Before settling on a desktop application, we contemplated a browser extension. -We decided against that because we didn't want the browser vendor to dictate -Bumblebee's capabilities. Furthermore, the company's security policy prohibited -browser extensions, complicating its deployment. The initial prototype used a -C# wrapper of the Chromium project instead of WebView. WebView's more intuitive +Before settling on a desktop application, we contemplated designing Bumblebee +as a browser extension. We decided against that because we didn't want the +browser vendors to dictate Bumblebee's capabilities. Besides, the company's +security policy, which prohibited browser extensions, would have complicated +the deployment of an extension-based solution. The initial prototype used a C# +wrapper of the Chromium project instead of WebView. WebView's more intuitive API and its seamless integration with Windows Forms led us to choose it over the Chromium wrapper. -Bumblebee reduced the time we spent on authoring scripts from hours to a few -minutes. Since the rules for code generation were written and optimized by -experts in web technologies, the output was more robust. +Bumblebee predictably reduced the time we spent on authoring scripts from hours +to a few minutes. Since the code generation rules were written and optimized by +experts in web technologies, the quality of the scripts improved as well. diff --git a/_projects/e-reader.md b/_projects/e-reader.md index dcafca0..3405cc8 100644 --- a/_projects/e-reader.md +++ b/_projects/e-reader.md @@ -29,13 +29,13 @@ minimize power consumption when not in use and records the reading progress in the chip's RTC memory. The most formidable challenge when trying to build an e-reader with an ESP32 -board is its limited memory and storage. My ESP-WROOM-32 board has 512 KB of -SRAM and 4 MB of flash memory, which the freeRTOS, ESP-IDF, and the e-reader +board is its limited memory and storage. My ESP-WROOM-32 board has 512KB of +SRAM and 4MB of flash memory, which the freeRTOS, ESP-IDF, and the e-reader application must share. To put things into perspective, a Kindle Paperwhite has -at least 256 MB of memory and 8 GB of storage. +at least 256MB of memory and 8GB of storage. Despite its size, as microcontrollers go, ESP32 is a powerful system-on-a-chip -with a 160 MHz dual-core processor and integrated WiFi. So, I thought it’d be +with a 160MHz dual-core processor and integrated WiFi. So, I thought it’d be amusing to embrace the constraints and build my e-reader using a $5 MCU and the power of C programming. @@ -48,7 +48,7 @@ monochrome image of a page (a .ebm file). The EBM file contains a series of bitmaps, one for each page of the book. The dimensions of each bitmap are equal to the size of the display. Each byte of the bitmap encodes information for rendering eight pixels. For my display, -which has a resolution of 480x800, the bitmaps are laid out along 48 KB +which has a resolution of 480x800, the bitmaps are laid out along 48KB boundaries. This simple file format lends well to HTTP streaming, which is its main advantage, as we will soon see. diff --git a/_projects/fpm-door-lock.md b/_projects/fpm-door-lock.md index a94b9e0..b2a0165 100644 --- a/_projects/fpm-door-lock.md +++ b/_projects/fpm-door-lock.md @@ -14,11 +14,11 @@ microcontroller. ## Overview -The lock comprises three subsystems: the ATmega328P, an R503 fingerprint -sensor, and an FS5106B high-torque servo. The sensor mounted on the front -surface of the door enables users to unlock it from the outside. The servo is -attached to the interior door knob. The MCU must be installed at the back of -the door to prevent unauthorized users from tampering with it. +The lock comprises three subsystems: the ATmega328P microcontroller, an R503 +fingerprint sensor, and an FS5106B high-torque servo. The sensor mounted on the +front surface of the door enables users to unlock it from the outside. The +servo is attached to the interior door knob. The MCU must be installed at the +back of the door to prevent unauthorized users from tampering with it. When no one is interacting with the lock, the MCU is in deep sleep. The sensor and the servo each draw 13.8mA and 4.6mA of quiescent currents. To prevent this |
