Intro

Hello!

My name is Benjamin Molnar. I'm an engineer who enjoys traveling, the outdoors, photography, programming, and design challenges.

In my free time you can find me exploring different cities, spending time with friends, competing in competitive programming contests, or working on personal projects (like this website).

Check out some of my other projects and feel free to get in touch with me!

Projects

Here you can find a list of some of my personal projects.

This list is always evolving and growing, so check in for updates!

Electric Skateboard

In this project I made an electric longboard using all DIY parts.

Many practical lessons were learned about electric motors, ESCs, LiPo batteries, and power transfer through belts and chains.

Check out the video of some friends and me testing it on the high school track!

Automated Hydroponics System

For my college engineering capstone project my team and I created an automated hydroponics system for urban use.

This project was a great excercise in the design process and was able to grow several rows of plants.

Some future iterations on this could greatly improve its overall design and electronics feature set.

Note: Personally I see aeroponics in enclosed spheres as an area of interest for future projects.

Monorail Tripteron

For the final design project of my computer aided design class I created a monorail tripteron in SOLIDWORKS.

A tripteron is a mechanical motion devices that uses three separate parallel motion mechanisms to position a point in 3D space. A simple way to think about this concept is to envision three arms at orthogonal angles, which position three planes in space. The intersection of the 3 planes creates a single point in 3D space, which can be manipulated by the motion of any one arm.

A monorail tripteron uses the same concept, but places the three arms on a single rail. To accomplish the same goal the arms are angled such that they still create a unique intersection in space.

This project has applications in many areas and the controls would be a fun inverse kinematics problem to solve if actually implemented. Although not practical over cartesian and delta systems, it could indeed be used in 3D printing applications.

TI-BASIC Snake

TI-BASIC is the programming language available on the TI-84 line of calculators. I used this to program a working snake game with score, collision, and more on my TI-84.

TI-BASIC is a great low level programming language and is how I got into programming. I completed this project during bus rides in high school. I believe the snake coordinates were done using a list with 4 digit integers with the first 2 digits representing the X coordinate of a snake link and the second 2 digits representing the Y coordinate.

Several challenges make this hard, like typing and programming with the calculator keys instead of a keyboard and limited variables (A-Z). Sadly this program got lost to time after an assembly program gone wrong cleared the RAM (thanks Zach).

Python Battleship

In this project I recreated the classic battleship board game in Python.

Of course a GUI was used for this. I'm generally of the opinion that GUIs are essential to good software interfaces. To accomplish this, I used the Tkinter Python library to draw a grid of tiles dependent on a user selected difficulty (Easy, Medium, Hard). A cheats mode was also created for debugging.

Ships would be generated recursively such that the ship set for each difficulty fit on valid coordinates in the grid (i.e. no overlapping and no ships out of bounds). To play, the user would click each tile, which would turn red or green to indicate a hit or miss. When a ship was sunk the ship name would be shown to the user. The game would finish when no ships remained alive in the game.

FDM 3D Printer

Years ago I purchased the cheapest large footprint FDM 3D printer I could find, the CR-10. This printer isn't the best off the shelf, but provided a great platform for me to experiment with and modify.

Over time essentially every part of the original printer was swapped out. Modifications included an AC heated bed, an E3D V6 hotend, a custom CADed hotend assembly, a second Z axis, a new board with silent stepper motor drivers and reflashed firmware, a bed leveling system, a TFT touch screen display, the addition of an Octo Pi for remote printing and monitoring, and more.

This printer has been used extensively over the years in different projects, printing CAD models, printing parts for customers, and more. This is a continuous project which always has things to be added and changed.

Some future modifications include dual extruders and creating a custom controller board from scratch.

Balcony Lights

For this project I decided to add lights to my apartment balcony for the holidays.

Of course I had to take this as an opportunity to do the electronics and controls myself. I used an ESP32-S3 as my microcontroller to control strings of WS2811s (addressable RGB LEDs).

The ESP32 and WS2811s allowed me to individually address each LED, leading to custom animations and colors. The ESP32, having wifi, was connected to my apartment network and pings a Google NTP server every 5 minutes to check the time. If the time is after 6 PM and before 8 AM the lights are turned on. Otherwise, they are switched off to conserve electricity.

Future plans include adding more animations and color combinations for specific holidays. Moreover, the NTP server can be used to check the current date against a database and automatically update to holiday specific modes on the appropriate dates. A web interface can also be made to manually control the lights (on/off, color, animation, etc).

This is also a good opportunity to create a PCB (should target ESP32-C3 IoT line) and make a custom enclosure. 12 V lights can be used instead of 5 V to reduce color degredation.

Street Light Sign

In this project I retrofitted an old crosswalk sign my high school had in storage into a usable two digit display.

This display used an Arduino Mega to drive the controls. The Mega would read buttom presses from a remote control with an IR receiver and display the numbers pressed on the remote. To drive the lights NPN transistors were used as digital switches which the Mega's IO controlled.

The sign itself was later finished with a hand-made wooden case.

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form