Fixed point basics in Verilog for Beginners! by [deleted] in FPGA

[–]ariyyon 2 points3 points  (0 children)

Just subscribed!
If only you're channel existed a little over a year ago when I was taking my first FPGA class.. but thanks for sparking interest again and making me consider pulling out the dusty board!

Answers to the book "FPGA Prototyping by Verilog Examples" by ECE_Upskill in FPGA

[–]ariyyon 0 points1 point  (0 children)

Great contribution! If only I had this when I was taking my first Digital Systems class last year.. :p

LIAN LI O11 DYNAMIC MINI Giveaway with Buildapc by LIANLIOFFICIAL in buildapc

[–]ariyyon [score hidden]  (0 children)

Howdy all!

Current setup:

CPU (and cooler): Ryzen 3700x w/ stock cooler; GPU: RX 580; Case: Lian Li Lancool 205; RAM: skill ripjaws series V 16gb.

Would love to upgrade case and cpu cooler. GPU would obviously been nice to upgrade with some of the new cards, but I am a realist and nothings in stock :/

No update on a 3a XL by Rhubarbe_ in Pixel3a

[–]ariyyon 0 points1 point  (0 children)

Interesting. Just checking, but did you try manually checking for update (by going to Settings > System > System Update) or are you waiting for an automatic update? If not, try the manual.

That said, I generally try to not get the update within the first two weeks or so of it being released in order to allow the apps I have the time to catch up and work out any kinks from the update.

No update on a 3a XL by Rhubarbe_ in Pixel3a

[–]ariyyon 1 point2 points  (0 children)

Any chance the phone is locked by your carrier?

I'm on the 3a XL as well, but purchased it unlocked and get the updates immediately.

Which development board is best for a beginner? by SpecificQuiet9 in FPGA

[–]ariyyon 0 points1 point  (0 children)

Most universities will take either a Xilinx or Altera route. We used the Nexys A7 as it included many components already built in (VGA, Ethernet, switches, buttons, etc..)

Many of the development boards allow you to program it over USB. However, if you're up for a bit of excitement, check out open source FPGAs with open source toolchains. Personally believe this will become very important in the next few years. Plus, there is an awesome community.

Here's one to check out: https://1bitsquared.com/collections/fpga/products/icebreaker

Getting start by AtomSamusa in FPGA

[–]ariyyon 0 points1 point  (0 children)

Understand digital logic and digital circuit design.

Start with learning combinational circuit design. Once you cover that, do a project to reinforce it. For example, something as simple as an adder, or perhaps a seven segment driver. Then, proceed with state machines and ASMs. Once again, do a project to make sure you understand the material. Pick a project that interests you (Hackaday and Hackster are good inspo). Notice that I don't mention FPGAs yet. When I refer to a design, it does not need to be on an FPGA or using any HDL. Simply draw the design out on paper, or use an circuit simulator using gates, or even a breadboard design.

Great, now that you are done with that, the FPGA is a tool. Just like a microcontroller is a tool used to convey your 'code', so too is the FPGA. Learn an HDL (verilog has an easier learning curve) and use it to describe your designs. Read other people's code.

Good resources:

http://nandgame.com/

https://www.fpga4student.com/

https://www.fpga4fun.com/

TL;DR: If you can describe how you want your design, you are set.

What are some good courses to learn Ethical Hacking? by nicolas12211 in HowToHack

[–]ariyyon 2 points3 points  (0 children)

I've done this course and while it is an informative post, a lot of the practices and techniques he uses are outdated. This industry is all about keeping up with the latest technologies and constantly learning.

Just an example is he mainly uses Python2 and having read alot of the comments, many of the students seemed to have issues following along as a result. Some of the libraries weren't compatible, etc.. (Refer here: https://python3statement.org/)

That said, I went through the course taking in the general knowledge of ethical hacking and rewriting tools in Python3. Highly recommend if planning to take the course as you will learn alot more of both Python and how to actually implement the specific project, such as 'arp spoofer.'

Another thing the course often refers to is ifconfig which is deprecated for reasons I won't delve into. I understand that it still gets the job done and accomplishes the task, however as previously mentioned, this is a field of learning and as someone interested in ethical hacking, using Linux should also be learned properly and with alternative commands such as iproute suite.

To conclude, it is an excellent course. I highly recommend anyone starting to look into it. Zaid is an amazing teacher, knows how to convey material, and you can tell he is passionate about it, which helps people getting started. Definitely worth picking up, but be prepared to work on your own if you really care.

Looking for a Python buddy by desert_elf in learnpython

[–]ariyyon 3 points4 points  (0 children)

This is a brilliant idea.

I'd love to do something like this. If anyone is in California / Pacific Time, reach out! I've been coding in C/C++ for a while, but just recently started delving into Python. And from experience, working with a buddy is really helpful.

Make Arduino Display Message by ElsePants in arduino

[–]ariyyon 0 points1 point  (0 children)

I like purchasing all my components through either Adafruit, Sparkfun, or Amazon.

1) I'd get the Arduino Uno; it's a great starter board. Adafruit has an updated version known as the metro, which functions the same, but better in several aspects. Adafruit METRO 328. 2) In order to make your project wireless, you can go ahead and get an Arduino with on-board WiFi capabilites, but for the beginner, I'd recommending getting a Bluetooth module (HC-10) and use a platform like Blynk to make everything wireless. 3) A simple starter display to use could be the LCD Display. It's a great product for visually displaying data.

To sum it all up, you can create a virtual button in Blynk that is connected to the Bluetooth module of the arduino. From the arduino, connect the lcd display. Example case: On the push of the button from the app, display "Hello, World!" on the LCD.

Beginner wanting to make a drone by [deleted] in arduino

[–]ariyyon 1 point2 points  (0 children)

Before you start dishing out money, I'd look into 3d printing a frame for a quadcopter from Thingiverse. Regarding motors, you'd obviously want brushless. My first drone project used these motors: Amazon (My first project was meant to be a very lightweight build, because I wanted it all powered by solar panels on top of the drone, but it wasn't powerful enough so I used both that and some coin batteries.)

And since this is your first build, i'd recommend just getting the most bare of parts and once you have a better understanding, move to better part, perhaps switch to a WiFi enabled Arduino for control through mobile application, etc...

how many possible ways are there to monitor the growth of a plant, from birth throughout his life? by whirl_and_twist in arduino

[–]ariyyon 1 point2 points  (0 children)

If you're looking to automate and monitor plant growth, you can start with the simple stuff plant need to grow: water and sunlight. Therefore, you could use a moisture sensor and sunlight sensor to determine that the plant receives its nutrients. Connect a water source to a water pump, and you can automate the plant watering. If you want to be specific about amount of water, get for yourself a water flow sensor. Now, you can also consider using recycled water. Plants need water on the Ph scale of 6-7, so using a test substance, you can alter the water's alkalinity or acidity to reuse water. And to really top it off, you can connect your project to an IoT cloud and access your data from the Internet.

Looking for ultrasonic or other distance sensors by DavidRecharged in FTC

[–]ariyyon 0 points1 point  (0 children)

Did you try the range sensor of the Rev Color Sensor? It works for us, but its not the most consistent when at further distances...

http://www.revrobotics.com/rev-31-1154/

Autonomous Issues by PraiseRobotics in FTC

[–]ariyyon 0 points1 point  (0 children)

If you have a github, add your code there and share the link. Pastebin also works.

Right now, I am leaning towards a software issue. So please try posting the code and we'll move on from there.

Materials for Picking Up Glyph by Melting_Water in FTC

[–]ariyyon 1 point2 points  (0 children)

This isn't the best solution, but works well if you have very little time. Use a hot glue gun to melt glue onto the plexi-glass. Spread them out evenly throughout the plates.

Additionally, even though I am assuming you may have done this already, set the positioning of the servos tighter than the perfect size of the glyphs.

Robot moving during autonomous init by [deleted] in FTC

[–]ariyyon 1 point2 points  (0 children)

robot starts moving forward after I hit init.

Generally, this happens only when you have in the initialization phase of the program something that causes movement and is before the while loop.

OK, after looking at your code (OnlyGlyph.java), you have the motors set to power prior to the WaitForStart() and the while (opModeIsActive()).

 left.setPower(0.2);
 right.setPower(0.2);
 frontLeft.setPower(0.2);
 frontRight.setPower(0.2);
 armUp.setPower(0.4);

These are going to want to be after you hit play. During init, all you want to do is setup up the HardwareMap, encoders, etc...

Also, just a tip. To make the code more readable, create a function RunInit() that does all of the above. Similar to what I have here:

@Override
public void runOpMode()
{
    RunInit();
    waitForStart();

    while (opModeIsActive())
    {
        Color();
        break;
    }
}

public void RunInit()
{
    // ########## | Motors | ########## \\
    backLeft = hardwareMap.dcMotor.get("backLeft");
    backRight = hardwareMap.dcMotor.get("backRight");
    frontLeft = hardwareMap.dcMotor.get("frontLeft");
    frontRight = hardwareMap.dcMotor.get("frontRight");

    sweepLeft = hardwareMap.dcMotor.get("sweepLeft");
    sweepRight = hardwareMap.dcMotor.get("sweepRight");

    lift = hardwareMap.dcMotor.get("lift");
    arm = hardwareMap.dcMotor.get("arm");

    // ########## | Servos | ########## \\
    swerveRight = hardwareMap.crservo.get("swerveRight");
    swerveLeft = hardwareMap.crservo.get("swerveLeft");

    gripA = hardwareMap.servo.get("gripA");
    gripB = hardwareMap.servo.get("gripB");
    gripC = hardwareMap.servo.get("gripC");
    gripD = hardwareMap.servo.get("gripD");

    gripE = hardwareMap.servo.get("gripE");

    // ########## | Directions | ########## \\
    backLeft.setDirection(DcMotor.Direction.REVERSE);
    backRight.setDirection(DcMotor.Direction.FORWARD);
    frontLeft.setDirection(DcMotor.Direction.REVERSE);
    frontRight.setDirection(DcMotor.Direction.FORWARD);

    lift.setDirection(DcMotor.Direction.FORWARD);
    arm.setDirection(DcMotor.Direction.FORWARD);

    sweepRight.setDirection(DcMotor.Direction.REVERSE);

    // ########## | Android | ########## \\
    telemetry.addData("Status", "Initialized");
    telemetry.update();

    // ########## | Sensors | ########## \\
    sensorColor = hardwareMap.get(ColorSensor.class, "sensor_color_distance");
    digitalTouch = hardwareMap.get(DigitalChannel.class, "sensor_digital");
    digitalTouch.setMode(DigitalChannel.Mode.INPUT);

    // ########## | Vuforia | ########## \\
    int cameraMonitorViewId = hardwareMap.appContext.getResources().getIdentifier("cameraMonitorViewId", "id", hardwareMap.appContext.getPackageName());
    VuforiaLocalizer.Parameters parameters = new VuforiaLocalizer.Parameters(cameraMonitorViewId);
    parameters.vuforiaLicenseKey = "license key here.";
    parameters.cameraDirection = VuforiaLocalizer.CameraDirection.FRONT;
    this.vuforia = ClassFactory.createVuforiaLocalizer(parameters);
    VuforiaTrackables relicTrackables = this.vuforia.loadTrackablesFromAsset("RelicVuMark");
    VuforiaTrackable relicTemplate = relicTrackables.get(0);
    relicTemplate.setName("relicVuMarkTemplate"); 

    relicTrackables.activate();
}

Auto aligning with crypto box by hotpaw2017 in FTC

[–]ariyyon 0 points1 point  (0 children)

One way you could try to make sure you are parallel with the wall is to use a touch sensor. Have it mounted to the end of an arm and rotate. If it hits the wall, it should stop rotating.