Jack  C

Jack C


What is dYdX Exchange | How to Use dYdX Exchange for Crypto Trading

In this post, you'll learn What is dYdX Exchange and How to Use dYdX Exchange for Crypto Trading?

1. What is the dYdX Platform?

dYdX is a brilliantly executed decentralized crypto derivatives exchange with a plethora of margin trading and perpetuals options for everyone. Besides having a clever name (dy/dx refers to Leibniz’s Notation in mathematics), dYdX has filled a compelling niche within the crypto trading realm.

Founded in 2017 by former Coinbase engineer Antonio Juliano, dYdX garnered immediate investor interest to the tune of $87 million in funding. That significant capital runway allowed the project’s developers to build the trading platform to painstakingly high standards.

Early iterations of the dYdX exchange platform allowed traders basic crypto margin trading capabilities with limited assets. Now, dYdX upped its game by rolling out margin and perpetuals for many cryptocurrencies. It also added lending and borrowing services to decentralize the entire trading experience altogether.

This is an excellent place to pause and quickly explain crypto margin trading and perpetual contracts to the new people in the room. If you already understand these concepts, feel free to skip ahead.

The beginning of dYdX started in 2019 with a massive fundraising capital of more than USD10 million and was officially launched on September 9, 2021, with an Initial Coin Offering event (ICO).

The novelty of dYdX is that token holders will have a myriad of authority over the ecosystems, such as the ability to acquire absolute bonuses from mining rewards to validating in-platform transactions, among other things.

What is Crypto Margin Trading?

Margin trading with cryptocurrencies is when you borrow crypto to bet more on your trading position. In margin trading, you can take two positions: margin long or short. Long means you think the asset’s price will go up; short means you believe its price will go down.

So, the margin part of margin trading means you use your funds as collateral to borrow more, thus allowing you to trade with a larger stack of assets. The more collateral you deposit, the more you can borrow.

Crypto margin trading entails using different powers of leverage, usually denoted as 5x, 10x, 25x, and so on. Using higher leverage lets you capture more significant gains and entails greater risk since you also capture more downside.

What is Crypto Perpetual Contracts?

Crypto perpetual contracts are a type of derivative trading similar to trading products like BTC futures. The way Bitcoin futures contracts work is straightforward — a buyer and a seller agree to trade BTC at a specific price on a fixed date. If BTC is higher than the agreed price when that date arrives, the buyer wins, and the seller loses.

A crypto perpetual contract is similar, except there is no fixed date specified for the exchange. In other words, you can hold a perpetual contract indefinitely (hence perpetual. The main advantage of trading perpetuals over futures is you aren’t stuck with a loss if the trade goes against you. Instead, you can keep riding the position by funding it, allowing for a potential reversal of fortunes later.

Traders can also apply margined leverage to perpetual contracts.

How dYdX Crypto Exchange Works?

Crypto derivatives exchanges have traditionally relied on centralization to organize lending and borrowing for trading on margin and perpetual contracts. However, smart contracts have enabled decentralized liquidity pools, collateralization, and lending across popular protocols like Uniswap, Compound, and Sushi.

dYdX combines the best decentralized financial technologies for a first-of-its-kind crypto derivatives exchange using crowdsourced liquidity only. In practice, this means that when you deposit collateral to open a leveraged trading position, you’re borrowing from a decentralized liquidity pool funded entirely by other traders.

The basic flow for trading crypto perpetual contracts on dYdX is straightforward.

  1. Fire up the dYdX trading app.
  2. Connect your wallet (MetaMask, Ledger, Coinbase, etc.)
  3. Deposit funds, then select trade.
  4. Open a position with selected leverage (if any) & limits.
  5. Track P&L and fund your position as needed.

However, there are two different versions of dYdX, so your mileage may vary. dYdX offers traders two experiences: Layer 1 dYdX (on Ethereum)  and Layer 2 dYdX (on StarkWare).


  • Perpetual crypto trading with cross-margin capability
  • Complete anonymity
  • Trade to earn dYdX token, which has multiple use cases
  • No gas fees
  • Competitive rates


  • Perpetuals not available for U.S. traders per U.S. law

dYdX User Benefits

Users have access to many benefits associated with using dYdX, and it earns a 5-star rating for these reasons.

  • Speedy, anonymous signup: Account opened in less than 5 minutes.
  • Education: Access tutorials to learn the system and enhance trading.
  • Low fees and no gas costs: Once you deposit to Layer 2, you no longer pay fees to miners for each transaction.
  • Fast transactions: Trades are executed instantly and confirmed on the blockchain within hours.
  • Fast withdrawals: Unlike other platforms, you don’t wait to withdraw your funds from Layer 2.
  • Use on mobile browser: The app, website and desktop experience offer similar high-quality experiences. Every trading platform has a trading view where you can see current crypto price charts and place orders.
  • Secured by StarkWare Layer 2 protocol: A Layer 2 solution provides increased security and privacy via zero-knowledge rollups.
  • Cross-margining: Users can access leverage across positions in multiple markets from a single account.

2. dYdX’s Uniqueness

dYdX, to allow cost-effective trading, retains several attributes and functions that are appealing to both traders and investors. Following are some of the noteworthy features of dYdX that you will undoubtedly notice once you begin using it.

2.1. dYdX on Layer 1

The Layer 1 version of dYdX is a highly liquid decentralized exchange for crypto margin and spot trading. Here, you can use leverage up to 5x on assets like BTC and ETH paired with stablecoins (USDC & DAI).

Borrowing to fund your positions is quickly done with funds deposited directly to your wallet as long as you collateralize appropriately. Currently, the collateralization minimum is 125%, meaning you must deposit well over the amount you intend to borrow. Over-collateralization protects lenders in the event you’re liquidated.

Despite Layer 1 dYdX’s sizable liquidity, the exchange plans to eventually phase out both margin and spot trading as it increases its exclusive focus on perpetuals. Also, because this version is built directly on Ethereum, transaction fees and speed are dependent on Ethereum network activity.

2.2. dYdX on Layer 2

Until Ethereum gets its act together (i.e., Ethereum 2.0), Layer 2 scaling solutions are the next best home for high-volume DeFi apps like dYdX. That’s why dYdX on Layer 2 features the exchange’s flagship products. Layer 2 dYdX is fast, seamless, inexpensive to use, and feels just like trading on a centralized exchange like Binance.

Layer 2 dYdX offers crypto perpetual contract trading for a wide assortment of digital assets. BTC, ETH, SOL, DOT, AAVE, LINK, UNI, SUSHI, MATIC, and LTC are some of the USD-paired cryptocurrencies available for trading. In terms of leverage, you can use up to 25x, which represents a hefty step up from Layer 1 dYdX.

2.3. Staking

Staking is a means of earning rewards that involves leveraging small cryptocurrency holdings as a guarantee and participating in invalidating a blockchain transaction. 

Indeed, the most common type of Staking is to participate in a pool that supports nodes in the operation. 

dYdX features two distinctive staking functions for its users: Safety Pool and Liquidity Pool.

  • Safety Pool is a type of staking that leverages an additional safety net for in-platform users. Stakers in Safety Pool Staking are certain for consistent rewards in an acceptable proportion. The Unstake procedure requires 14 processing days and an additional proposal before ending the last staking cycle.
  • Liquidity Pool is a type of staking to promote liquidity networks to in-platform users. The staking cycle is circulated and yields proportional reward to users by incentivizing new traders to join the platform for market-making purposes on the dYdX Layer 2 protocol. The Unstake procedure requires 14 processing days and must be submitted during the staking cycle.

2.4. Governance

dYdX, like other decentralized platforms, gives everyone who possesses dYdX cryptocurrency the power to regulate the platform’s ecosystems. 

In other words, we’re in a position to see everything from a massive movement toward Layer 2 in terms of risk measurement and stake reward safety conditions to the entry of new cryptocurrencies to Layer 2. In addition, they are ultimately in charge of selecting the lists of liquidity pool traders as well. 

2.5. dYdX’s Rewards

Thanks to dYdX, investors now jump for joy to obtain as many as three sorts of incentives in the platform.

  • Retroactive Mining Rewards are a sort of reward for historical users of dYdX Layer 2 protocols and miners who have engaged in previous activities throughout the network. The proportionate incentives will be distributed in a 5-tier system based on the trading milestones achieved by users.
  • Trading Rewards are incentivizing rewards for investors who engage in dYdX Layer 2 protocol. This incentive is purposely built to accelerate the market liquidity as well.

2.5. dydx.community

Liquidity Provider Rewards are direct incentives for Ethereum-based users that consistently liquidate the dYdX market in the long run. Users must maintain 5% of Trading Volume for 28 days to get the incentive. With a 5-year rewarding procedure, the reward is the longest-lasting among other dYdX incentives.

2.7. Fast withdrawal

A special withdrawal liquidity provider sends funds immediately when this option is selected. No wait time for withdrawal equals speedier trading.

2.8. USDC collateral

dYdX accepts USDC collateral only, providing a clear, stable, and widely available quote asset for all traders.

2.9. Non-custodial

Layer 2 dYdX is built on StarkWare and features fully on-chain liquidity backed by StarkEx technology. Allows real-time yet secure decentralized trading.

3. How do I use dYdX?

The dYdX broadly offers lending and borrowing facilities to its users as well as the less common margin and derivatives trading. To get started with dYdX you need to set up a digital wallet and follow an easy process to either lend or borrow cryptocurrencies. Let me tell you how to use the dYdX Exchange review to grow your incomes either through interest on deposits or lending facilities.

Follow the simple and easy steps below to create your dYdX Interest account in no time.

  • Step 1- Set up your Ethereum wallets such as Metamask or Coinbase. If you have an existing wallet you can use it as well.
  • Step 2-Select the “Start Lending” option available on the DYdX website https://dydx.exchange/
  • Step 3- Link your Ethereum wallet to this
  • Step 4-Select “deposit” and the relevant currency
  • Step 5-Select the relevant wallet and enter the amount
  • Step 6-Finally select the “deposit” option


Now that you are aware of how to set up an Interest account on the dYdX Exchange review, let us explore how to set up a loan or borrowing account. Follow the procedure below to set up your very own dYdX loan account.

  • Step 1- Set up your Ethereum wallets such as Metamask or Coinbase. If you have an existing wallet you can use it as well.
  • Step 2-Select the “Start Borrowing” option available on the DYdX website
  • Step 3- Link your Ethereum wallet to this
  • Step 4-Select “borrow” at the navigation bar on top and pick the relevant currency
  • Step 5-Select the relevant wallet and enter the amount
  • Step 6-Finally select the “borrow” option

dYdX as an exchange platform allows borrowers and lenders to connect on a global level and aids transactions that occur in real-time which can be executed simply without much paperwork or regulation. This becomes a unique selling point of dYdX because while all other companies rushed to develop cryptocurrencies, dYdX tried to decentralize the trade and perpetual markets in BTC and eth.

The dYdX platform also aids research and comparisons in rates and other aspects along with a detailed outline of its features and blog articles that will make you an expert in the market and trading platform for cryptocurrencies in no time.

3.1. Spot Trading on dYdX Exchange

Trading on the dYdX Exchange allows for greater avenues for managing your portfolio of funds. The dYdX Exchange offers spot, margin, and perpetual trading. dYdX offers a diverse range of three main spot markets consisting of the ETH-DAI, ETH-USDC, and DAI-USDC.

Once you are within the Spot section of the dYdX online trading platform, you can trade freely using the market, limit and stop orders as per your wishes and stand a chance to become a pro at this by boosting your earnings almost instantly.

3.1. Perpetual Trading on dYdX

A step-by-step guide to trading perpetual contracts on dYdX's Layer 2 platform.

Connect MetaMask Wallet and Generate Stark Key

Start by transferring funds from Ethereum mainnet to StarkWare.

Go to the official dYdX website and click on “Connect Wallet” on the top left-hand side of the page. A pop-up will then appear asking you to connect with an Ethereum wallet, such as MetaMask, Ledger, Wallet Connect, or imToken.

For this tutorial, Crypto Briefing used the most popular Ethereum wallet, MetaMask.

dYdX Trading

Generating the Stark Key (Source: dYdX)

After connecting your wallet, a pop-up will invite you to generate a Stark Key (see the screenshot above). The Stark Key helps identify a user’s account and creates a secure interaction between Layer 1 and Layer 2.

There is no backup of the Stark Key—it gets saved on the Web browser. Click on “Generate Stark Key” to generate a Signature Request. Sign the transaction—there is no gas fee to sign.

User Onboarding

After successfully creating a Stark Key, dYdX will ask you to acknowledge the legal terms. Click on “I agree” to proceed. Note that dYdX restricts access to U.S users.

dYdX Trading

Creating a dYdX account (Source: dYdX)

After agreeing to the terms, dYdX asks you to create an account with an optional username and email address. To sign up without adding a username or email address, skip and click on “Create account.” A popup will then appear in your wallet to request a wallet signature. Signing this request gives access to enter dYdX.

Deposit USDC

To begin trading on dYdX, you must deposit funds from Ethereum mainnet. Currently, the platform only accepts the stablecoin USD Coin (USDC) as trading collateral. Top up your wallet with USDC if you do not have any funds.

dydx trading

Enabling USDC (Source: dYdX)

When you add USDC to dYdX for the first time, you must enable spending through your wallet. This allows dYdX to spend USDC from the wallet with the project’s smart contract. Approving the transaction requires paying a gas fee in ETH.

After enabling USDC for spending, deposit the amount of USDC you would like to trade with. This transaction also requires paying a gas fee. USDC should then appear on your trading account. At that point, you can start trading.

Start Perpetual Trading

dydx trading

Selecting a market (Source: dYdX)

To start trading, head to the “Trade” tab and select a crypto asset that you want to trade. Besides Bitcoin and Ethereum, dYdX allows perpetual trading for several major crypto assets. In this guide, Crypto Briefing demonstrates how to take a long position on Polygon’s MATIC token. Click on the asset, in this case MATIC, to open the trading window.

dYdX trading

Making a trade (Source: dYdX)

The funds you deposited show up as “Equity” in the trading interface. In the screenshot above, the Equity deposited from Ethereum mainnet is $9.92.

Deciding how much leverage to use is one of the most important steps of perpetual trading. Leverage is the amount of funds you borrow from the platform to make a trade. It serves as a multiplier on gains or losses.

dYdX allows up to 10x leverage trading. With $9.92 as Equity, the platform gives a maximum Buying Power of $99.20. Note that using 10x leverage can result in liquidation if the asset makes a 10% move in the opposite direction of your trade.

To avoid considerable losses of borrowed capital, dYdX liquidates your position after a certain threshold. Before you enter the trade, the platform automatically calculates the liquidation price of a position.

Going Leveraged Long

dYdX trading

Placing a market order (Source: dYdX)

Scroll on the leverage slider according to your preferred risk level. Crypto Briefing picked just under 2.5x leverage to mitigate the risk of liquidation.

Select “Place market order.” In the example pictured, the amount of leverage and equity amounts to an allocation of $24.66 after accounting for a taker fee.

$24.66 buying power equates to a position size of 19 MATIC tokens at an index price of $1.30 per MATIC.

The Liquidation Price shows on the bottom right-hand side of the page. In this example, the price is $0.82 per MATIC.

Open Positions (Source: dYdX)

As the trade was a market order, it was immediately filled. The “Portfolio” tab shows all open positions, in this case long 19 MATIC with 2.49x leverage.

Note: You can also place a limit order to buy or sell a given asset at a specified price. 

Closing a Position With Limit Orders

Placing a limit sell order (Source: dYdX)

To close a position, you can create a limit order that sells the tokens at a specified limit price.

To do this, go to the “Trade” tab and place a limit order to sell the asset, in this case 19 MATIC. Select a Limit Price. In the example above, Crypto Briefing selects a price of $1.80 per MATIC.

The platform will automatically enter the same leverage used in the prior buy order.

In the example above, the trade will execute if the price reaches $1.80. This would mean the position is sold at $34.20, leaving a profit of $9.54.

As the trade is only executed if the price crosses the limit price of $1.80, the MATIC position will remain open. You can also exit an open position at any time by manually clicking on “Close Position” at the bottom of the Trade tab.

Placing a Stop Loss 

dYdX trading

Placing a stop order (Source: dYdX)

Risk management is crucial in crypto trading, especially when using leverage. If you are holding a long position, placing a stop loss order above the liquidation price is an effective way to manage risk.

dYdX also lets you create stop loss orders to minimize capital loss from market volatility. This means that if the price of the asset falls, the position will close before the platform can liquidate it.

You can place a short sell after selecting “Stop” under the Trade tab. In the example above, Crypto Briefing selects a stop price of $1.20, 7.6% below the original entry price.

Click on “Place stop order.” If the price drops to $1.20, the position will be sold and the trade will close.

Derivatives trading is considered very risky and is not recommended for beginners. However, for those looking to trade perpetuals on crypto assets in a trustless manner, dYdX’s Layer 2 exchange might be the best place to get started. With deep liquidity, a range of supported assets, and low gas fees thanks to StarkWare’s technology, dYdX has created a derivatives platform that rivals the most established centralized exchanges.

4. dYdX FAQs

What are the currencies that can be used on dYdX?

At the moment, dYdX allows for only trading in DAI, USDC, and Ethereum (ETH).

Is dYdX safe to use?

Yes, of course. Have the key to your digital wallet safe and you will be guaranteed safety and security always.

When was the dYdX launched?

It was launched in 2017.

What is dYdX Exchange in short?

It is a decentralized exchange, borrowing, and lending platform based on Ethereum.

Is dYdX scam or legit?

dYdX is not a scam! It is one of the internationally acclaimed companies with top-shot investors and an amazing profile and track record for being the best in the Industry. Client safety and confidentiality are also a key priority and no instances of any hacking or safety issues have been notified as of now.

Is dYdX better than Compound Finance?

Compound finance has been a traditionally well accepted and widely used means of trading in financial markets. Compound finance offers rates 1.6X times higher than the dYdX rates but in the future, dYdX rates look lucrative and have higher growth potential. Chances are high that if you invest now, you can reap great benefits in the future.

How to Earn Through Yield Farming on the dYdX Perpetuals?

Native tokens of Ethereum were used in the early period to hold and convert these tokens to liquid assets later on via trading on the dYdX platform. This allows the people to yield higher returns from reinvesting any income earned in new tokens.

This method of reinvesting has boosted the growth of the Ethereum token globally and it continues to be on the rise with more people opting in for this option every day.

Top exchanges for token-coin trading. Follow instructions and make unlimited money


I hope this post will help you. Don't forget to leave a like, comment and sharing it with others. Thank you!

#blockchain #cryptocurrency #exchanges #dex 

What is GEEK

Buddha Community

What is dYdX Exchange | How to Use dYdX Exchange for Crypto Trading
Chloe  Butler

Chloe Butler


Pdf2gerb: Perl Script Converts PDF Files to Gerber format


Perl script converts PDF files to Gerber format

Pdf2Gerb generates Gerber 274X photoplotting and Excellon drill files from PDFs of a PCB. Up to three PDFs are used: the top copper layer, the bottom copper layer (for 2-sided PCBs), and an optional silk screen layer. The PDFs can be created directly from any PDF drawing software, or a PDF print driver can be used to capture the Print output if the drawing software does not directly support output to PDF.

The general workflow is as follows:

  1. Design the PCB using your favorite CAD or drawing software.
  2. Print the top and bottom copper and top silk screen layers to a PDF file.
  3. Run Pdf2Gerb on the PDFs to create Gerber and Excellon files.
  4. Use a Gerber viewer to double-check the output against the original PCB design.
  5. Make adjustments as needed.
  6. Submit the files to a PCB manufacturer.

Please note that Pdf2Gerb does NOT perform DRC (Design Rule Checks), as these will vary according to individual PCB manufacturer conventions and capabilities. Also note that Pdf2Gerb is not perfect, so the output files must always be checked before submitting them. As of version 1.6, Pdf2Gerb supports most PCB elements, such as round and square pads, round holes, traces, SMD pads, ground planes, no-fill areas, and panelization. However, because it interprets the graphical output of a Print function, there are limitations in what it can recognize (or there may be bugs).

See docs/Pdf2Gerb.pdf for install/setup, config, usage, and other info.


#Pdf2Gerb config settings:
#Put this file in same folder/directory as pdf2gerb.pl itself (global settings),
#or copy to another folder/directory with PDFs if you want PCB-specific settings.
#There is only one user of this file, so we don't need a custom package or namespace.
#NOTE: all constants defined in here will be added to main namespace.
#package pdf2gerb_cfg;

use strict; #trap undef vars (easier debug)
use warnings; #other useful info (easier debug)

#configurable settings:
#change values here instead of in main pfg2gerb.pl file

use constant WANT_COLORS => ($^O !~ m/Win/); #ANSI colors no worky on Windows? this must be set < first DebugPrint() call

#just a little warning; set realistic expectations:
#DebugPrint("${\(CYAN)}Pdf2Gerb.pl ${\(VERSION)}, $^O O/S\n${\(YELLOW)}${\(BOLD)}${\(ITALIC)}This is EXPERIMENTAL software.  \nGerber files MAY CONTAIN ERRORS.  Please CHECK them before fabrication!${\(RESET)}", 0); #if WANT_DEBUG

use constant METRIC => FALSE; #set to TRUE for metric units (only affect final numbers in output files, not internal arithmetic)
use constant APERTURE_LIMIT => 0; #34; #max #apertures to use; generate warnings if too many apertures are used (0 to not check)
use constant DRILL_FMT => '2.4'; #'2.3'; #'2.4' is the default for PCB fab; change to '2.3' for CNC

use constant WANT_DEBUG => 0; #10; #level of debug wanted; higher == more, lower == less, 0 == none
use constant GERBER_DEBUG => 0; #level of debug to include in Gerber file; DON'T USE FOR FABRICATION
use constant WANT_STREAMS => FALSE; #TRUE; #save decompressed streams to files (for debug)
use constant WANT_ALLINPUT => FALSE; #TRUE; #save entire input stream (for debug ONLY)

#DebugPrint(sprintf("${\(CYAN)}DEBUG: stdout %d, gerber %d, want streams? %d, all input? %d, O/S: $^O, Perl: $]${\(RESET)}\n", WANT_DEBUG, GERBER_DEBUG, WANT_STREAMS, WANT_ALLINPUT), 1);
#DebugPrint(sprintf("max int = %d, min int = %d\n", MAXINT, MININT), 1); 

#define standard trace and pad sizes to reduce scaling or PDF rendering errors:
#This avoids weird aperture settings and replaces them with more standardized values.
#(I'm not sure how photoplotters handle strange sizes).
#Fewer choices here gives more accurate mapping in the final Gerber files.
#units are in inches
use constant TOOL_SIZES => #add more as desired
#round or square pads (> 0) and drills (< 0):
    .010, -.001,  #tiny pads for SMD; dummy drill size (too small for practical use, but needed so StandardTool will use this entry)
    .031, -.014,  #used for vias
    .041, -.020,  #smallest non-filled plated hole
    .051, -.025,
    .056, -.029,  #useful for IC pins
    .070, -.033,
    .075, -.040,  #heavier leads
#    .090, -.043,  #NOTE: 600 dpi is not high enough resolution to reliably distinguish between .043" and .046", so choose 1 of the 2 here
    .100, -.046,
    .115, -.052,
    .130, -.061,
    .140, -.067,
    .150, -.079,
    .175, -.088,
    .190, -.093,
    .200, -.100,
    .220, -.110,
    .160, -.125,  #useful for mounting holes
#some additional pad sizes without holes (repeat a previous hole size if you just want the pad size):
    .090, -.040,  #want a .090 pad option, but use dummy hole size
    .065, -.040, #.065 x .065 rect pad
    .035, -.040, #.035 x .065 rect pad
    .001,  #too thin for real traces; use only for board outlines
    .006,  #minimum real trace width; mainly used for text
    .008,  #mainly used for mid-sized text, not traces
    .010,  #minimum recommended trace width for low-current signals
    .015,  #moderate low-voltage current
    .020,  #heavier trace for power, ground (even if a lighter one is adequate)
    .030,  #heavy-current traces; be careful with these ones!
#Areas larger than the values below will be filled with parallel lines:
#This cuts down on the number of aperture sizes used.
#Set to 0 to always use an aperture or drill, regardless of size.
use constant { MAX_APERTURE => max((TOOL_SIZES)) + .004, MAX_DRILL => -min((TOOL_SIZES)) + .004 }; #max aperture and drill sizes (plus a little tolerance)
#DebugPrint(sprintf("using %d standard tool sizes: %s, max aper %.3f, max drill %.3f\n", scalar((TOOL_SIZES)), join(", ", (TOOL_SIZES)), MAX_APERTURE, MAX_DRILL), 1);

#NOTE: Compare the PDF to the original CAD file to check the accuracy of the PDF rendering and parsing!
#for example, the CAD software I used generated the following circles for holes:
#CAD hole size:   parsed PDF diameter:      error:
#  .014                .016                +.002
#  .020                .02267              +.00267
#  .025                .026                +.001
#  .029                .03167              +.00267
#  .033                .036                +.003
#  .040                .04267              +.00267
#This was usually ~ .002" - .003" too big compared to the hole as displayed in the CAD software.
#To compensate for PDF rendering errors (either during CAD Print function or PDF parsing logic), adjust the values below as needed.
#units are pixels; for example, a value of 2.4 at 600 dpi = .0004 inch, 2 at 600 dpi = .0033"
use constant
    HOLE_ADJUST => -0.004 * 600, #-2.6, #holes seemed to be slightly oversized (by .002" - .004"), so shrink them a little
    RNDPAD_ADJUST => -0.003 * 600, #-2, #-2.4, #round pads seemed to be slightly oversized, so shrink them a little
    SQRPAD_ADJUST => +0.001 * 600, #+.5, #square pads are sometimes too small by .00067, so bump them up a little
    RECTPAD_ADJUST => 0, #(pixels) rectangular pads seem to be okay? (not tested much)
    TRACE_ADJUST => 0, #(pixels) traces seemed to be okay?
    REDUCE_TOLERANCE => .001, #(inches) allow this much variation when reducing circles and rects

#Also, my CAD's Print function or the PDF print driver I used was a little off for circles, so define some additional adjustment values here:
#Values are added to X/Y coordinates; units are pixels; for example, a value of 1 at 600 dpi would be ~= .002 inch
use constant
    CIRCLE_ADJUST_MINY => -0.001 * 600, #-1, #circles were a little too high, so nudge them a little lower
    CIRCLE_ADJUST_MAXX => +0.001 * 600, #+1, #circles were a little too far to the left, so nudge them a little to the right
    SUBST_CIRCLE_CLIPRECT => FALSE, #generate circle and substitute for clip rects (to compensate for the way some CAD software draws circles)
    WANT_CLIPRECT => TRUE, #FALSE, #AI doesn't need clip rect at all? should be on normally?
    RECT_COMPLETION => FALSE, #TRUE, #fill in 4th side of rect when 3 sides found

#allow .012 clearance around pads for solder mask:
#This value effectively adjusts pad sizes in the TOOL_SIZES list above (only for solder mask layers).
use constant SOLDER_MARGIN => +.012; #units are inches

#line join/cap styles:
use constant
    CAP_NONE => 0, #butt (none); line is exact length
    CAP_ROUND => 1, #round cap/join; line overhangs by a semi-circle at either end
    CAP_SQUARE => 2, #square cap/join; line overhangs by a half square on either end
    CAP_OVERRIDE => FALSE, #cap style overrides drawing logic
#number of elements in each shape type:
use constant
    RECT_SHAPELEN => 6, #x0, y0, x1, y1, count, "rect" (start, end corners)
    LINE_SHAPELEN => 6, #x0, y0, x1, y1, count, "line" (line seg)
    CURVE_SHAPELEN => 10, #xstart, ystart, x0, y0, x1, y1, xend, yend, count, "curve" (bezier 2 points)
    CIRCLE_SHAPELEN => 5, #x, y, 5, count, "circle" (center + radius)
#const my %SHAPELEN =
#Readonly my %SHAPELEN =>
    rect => RECT_SHAPELEN,
    line => LINE_SHAPELEN,
    curve => CURVE_SHAPELEN,
    circle => CIRCLE_SHAPELEN,

#This will repeat the entire body the number of times indicated along the X or Y axes (files grow accordingly).
#Display elements that overhang PCB boundary can be squashed or left as-is (typically text or other silk screen markings).
#Set "overhangs" TRUE to allow overhangs, FALSE to truncate them.
#xpad and ypad allow margins to be added around outer edge of panelized PCB.
use constant PANELIZE => {'x' => 1, 'y' => 1, 'xpad' => 0, 'ypad' => 0, 'overhangs' => TRUE}; #number of times to repeat in X and Y directions

# Set this to 1 if you need TurboCAD support.
#$turboCAD = FALSE; #is this still needed as an option?

#CIRCAD pad generation uses an appropriate aperture, then moves it (stroke) "a little" - we use this to find pads and distinguish them from PCB holes. 
use constant PAD_STROKE => 0.3; #0.0005 * 600; #units are pixels
#convert very short traces to pads or holes:
use constant TRACE_MINLEN => .001; #units are inches
#use constant ALWAYS_XY => TRUE; #FALSE; #force XY even if X or Y doesn't change; NOTE: needs to be TRUE for all pads to show in FlatCAM and ViewPlot
use constant REMOVE_POLARITY => FALSE; #TRUE; #set to remove subtractive (negative) polarity; NOTE: must be FALSE for ground planes

#PDF uses "points", each point = 1/72 inch
#combined with a PDF scale factor of .12, this gives 600 dpi resolution (1/72 * .12 = 600 dpi)
use constant INCHES_PER_POINT => 1/72; #0.0138888889; #multiply point-size by this to get inches

# The precision used when computing a bezier curve. Higher numbers are more precise but slower (and generate larger files).
#$bezierPrecision = 100;
use constant BEZIER_PRECISION => 36; #100; #use const; reduced for faster rendering (mainly used for silk screen and thermal pads)

# Ground planes and silk screen or larger copper rectangles or circles are filled line-by-line using this resolution.
use constant FILL_WIDTH => .01; #fill at most 0.01 inch at a time

# The max number of characters to read into memory
use constant MAX_BYTES => 10 * M; #bumped up to 10 MB, use const

use constant DUP_DRILL1 => TRUE; #FALSE; #kludge: ViewPlot doesn't load drill files that are too small so duplicate first tool

my $runtime = time(); #Time::HiRes::gettimeofday(); #measure my execution time

print STDERR "Loaded config settings from '${\(__FILE__)}'.\n";
1; #last value must be truthful to indicate successful load


#use Package::Constants;
#use Exporter qw(import); #https://perldoc.perl.org/Exporter.html

#my $caller = "pdf2gerb::";

#sub cfg
#    my $proto = shift;
#    my $class = ref($proto) || $proto;
#    my $settings =
#    {
#        $WANT_DEBUG => 990, #10; #level of debug wanted; higher == more, lower == less, 0 == none
#    };
#    bless($settings, $class);
#    return $settings;

#use constant HELLO => "hi there2"; #"main::HELLO" => "hi there";
#use constant GOODBYE => 14; #"main::GOODBYE" => 12;

#print STDERR "read cfg file\n";

#our @EXPORT_OK = Package::Constants->list(__PACKAGE__); #https://www.perlmonks.org/?node_id=1072691; NOTE: "_OK" skips short/common names

#print STDERR scalar(@EXPORT_OK) . " consts exported:\n";
#foreach(@EXPORT_OK) { print STDERR "$_\n"; }
#my $val = main::thing("xyz");
#print STDERR "caller gave me $val\n";
#foreach my $arg (@ARGV) { print STDERR "arg $arg\n"; }

Download Details:

Author: swannman
Source Code: https://github.com/swannman/pdf2gerb

License: GPL-3.0 license


Eva Watson

Eva Watson


Antier Solutions | The best crypto exchange software development company in the world

Antier Solutions is a leading crypto exchange software development company in the USA offering a comprehensive range of services to deliver the world’s best crypto exchange platform. Antier Solutions has a team of skilled blockchain developers who couple their expertise and knowledge to develop top-notch exchanges fortified with best-in-class features. At Antier Solutions, they deliver result-oriented services to deliver meaningful outcomes that help to increase investors’ interest and accomplish your business goals. For details, visit Antier Solutions.
Email: info@antiersolutions.com
For more information, call us: +91 98550 78699 (India), +1 (315) 825 4466 (US)

#crypto exchange software #crypto exchange development company #cryptocurrency exchange software #crypto exchange platform software #crypto exchange development #crypto exchange development company

Terry  Tremblay

Terry Tremblay


The Ultimate Guide to Listing at Crypto Exchanges | Hacker Noon


According to CoinMarketCap, there are currently more than 2500 cryptocurrencies and more than 300 exchanges (not counting countless small exchanges) where they are traded. However, new projects continue to emerge every month, presenting their tokenized solutions for various different industries. In the past, projects often finished their public fundraising stage before going to exchanges to get listed. Nowadays, many new projects want to go to an exchange without holding a token sale.

So, how should crypto projects go about getting listed on exchanges? How can you choose the first exchange for listing and avoid scams and frauds? How can you capture the most possible attention of the community for your token, and why is it important to keep expanding the list of exchanges on which it trades in the future? We will provide answers to all of these questions in our ultimate guide about how to get listed at the crypto exchange, so keep reading!

Why do projects need listing?

First, let’s go through the main reasons why projects need to get listed on exchanges. Many projects do not fully understand what the listing should give, naming the main goal for themselves - just to have the token traded somewhere. Well, this is understandable, but a good quality listing includes several components:

Ability to trade, buy and sell a token

Yes, listing makes your token available for sale. People from the project community will be able to freely buy and sell the token, thereby giving the project and the token a chance to succeed.

Expansion into new markets and community growth

Each exchange is its own community, which is formed according to various principles, including geographical ones. Getting listed on a new exchange means, among other things, entering new markets. Some exchanges operate worldwide and have traders from around the world, but there are also exchanges that are more focused on local markets (e.g. Korea, Latin America, Eastern Europe). Listing on a new exchange is not only an opportunity to boost trade volume and liquidity, but also for the project to attract the attention of other exchange users and turn them into community members, establishing its presence in a particular region.

Token sales

Let’s be honest, project founders are most commonly the largest holders of the project’s native token at launch. Tokens often lack the liquidity necessary to expand and develop, but organizing an ICO/IEO round is not always necessary or even possible. In some cases, with a successful listing and sufficient liquidity of the token, the project’s founders can act as traders who sell and buy the token as needed for project development, so long as it doesn’t contradict the financial model of the project, its WP, and obligations to the holders.

Partnerships in new markets

As we already mentioned, a new listing is often an entry into a new market. Along with the listing, other integrations into these markets are also possible. For example, you can look to establish partnerships with other players in your industry from these regions that will only enhance the effect of your listing. This also works in the opposite direction - getting listed makes it easier to find and negotiate partnerships.

Social proof

This is an indirect factor, but I think it is clear to everyone that the community is more interested in projects that are listed on good, solid exchanges than projects that are not represented anywhere.

#cryptocurrency #exchange #crypto-exchange #blockchain #ethereum #how-to-list-on-crypto-exchange #list-on-crypto-exchange #get-listed-on-crypto-exchange

Eva Watson

Eva Watson


How to get the best crypto Exchange Development Services?

Antier Solutions is a globalized dynamic blockchain development company, assisting the clients with the finest Crypto Exchange Development Services in the market. Being one of the pioneers in the cryptocurrency exchange software development, we also offer instant White label cryptocurrency exchange platform, scalable according to the customer’s requirements, and simultaneously ensuring that the vital factors such as flexibility, transparency, security, controllability, and accuracy are met. We also have cybersecurity experts to protect your assets in the most efficient way possible.

For more information, call us: +91 98550 78699 (India), +1 (315) 825 4466 (US)
Email: info@antiersolutions.com

#crypto exchange development services #crypto exchange development #best crypto exchange development services #crypto exchange development company #antier solutions #crypto exchange development software

Eva Watson

Eva Watson


Cryptocurrency Exchange Development Company | Create Crypto Exchange | Antier Solutions

The cross-functional and cohesive team of Antier Solutions incorporates a technology-agnostic approach and modern agile methodology to deliver cryptocurrency exchange platform development services. The company emphasizes on diligent integration of world-class features in terms of security, UI/UX, functionality, and scalability on a single platform to deliver meaningful outcomes that provide an essential competitive edge. Our profound team of blockchain experts aligns forward-thinking solutions with a coherent roadmap to accelerate deployment. Antier fortifies crypto exchange development with its top-notch marketing techniques to nurture your venture and prepare it for long-term success.

For more information, call us: +91 98550 78699 (India), +1 (315) 825 4466 (US)

#cryptocurrency exchange development company #white label crypto exchange software #buy crypto exchange software #cryptocurrency exchange platform #cryptocurrency exchange software #starting a crypto exchange